data_collector 0.65.0 → 0.67.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6bd31c29be4fc198e2361e4ecb9a756d28ab38500008e667405d8872666e4180
4
- data.tar.gz: 610ff475aee7f65b853efbc9acb8e36d79455a7a82826663864dbfe1caaba1a5
3
+ metadata.gz: a718ce81043519b3b2e9a10c06d6169125f0a646b6ce5d6c439a401d68ffb3f9
4
+ data.tar.gz: 266ca12501ac2aa1fc902de6ec0c446d37251189a7be93ce445ccff2162d0586
5
5
  SHA512:
6
- metadata.gz: 50f85f9b0a518698a4aade6604d723162239b7fa4c984f8003c7fd4c76cfd4ff61590299640467da9ebd3df9660a2ab06f20a4c9dd9b665f35cf1a36880aa0c6
7
- data.tar.gz: d3d0a1684bafa65aff420932270d14688fa9dde69ed1954757ed3e4da382036eb89134e984a55bc7d2a4ee1aad49a652c001fe3932a60c5a86003260cfff7c07
6
+ metadata.gz: 721fff20dca6d798592c0cb703cef34907ed2dd88a5eb5b9cb83f341073f9bdb1d21cec95e99df7a4b55145fc7df59f20b5634a3dda18622d5b09c7bed3fc1ea
7
+ data.tar.gz: d7af4d176445123279d12a90e7d273da0141862f70f76552a2f275c3f0a0f29503497226448ce6d8fe4e89b20b335e274a624cfc58ed42dc2f7015321e1f5177
@@ -0,0 +1,46 @@
1
+ # Extensions and modifications (monkeypatching) to the Dir class:
2
+
3
+ class Dir
4
+
5
+ class << self
6
+ alias original_mkdir mkdir
7
+ alias original_rmdir rmdir
8
+ end
9
+
10
+ def self.mkdir(name, *args)
11
+ if name.respond_to?(:to_s) and name[/^(https?):\/\//]
12
+ dav = OpenUriAndWrite::CredentialsStore.get_connection_for_url(name)
13
+ dav.mkdir(name)
14
+ else
15
+ self.original_mkdir(name, *args)
16
+ end
17
+ end
18
+
19
+ def self.rmdir(name)
20
+ if name.respond_to?(:to_s) and name[/^(https?):\/\//]
21
+ dav = OpenUriAndWrite::CredentialsStore.get_connection_for_url(name)
22
+ dav.delete(name)
23
+ else
24
+ self.original_rmdir(name)
25
+ end
26
+ end
27
+
28
+ def self.propfind(name)
29
+ if name.respond_to?(:to_s) and name[/^(https?):\/\//]
30
+ dav = OpenUriAndWrite::CredentialsStore.get_connection_for_url(name)
31
+ dav.propfind(name)
32
+ else
33
+ raise IOError.new(true), "Illegal action: Can't do propfind #{name}"
34
+ end
35
+ end
36
+
37
+ def self.proppatch(name,xml_snippet)
38
+ if name.respond_to?(:to_s) and name[/^(https?):\/\//]
39
+ dav = OpenUriAndWrite::CredentialsStore.get_connection_for_url(name)
40
+ dav.propfind(name, xml_snippet)
41
+ else
42
+ raise IOError.new(true), "Illegal action: Can't do proppatch on #{name}"
43
+ end
44
+ end
45
+
46
+ end
@@ -9,7 +9,7 @@ class File
9
9
  end
10
10
 
11
11
  def self.exist?(name)
12
- if(name[/https?:\/\//])
12
+ if(name.respond_to?(:to_s) && name.to_s[/https?:\/\//])
13
13
  dav = OpenUriAndWrite::CredentialsStore.get_connection_for_url(name)
14
14
  dav.exist?(name)
15
15
  else
@@ -25,19 +25,19 @@ class File
25
25
  filenames = names
26
26
  end
27
27
  filenames.each do |filename|
28
- if(filename[/^(https?):\/\//])
28
+ if(filename.respond_to?(:to_s) && filename.to_s[/^(https?):\/\//])
29
29
  dav = OpenUriAndWrite::CredentialsStore.get_connection_for_url(filename)
30
30
  dav.delete(filename)
31
31
  else
32
32
  self.original_delete(filename)
33
33
  end
34
- end
34
+ end.size
35
35
  end
36
36
 
37
37
  def self.open(name, *rest, &block)
38
38
  if name.respond_to?(:open)
39
39
  name.open(*rest, &block)
40
- elsif name.respond_to?(:to_s) and name[/^(https?):\/\//] and rest.size > 0 and rest.first.to_s[/^w/]
40
+ elsif name.respond_to?(:to_s) and name.to_s[/^(https?):\/\//] and rest.size > 0 and rest.first.to_s[/^w/]
41
41
  webdav_agent = OpenUriAndWrite::Handle.new(name, rest)
42
42
  if(block)
43
43
  yield webdav_agent
@@ -8,7 +8,7 @@ require 'open-uri-and-write/handle'
8
8
  require 'open-uri-and-write/usernames'
9
9
  require 'open-uri-and-write/credentials_store'
10
10
  require_relative 'file'
11
- require 'open-uri-and-write/dir_extensions'
11
+ require_relative 'dir'
12
12
  #require 'open-uri-and-write/kernel_extensions'
13
13
 
14
14
  # Kernel extensions
@@ -1,4 +1,4 @@
1
1
  # encoding: utf-8
2
2
  module DataCollector
3
- VERSION = "0.65.0"
3
+ VERSION = "0.67.0"
4
4
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: data_collector
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.65.0
4
+ version: 0.67.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mehmet Celik
@@ -366,6 +366,7 @@ files:
366
366
  - lib/data_collector/config_file.rb
367
367
  - lib/data_collector/core.rb
368
368
  - lib/data_collector/ext/base.rb
369
+ - lib/data_collector/ext/dir.rb
369
370
  - lib/data_collector/ext/file.rb
370
371
  - lib/data_collector/ext/nokogiri.rb
371
372
  - lib/data_collector/ext/x-open-uri-and-write.rb