module CrossOrigin::Document

Public Instance Methods

client_name() click to toggle source
Calls superclass method
# File lib/cross_origin/document.rb, line 21
def client_name
  origin == :default ? super : CrossOrigin[origin].name
end
collection_name() click to toggle source
Calls superclass method
# File lib/cross_origin/document.rb, line 17
def collection_name
  origin == :default ? super : CrossOrigin[origin].collection_name_for(self.class)
end
cross(origin = :default) click to toggle source
# File lib/cross_origin/document.rb, line 25
def cross(origin = :default)
  origin = CrossOrigin.to_name(origin)
  cross_origin = CrossOrigin[origin]
  return false if self.origin == origin || (cross_origin.nil? && origin != :default)
  query = collection.find(_id: attributes['_id'])
  doc = query.first
  query.delete_one
  doc['origin'] = origin
  attributes['origin'] = origin
  collection.insert_one(doc)
end
origin_enum() click to toggle source
# File lib/cross_origin/document.rb, line 13
def origin_enum
  [:default] + CrossOrigin.names.to_a
end