Example #1
0
        public SceneCreatorActor(KnownPaths knownPaths)
        {
            //upsert
            Receive <CreateScene>(e =>
            {
                //stop prev version if exists
                var old = Context.System.ActorSelection($"/user/$a/$a/{e.SceneConfig.Name}-*");
                old.Tell(PoisonPill.Instance);

                //start new
                Context.ActorOf(SceneActor.Props(e.SceneConfig, knownPaths), $"{e.SceneConfig.Name}-{Salt.Gen()}");
            });
            //delete
            Receive <RemoveScene>(e =>
            {
                //stop prev version if exists
                var old = Context.System.ActorSelection($"/user/$a/$a/{e.SceneConfig.Name}-*");
                old.Tell(PoisonPill.Instance);
            });
        }
Example #2
0
 public SceneActor(SceneConfig sceneConfig, KnownPaths knownPaths)
 {
     foreach (var sceneAction in sceneConfig.Actions)
     {
         Context.ActorOf(ActionActor.Props(sceneAction, knownPaths), $"{sceneAction.Name}-{Salt.Gen()}");
     }
 }