refile-fog 0.1.1 → 0.2.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
  SHA1:
3
- metadata.gz: 96ea1684df8190c68323d4a9a5a17b9d218d8b87
4
- data.tar.gz: dcc7695e3f2f3ccb216ab951dbefc686ab1a056f
3
+ metadata.gz: 7d7e47dc9b33995b814dce970e2a57ac2a053153
4
+ data.tar.gz: 415af08edcfd7c8f54ab0e7f75af7886235a5dab
5
5
  SHA512:
6
- metadata.gz: 405ac8dfdb0c6ad35d7d37dc020dbf27782085ab2af58d3d4828f0dba086828d0be7b4ee184f8c38d1d107621415611990d0e6331cc0ccb0edd1d69d12fb8805
7
- data.tar.gz: e7c64569160b5b3af43d0ff666e208469424ae3f4aa7166006a236af65f180021541dacbf7de4e571c30a771cac9fa8eae97619ed7368d00d74caddf5e66dc8c
6
+ metadata.gz: dfdf60d83cbb8a3022e0ca333742b6d3bccccedf635c44dada7589986578afd6b077373d7f1861ebc3b81843a1e3b392b4ed705103ad35fe9acf7513d25d47eb
7
+ data.tar.gz: bf8db1a9c7b8c04a53e28293d03546496a170ff493d8926b87874c21288cf2e8dee2cca44483c88cdbdaeccbb11d3003094b11e805e80ff370056ebd6eb17735
@@ -0,0 +1,3 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.1.5
data/Gemfile CHANGED
@@ -2,4 +2,8 @@ source 'https://rubygems.org'
2
2
 
3
3
  gemspec
4
4
 
5
- gem "refile", github: "elabs/refile"
5
+ gem "refile", github: "refile/refile"
6
+ gem "rake"
7
+ gem "rspec", "~> 3.0"
8
+ gem "pry"
9
+ gem "webmock"
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Refile::Fog
2
2
 
3
- [![Build Status](https://travis-ci.org/elabs/refile-fog.svg)](https://travis-ci.org/elabs/refile-fog)
3
+ [![Build Status](https://travis-ci.org/refile/refile-fog.svg)](https://travis-ci.org/refile/refile-fog)
4
4
 
5
5
  A backend for [Refile](https://github.com/elabs/refile) which provides storage
6
6
  in multiple cloud storage services via the [Fog](https://github.com/fog/fog)
data/Rakefile CHANGED
@@ -1,2 +1,5 @@
1
1
  require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
2
3
 
4
+ RSpec::Core::RakeTask.new(:spec)
5
+ task default: :spec
@@ -5,7 +5,9 @@ require "refile/fog/version"
5
5
  module Refile
6
6
  module Fog
7
7
  class Backend
8
- attr_reader :directory
8
+ extend Refile::BackendMacros
9
+
10
+ attr_reader :directory, :max_size
9
11
 
10
12
  def initialize(directory:, max_size: nil, prefix: nil, hasher: Refile::RandomHasher.new, connection: nil, **options)
11
13
  @connection = connection || ::Fog::Storage.new(options)
@@ -16,9 +18,7 @@ module Refile
16
18
  @directory = @connection.directories.new(key: directory)
17
19
  end
18
20
 
19
- def upload(uploadable)
20
- Refile.verify_uploadable(uploadable, @max_size)
21
-
21
+ verify_uploadable def upload(uploadable)
22
22
  id = @hasher.hash(uploadable)
23
23
 
24
24
  @directory.files.create(key: path(id), body: uploadable.read)
@@ -26,45 +26,45 @@ module Refile
26
26
  Refile::File.new(self, id)
27
27
  end
28
28
 
29
- def get(id)
29
+ verify_id def get(id)
30
30
  Refile::File.new(self, id)
31
31
  end
32
32
 
33
- def delete(id)
33
+ verify_id def delete(id)
34
34
  file = head(id)
35
35
  file.destroy if file
36
36
  end
37
37
 
38
- def open(id)
38
+ verify_id def open(id)
39
39
  StringIO.new(read(id))
40
40
  end
41
41
 
42
- def read(id)
42
+ verify_id def read(id)
43
43
  file = @directory.files.get(path(id))
44
44
  file.body if file
45
45
  end
46
46
 
47
- def size(id)
47
+ verify_id def size(id)
48
48
  file = head(id)
49
49
  file.content_length if file
50
50
  end
51
51
 
52
- def exists?(id)
52
+ verify_id def exists?(id)
53
53
  !!head(id)
54
54
  end
55
55
 
56
- def head(id)
56
+ verify_id def head(id)
57
57
  @directory.files.head(path(id))
58
58
  end
59
59
 
60
60
  def clear!(confirm = nil)
61
- raise ArgumentError, "are you sure? this will remove all files in the backend, call as `clear!(:confirm)` if you're sure you want to do this" unless confirm == :confirm
61
+ raise Refile::Confirm unless confirm == :confirm
62
62
  @directory.files.select { |f| f.key.start_with?(@prefix.to_s) }.each(&:destroy)
63
63
  end
64
64
 
65
65
  private
66
66
 
67
- def path(id)
67
+ verify_id def path(id)
68
68
  ::File.join(*@prefix, id)
69
69
  end
70
70
  end
@@ -1,5 +1,5 @@
1
1
  module Refile
2
2
  module Fog
3
- VERSION = "0.1.1"
3
+ VERSION = "0.2.0"
4
4
  end
5
5
  end
@@ -17,12 +17,6 @@ Gem::Specification.new do |spec|
17
17
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
18
18
  spec.require_paths = ["lib"]
19
19
 
20
-
21
20
  spec.add_dependency "refile"
22
21
  spec.add_dependency "fog"
23
-
24
- spec.add_development_dependency "bundler", "~> 1.7"
25
- spec.add_development_dependency "rake", "~> 10.0"
26
- spec.add_development_dependency "rspec", "~> 3.0"
27
- spec.add_development_dependency "pry"
28
22
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: refile-fog
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonas Nicklas
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-12 00:00:00.000000000 Z
11
+ date: 2015-09-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: refile
@@ -38,62 +38,6 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: bundler
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '1.7'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '1.7'
55
- - !ruby/object:Gem::Dependency
56
- name: rake
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: '10.0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: '10.0'
69
- - !ruby/object:Gem::Dependency
70
- name: rspec
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - "~>"
74
- - !ruby/object:Gem::Version
75
- version: '3.0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '3.0'
83
- - !ruby/object:Gem::Dependency
84
- name: pry
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
41
  description:
98
42
  email:
99
43
  - jonas.nicklas@gmail.com
@@ -102,6 +46,7 @@ extensions: []
102
46
  extra_rdoc_files: []
103
47
  files:
104
48
  - ".gitignore"
49
+ - ".travis.yml"
105
50
  - Gemfile
106
51
  - LICENSE.txt
107
52
  - README.md
@@ -130,9 +75,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
130
75
  version: '0'
131
76
  requirements: []
132
77
  rubyforge_project:
133
- rubygems_version: 2.4.3
78
+ rubygems_version: 2.4.5.1
134
79
  signing_key:
135
80
  specification_version: 4
136
81
  summary: Fog backend for Refile
137
82
  test_files:
138
83
  - spec/refile/fog_spec.rb
84
+ has_rdoc: