class Syncano::Resources::Collection
Collection
resource
Public Class Methods
Wrapper for api “get_one” method with collection_key as a key @param [Syncano::Clients::Base] client @param [String] key @param [Hash] scope_parameters @param [Hash] conditions @return [Syncano::Resources::Collection]
# File lib/syncano/resources/collection.rb, line 29 def self.find_by_key(client, key, scope_parameters = {}, conditions = {}) perform_find(client, :key, key, scope_parameters, conditions) end
Public Instance Methods
Wrapper for api “activate” method @param [TrueClass, FalseClass] force @return [Syncano::Resources::Collection]
# File lib/syncano/resources/collection.rb, line 36 def activate(force = false) response = perform_activate(nil, force) reload! if response.status self end
Wrapper for api “add_tag” method @param [String, Array] tags @param [Numeric] weight @param [TrueClass, FalseClass] remove_other @return [Syncano::Resources::Collection]
# File lib/syncano/resources/collection.rb, line 72 def add_tag(tags, weight = 1, remove_other = false) response = perform_add_tag(nil, tags, weight, remove_other) reload! if response.status self end
Batch version of “activate” method @param [Jimson::BatchClient] batch_client @param [TrueClass, FalseClass] force @return [Syncano::Response]
# File lib/syncano/resources/collection.rb, line 47 def batch_activate(batch_client, force = false) perform_activate(batch_client, force) end
Batch version of “deactivate” method @param [Jimson::BatchClient] batch_client @return [Syncano::Response]
# File lib/syncano/resources/collection.rb, line 63 def batch_deactivate(batch_client) perform_deactivate(batch_client) end
Batch version of “delete_tag” method @param [Jimson::BatchClient] batch_client @param [String, Array] tags @return [Syncano::Response]
# File lib/syncano/resources/collection.rb, line 103 def batch_delete_tag(batch_client, tags) perform_delete_tag(batch_client, tags) end
Association has_many :data_objects @return [Syncano::QueryBuilder] query builder for resource Syncano::Resources::DataObject
# File lib/syncano/resources/collection.rb, line 13 def data_objects ::Syncano::QueryBuilder.new(client, ::Syncano::Resources::DataObject, scope_parameters.merge(collection_id: id)) end
Wrapper for api “deactivate” method @return [Syncano::Resources::Collection]
# File lib/syncano/resources/collection.rb, line 53 def deactivate response = perform_deactivate(nil) reload! if response.status self end
Association has_many :folders @return [Syncano::QueryBuilder] query builder for resource Syncano::Resources::Folder
# File lib/syncano/resources/collection.rb, line 7 def folders ::Syncano::QueryBuilder.new(client, ::Syncano::Resources::Folder, scope_parameters.merge(collection_id: id)) end
Wrapper for api “subscription.subscribe_collection” method @return [Syncano::Resource::Collection]
# File lib/syncano/resources/collection.rb, line 109 def subscribe perform_subscribe reload! end
Wrapper for api “subscription.unsubscribe_collection” method @return [Syncano::Resource::Collection]
# File lib/syncano/resources/collection.rb, line 116 def unsubscribe perform_unsubscribe reload! end
Association has_many :users @return [Syncano::QueryBuilder] query builder for resource Syncano::Resources::User
# File lib/syncano/resources/collection.rb, line 19 def users ::Syncano::QueryBuilder.new(client, ::Syncano::Resources::User, scope_parameters.merge(collection_id: id)) end
Private Instance Methods
Executes proper activate request @param [Jimson::BatchClient] batch_client @param [TrueClass, FalseClass] force @return [Syncano::Response]
# File lib/syncano/resources/collection.rb, line 167 def perform_activate(batch_client, force) self.class.make_request(client, batch_client, :activate, scope_parameters.merge( self.class.primary_key_name => primary_key, force: force )) end
Executes proper deactivate request @param [Jimson::BatchClient] batch_client @return [Syncano::Response]
# File lib/syncano/resources/collection.rb, line 177 def perform_deactivate(batch_client) self.class.make_request(client, batch_client, :deactivate, scope_parameters.merge( self.class.primary_key_name => primary_key )) end
Executes proper subscribe request @return [Syncano::Response]
# File lib/syncano/resources/collection.rb, line 211 def perform_subscribe check_if_sync_client! client.make_request(:subscription, :subscribe_collection, scope_parameters.merge(collection_id: id)) end
Executes proper unsubscribe request @return [Syncano::Response]
# File lib/syncano/resources/collection.rb, line 218 def perform_unsubscribe check_if_sync_client! client.make_request(:subscription, :unsubscribe_collection, scope_parameters.merge(collection_id: id)) end