Module: Polipus::Storage
- Defined in:
- lib/polipus/storage.rb,
lib/polipus/storage/base.rb,
lib/polipus/storage/dev_null.rb,
lib/polipus/storage/s3_store.rb,
lib/polipus/storage/mongo_store.rb,
lib/polipus/storage/memory_store.rb
Defined Under Namespace
Classes: Base, DevNull, MemoryStore, MongoStore, S3Store
Class Method Summary
collapse
Class Method Details
.dev_null ⇒ Object
27
28
29
30
|
# File 'lib/polipus/storage.rb', line 27
def self.dev_null
require 'polipus/storage/dev_null'
self::DevNull.new
end
|
.memory_store ⇒ Object
32
33
34
35
|
# File 'lib/polipus/storage.rb', line 32
def self.memory_store
require 'polipus/storage/memory_store'
self::MemoryStore.new
end
|
.mongo_store(mongo = nil, collection_name = 'pages', except = []) ⇒ Object
5
6
7
8
9
10
|
# File 'lib/polipus/storage.rb', line 5
def self.mongo_store(mongo = nil, collection_name = 'pages', except = [])
require 'polipus/storage/mongo_store'
mongo ||= Mongo::Connection.new('localhost', 27_017, pool_size: 15, pool_timeout: 5).db('polipus')
fail 'First argument must be an instance of Mongo::DB' unless mongo.is_a?(Mongo::DB)
self::MongoStore.new(mongo: mongo, collection: collection_name, except: except)
end
|
.s3_store(bucket_name = 'pages', aws_credential = {}, except = []) ⇒ Object
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
# File 'lib/polipus/storage.rb', line 12
def self.s3_store(bucket_name = 'pages', aws_credential = {}, except = [])
require 'polipus/storage/s3_store'
if aws_credential[:access_key_id].nil? || aws_credential[:secret_access_key].nil?
fail 'You have to specify AWS crediantials: :access_key_id and :secret_access_key'
end
self::S3Store.new(
bucket: bucket_name,
access_key_id: aws_credential[:access_key_id],
secret_access_key: aws_credential[:secret_access_key],
except: except
)
end
|