module Divisio::MongoidAdapter
Public Instance Methods
delete_experiment_for_identity(identity, experiment_name)
click to toggle source
# File lib/divisio/mongoid_adapter.rb, line 22 def delete_experiment_for_identity(identity, experiment_name) experiment_object = Experiment.where(identifier: identity, name: experiment_name).first return experiment_object.destroy if experiment_object false end
split(experiment_name, variants, identity)
click to toggle source
Calls superclass method
Divisio::BaseAdapter#split
# File lib/divisio/mongoid_adapter.rb, line 10 def split(experiment_name, variants, identity) experiment_object = Experiment.where(identifier: identity, name: experiment_name).first return experiment_object.variant if experiment_object variant_for_identity = super.to_s experiment_object = Experiment.new(identifier: identity, name: experiment_name, variant: variant_for_identity) return variant_for_identity if experiment_object.save rescue Moped::Errors::OperationFailure split(experiment_name, variants, identity) end