Esempio n. 1
0
 protected override void ActorConstruct(IObservableActor actor)
 {
     Actor = actor;
     actor.RespondOnEventSource(Workspace.Source.ProjectReset,
                                rest => SendIssues(ValidateAll(rest, ObservableActor.ExposedContext), ObservableActor.ExposedContext));
     RegisterRespond(actor);
 }
 public static void RespondOnEventSource <TData>(this IObservableActor actor, IEventSource <TData> eventSource, Action <TData> action)
 {
     eventSource.RespondOn(ObservableActor.ExposedContext.Self);
     actor.Receive <TData>(obs => obs.SubscribeWithStatus(action));
 }
Esempio n. 3
0
 protected abstract void RegisterRespond(IObservableActor actor);
Esempio n. 4
0
 protected override void RegisterRespond(IObservableActor actor)
 {
     RegisterRespond(Workspace.Source.SourceUpdate, ValidateSource);
 }
Esempio n. 5
0
 protected abstract void ActorConstruct(IObservableActor actor);
Esempio n. 6
0
 public EventHolder(IObservableActor actor, Func <IObservable <TEvent>, IDisposable> handler)
 {
     _handler = handler;
     _actor   = actor;
 }
Esempio n. 7
0
 public static void SendEvent <TType>(this IObservableActor actor, TType evt)
 => ObservableActor.ExposedContext.System.EventStream.Publish(evt);
Esempio n. 8
0
 public static void SubscribeToEvent <TEvent>(this IObservableActor actor,
                                              Func <IObservable <TEvent>, IDisposable> handler)
 => new EventHolder <TEvent>(actor, handler).Register();
Esempio n. 9
0
 public static void Receive <TEvent>(this IObservableActor actor, Action <TEvent> handler)
 => actor.Receive <TEvent>(obs => obs.SubscribeWithStatus(handler));