Module: ArchiveStorage::Model

Defined in:
lib/archive_storage/model.rb

Instance Method Summary collapse

Instance Method Details

#archive_storage_for(mounted_as, &block) ⇒ Object

Raises:

  • (ArgumentError)


5
6
7
8
9
10
11
12
13
14
15
# File 'lib/archive_storage/model.rb', line 5

def archive_storage_for(mounted_as, &block)
  raise ArgumentError, "archive_storage_for requires a block" unless block

  policy = PolicyBuilder.build(&block)
  uploader_class = archive_storage_uploader_for(mounted_as)

  ArchiveStorage.wire_carrierwave_uploader!(uploader_class)
  ArchiveStorage.register_mount(self, mounted_as, uploader: uploader_class, policy: policy)

  archive_storage_policies[mounted_as.to_sym] = policy
end

#archive_storage_policiesObject



21
22
23
# File 'lib/archive_storage/model.rb', line 21

def archive_storage_policies
  @archive_storage_policies ||= {}
end

#archive_storage_policy_for(mounted_as) ⇒ Object



17
18
19
# File 'lib/archive_storage/model.rb', line 17

def archive_storage_policy_for(mounted_as)
  archive_storage_policies[mounted_as.to_sym]
end