Class: CarrierWave::Storage::AzureRM

Inherits:
Abstract
  • Object
show all
Defined in:
lib/carrierwave/storage/azure_rm.rb

Defined Under Namespace

Classes: File

Instance Method Summary collapse

Instance Method Details

#connectionObject



16
17
18
19
20
21
22
23
# File 'lib/carrierwave/storage/azure_rm.rb', line 16

def connection
  @connection ||= begin
    %i(storage_account_name storage_access_key storage_blob_host).each do |key|
      ::Azure::Storage.send("#{key}=", uploader.send("azure_#{key}"))
    end
    Azure::Storage::Blob::BlobService.new
  end
end

#retrieve!(identifer) ⇒ Object



12
13
14
# File 'lib/carrierwave/storage/azure_rm.rb', line 12

def retrieve!(identifer)
  CarrierWave::Storage::AzureRM::File.new(uploader, connection, uploader.store_path(identifer), signer)
end

#signerObject



25
26
27
28
29
# File 'lib/carrierwave/storage/azure_rm.rb', line 25

def signer
  @signer ||= begin
    ::Azure::Storage::Core::Auth::SharedAccessSignature.new
  end
end

#store!(file) ⇒ Object



6
7
8
9
10
# File 'lib/carrierwave/storage/azure_rm.rb', line 6

def store!(file)
  azure_file = CarrierWave::Storage::AzureRM::File.new(uploader, connection, uploader.store_path, signer)
  azure_file.store!(file)
  azure_file
end