vos 0.3.11 → 0.3.12

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.
Files changed (2) hide show
  1. data/lib/vos/drivers/ssh_vfs_storage.rb +19 -10
  2. metadata +7 -7
@@ -1,6 +1,16 @@
1
1
  module Vos
2
2
  module Drivers
3
- module SshVfsStorage
3
+ module SshVfsStorage
4
+ class Writer
5
+ def initialize out
6
+ @out = out
7
+ end
8
+
9
+ def write data
10
+ @out.write data
11
+ end
12
+ end
13
+
4
14
  #
5
15
  # Attributes
6
16
  #
@@ -11,10 +21,10 @@ module Vos
11
21
  attrs[:file] = stat.file?
12
22
  attrs[:dir] = stat.directory?
13
23
  # stat.symlink?
14
-
24
+
15
25
  # attributes special for file system
16
26
  attrs[:updated_at] = stat.mtime
17
-
27
+
18
28
  attrs
19
29
  rescue Net::SFTP::StatusException
20
30
  {}
@@ -52,13 +62,12 @@ module Vos
52
62
  ''
53
63
  end
54
64
  write_file path, false do |writer|
55
- writer.call data
65
+ writer.write data
56
66
  block.call writer
57
67
  end
58
68
  else
59
- sftp.file.open fix_path(path), 'w' do |os|
60
- writer = -> buff {os.write buff}
61
- block.call writer
69
+ sftp.file.open fix_path(path), 'w' do |out|
70
+ block.call Writer.new(out)
62
71
  end
63
72
  end
64
73
  end
@@ -85,7 +94,7 @@ module Vos
85
94
 
86
95
  def each_entry path, query, &block
87
96
  raise "SshVfsStorage not support :each_entry with query!" if query
88
-
97
+
89
98
  sftp.dir.foreach path do |stat|
90
99
  next if stat.name == '.' or stat.name == '..'
91
100
  if stat.directory?
@@ -95,7 +104,7 @@ module Vos
95
104
  end
96
105
  end
97
106
  end
98
-
107
+
99
108
  # def efficient_dir_copy from, to, override
100
109
  # return false if override # sftp doesn't support this behaviour
101
110
  #
@@ -131,7 +140,7 @@ module Vos
131
140
  tmp_dir
132
141
  end
133
142
  end
134
-
143
+
135
144
  def local?; false end
136
145
  end
137
146
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vos
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.11
4
+ version: 0.3.12
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2011-08-10 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: net-ssh
16
- requirement: &673270 !ruby/object:Gem::Requirement
16
+ requirement: &376740 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *673270
24
+ version_requirements: *376740
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: net-sftp
27
- requirement: &750800 !ruby/object:Gem::Requirement
27
+ requirement: &667020 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *750800
35
+ version_requirements: *667020
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: vfs
38
- requirement: &987290 !ruby/object:Gem::Requirement
38
+ requirement: &747540 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,7 +43,7 @@ dependencies:
43
43
  version: '0'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *987290
46
+ version_requirements: *747540
47
47
  description:
48
48
  email:
49
49
  executables: []