Sha256: ac05e1785a54c88a12fc2c83f8c906194a7fe7bfc32ade04c9167375b1d542a3

Contents?: true

Size: 692 Bytes

Versions: 14

Compression:

Stored size: 692 Bytes

Contents

module CurationConcerns
  class ActorFactory
    def self.build(curation_concern, current_user)
      ActorStack.new(curation_concern,
                     current_user,
                     stack_actors(curation_concern))
    end

    def self.stack_actors(curation_concern)
      [AddToCollectionActor,
       AssignRepresentativeActor,
       AttachFilesActor,
       ApplyOrderActor,
       InterpretVisibilityActor,
       model_actor(curation_concern),
       AssignIdentifierActor]
    end

    def self.model_actor(curation_concern)
      actor_identifier = curation_concern.class.to_s.split('::').last
      "CurationConcerns::#{actor_identifier}Actor".constantize
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
curation_concerns-1.0.0.beta1 app/services/curation_concerns/actor_factory.rb
curation_concerns-0.14.0 app/services/curation_concerns/actor_factory.rb
curation_concerns-0.14.0.pre4 app/services/curation_concerns/actor_factory.rb
curation_concerns-0.14.0.pre3 app/services/curation_concerns/actor_factory.rb
curation_concerns-0.14.0.pre2 app/services/curation_concerns/actor_factory.rb
curation_concerns-0.14.0.pre1 app/services/curation_concerns/actor_factory.rb
curation_concerns-0.13.1 app/services/curation_concerns/actor_factory.rb
curation_concerns-0.13.0 app/services/curation_concerns/actor_factory.rb
curation_concerns-0.12.0 app/services/curation_concerns/actor_factory.rb
curation_concerns-0.12.0.pre9 app/services/curation_concerns/actor_factory.rb
curation_concerns-0.12.0.pre8 app/services/curation_concerns/actor_factory.rb
curation_concerns-0.12.0.pre7 app/services/curation_concerns/actor_factory.rb
curation_concerns-0.12.0.pre6 app/services/curation_concerns/actor_factory.rb
curation_concerns-0.12.0.pre5 app/services/curation_concerns/actor_factory.rb