Class: Logman::Bucket
- Inherits:
-
Object
- Object
- Logman::Bucket
- Includes:
- Mongoid::Document
- Defined in:
- lib/models/bucket.rb
Class Method Summary collapse
-
.set_bucket_collection(name) ⇒ Object
collection specifications.
Instance Method Summary collapse
- #bucket_key ⇒ Object
- #generate_new_token ⇒ Object
- #logs ⇒ Object
- #new_token ⇒ Object
- #serializable_hash(options = {}) ⇒ Object
-
#user_ids=(val) ⇒ Object
end.
- #users ⇒ Object
Class Method Details
.set_bucket_collection(name) ⇒ Object
collection specifications
16 17 18 |
# File 'lib/models/bucket.rb', line 16 def self.set_bucket_collection(name) Thread.current[:bucket_key] = name end |
Instance Method Details
#bucket_key ⇒ Object
35 36 37 38 |
# File 'lib/models/bucket.rb', line 35 def bucket_key key = self.name.gsub(' ','_').gsub('-','_') "bucket_#{key.underscore}" end |
#generate_new_token ⇒ Object
45 46 47 48 49 50 |
# File 'lib/models/bucket.rb', line 45 def generate_new_token while true token = SecureRandom.hex return token if Bucket.where(:write_token=> token).count == 0 end end |
#logs ⇒ Object
20 21 22 23 |
# File 'lib/models/bucket.rb', line 20 def logs Bucket.set_bucket_collection(self.bucket_key) Log.all end |
#new_token ⇒ Object
41 42 43 |
# File 'lib/models/bucket.rb', line 41 def new_token self.write_token = generate_new_token end |
#serializable_hash(options = {}) ⇒ Object
52 53 54 55 |
# File 'lib/models/bucket.rb', line 52 def serializable_hash(={}) [:methods] ||= [:id] super() end |
#user_ids=(val) ⇒ Object
end
26 27 28 29 |
# File 'lib/models/bucket.rb', line 26 def user_ids=(val) val = val.map {|key| Moped::BSON::ObjectId.from_string(key) } write_attribute(:user_ids, val) end |
#users ⇒ Object
31 32 33 |
# File 'lib/models/bucket.rb', line 31 def users User.where(:id.in => :user_ids) end |