class ActiveFlags::Handler::FlagBuilder

Public Class Methods

new(resource, flag_attributes) click to toggle source
# File lib/active_flags/handler/flag_builder.rb, line 4
def initialize(resource, flag_attributes)
  @resource = resource
  @flag_attributes = flag_attributes
end

Public Instance Methods

save() click to toggle source
# File lib/active_flags/handler/flag_builder.rb, line 9
def save
  flag = ActiveFlags::Flag.find_or_initialize_by(subject: @resource, key: @flag_attributes[:key])
  flag.removing_duplicated_flags!
  flag.update!(value: @flag_attributes[:value])
  @resource.flags_as_collection << flag
end