Class: Breadbox::ClientBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/breadbox/client_builder.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(configuration = nil) ⇒ ClientBuilder

Returns a new instance of ClientBuilder.



9
10
11
# File 'lib/breadbox/client_builder.rb', line 9

def initialize(configuration = nil)
  @configuration = configuration || null_configuration
end

Instance Attribute Details

#configurationObject (readonly)

Returns the value of attribute configuration.



7
8
9
# File 'lib/breadbox/client_builder.rb', line 7

def configuration
  @configuration
end

Class Method Details

.build(configuration) ⇒ Object



24
25
26
# File 'lib/breadbox/client_builder.rb', line 24

def self.build(configuration)
  new(configuration).build
end

Instance Method Details

#buildObject



13
14
15
16
17
18
19
20
21
22
# File 'lib/breadbox/client_builder.rb', line 13

def build
  case configuration.provider
  when :dropbox
    DropboxClient.new(configuration)
  when :s3
    S3Client.new(configuration)
  else
    null_configuration.provider
  end
end