rxfreader 0.2.1 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 88c5cd88a74400b7e567f87155effc79c2765c6c93edf8430cc770aab6658f9d
4
- data.tar.gz: 9f82b705e8154d26d89277fdf7cc6a2a37bf7abcec73631a3c8e661d79e1084a
3
+ metadata.gz: 439ac6839199c6d53cb40bbf2a56a73666ecd8c3119a141249284c6dd3c4d2d3
4
+ data.tar.gz: b67ef02d5fe587838eb6b9647e422b57e4c4528ced5d44b9238a110a26803d7b
5
5
  SHA512:
6
- metadata.gz: 64c81ead21828a0c2401c940736872cb788058bb2884a2a7f133d8ebc767e0020cc46994f1a02a267cf2aa24e752fcb3c9b9511d727a7997a991c49573a2210a
7
- data.tar.gz: 95025bc99aafe7053c545f90a932e57efc2330e5f5b5bafa512bf63e3fcf942b563084f14e618495d3959774d59030827f5e4cbe28695b58ddbca7c2ec28e9a5
6
+ metadata.gz: 0e5498c3ad23d1afd698c6d72800b505c28ec78ab5643d99b8f0b7d45cd1845289adabe01941c4f5b0cc2c304de51144975f0730e92cedb56593f6feb6776296
7
+ data.tar.gz: b087e28234b235fb6110a328a0ed3a752ff4482c58974c8922fa560acd851d98c4426806d5265b10548b26761d85dbfeb889254026a9cf63ec5136a30d1497e8
checksums.yaml.gz.sig CHANGED
Binary file
data/lib/rxfreader.rb CHANGED
@@ -2,7 +2,8 @@
2
2
 
3
3
  # file: rxfreader.rb
4
4
 
5
-
5
+ require 'net/http'
6
+ require 'uri'
6
7
  require 'gpd-request'
7
8
  require 'rest-client'
8
9
  require 'drb_fileclient-reader'
@@ -15,61 +16,61 @@ module RXFRead
15
16
 
16
17
  class FileX
17
18
 
18
- def self.exists?(filename)
19
+ def self.exists?(s) RXFReader.exists?(s) end
20
+ def self.filetype(s) RXFReader.filetype(s) end
21
+ def self.read(s) RXFReader.read(s).first end
19
22
 
20
- type = FileX.filetype(filename)
23
+ end
21
24
 
22
- filex = case type
23
- when :file
24
- File
25
- when :dfs
26
- DfsFile
27
- else
28
- nil
29
- end
25
+ end
30
26
 
31
- return nil unless filex
32
27
 
33
- filex.exists? filename
28
+ class RXFReaderException < Exception
29
+ end
34
30
 
35
- end
31
+ class RXFReader
32
+ using ColouredText
36
33
 
34
+ def self.exists?(filename)
37
35
 
38
- def self.filetype(x)
36
+ type = self.filetype(filename)
39
37
 
40
- return :string if x.lines.length > 1
38
+ filex = case type
39
+ when :file
40
+ File
41
+ when :dfs
42
+ DfsFile
43
+ else
44
+ nil
45
+ end
41
46
 
42
- case x
43
- when /^https?:\/\//
44
- :http
45
- when /^dfs:\/\//
46
- :dfs
47
- when /^file:\/\//
48
- :file
49
- else
47
+ return nil unless filex
50
48
 
51
- if File.exists?(x) then
52
- :file
53
- else
54
- :text
55
- end
49
+ filex.exists? filename
56
50
 
57
- end
58
- end
51
+ end
59
52
 
60
- def self.read(x)
61
- RXFReader.read(x).first
62
- end
53
+ def self.filetype(x)
63
54
 
64
- end
65
- end
55
+ return :string if x.lines.length > 1
66
56
 
57
+ case x
58
+ when /^https?:\/\//
59
+ :http
60
+ when /^dfs:\/\//
61
+ :dfs
62
+ when /^file:\/\//
63
+ :file
64
+ else
67
65
 
68
- class RXFReaderException < Exception
69
- end
66
+ if File.exists?(x) then
67
+ :file
68
+ else
69
+ :text
70
+ end
70
71
 
71
- class RXFReader
72
- using ColouredText
72
+ end
73
+ end
73
74
 
74
75
  def self.read(x, h={})
75
76
 
@@ -79,7 +80,11 @@ class RXFReader
79
80
 
80
81
  raise RXFReaderException, 'nil found, expected a string' if x.nil?
81
82
 
82
- if x.strip[/^<(\?xml|[^\?])/] then
83
+ if x.class.to_s =~ /Rexle$/ then
84
+
85
+ [x.xml, :rexle]
86
+
87
+ elsif x.strip[/^<(\?xml|[^\?])/] then
83
88
 
84
89
  [x, :xml]
85
90
 
@@ -131,4 +136,19 @@ class RXFReader
131
136
  end
132
137
  end
133
138
 
139
+ def reveal(uri_str, a=[])
140
+
141
+ response = Net::HTTP.get_response(URI.parse(uri_str))
142
+ url = case response
143
+ when Net::HTTPRedirection then response['location']
144
+ end
145
+
146
+ return a << uri_str if url.nil?
147
+
148
+ reveal(url, a << uri_str)
149
+ end
150
+
151
+ end
152
+
153
+
134
154
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rxfreader
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -35,7 +35,7 @@ cert_chain:
35
35
  ZhYGFOGLCyFBzNWg6gwMKjzpzDZB/H0+GTRB2c3+7DVuJWqyC5SbGnVLkT4Q8+B6
36
36
  Ws39Z48SRONdDWtHwAiUtnU+
37
37
  -----END CERTIFICATE-----
38
- date: 2022-02-22 00:00:00.000000000 Z
38
+ date: 2022-03-31 00:00:00.000000000 Z
39
39
  dependencies:
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: gpd-request
@@ -86,7 +86,7 @@ dependencies:
86
86
  version: '0.1'
87
87
  - - ">="
88
88
  - !ruby/object:Gem::Version
89
- version: 0.1.0
89
+ version: 0.1.3
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
@@ -96,7 +96,7 @@ dependencies:
96
96
  version: '0.1'
97
97
  - - ">="
98
98
  - !ruby/object:Gem::Version
99
- version: 0.1.0
99
+ version: 0.1.3
100
100
  description:
101
101
  email: digital.robertson@gmail.com
102
102
  executables: []
metadata.gz.sig CHANGED
Binary file