public Protocols ActorFor(Definition definition, Type[] protocols) => new Protocols(ActorProtocolFor( definition, protocols, definition.ParentOr(World.DefaultParent), definition.Supervisor, definition.LoggerOr(World.DefaultLogger)));
public TestActor <T> TestActorFor <T>(Definition definition) { var redefinition = Definition.Has( definition.Type, definition.Parameters(), TestMailbox.Name, definition.ActorName); try { return(ActorProtocolFor <T>( redefinition, definition.ParentOr(World.DefaultParent), null, null, definition.Supervisor, definition.LoggerOr(World.DefaultLogger)).ToTestActor()); } catch (Exception e) { World.DefaultLogger.Log($"vlingo-net/actors: FAILED: {e.Message}", e); Console.WriteLine(e.Message); Console.WriteLine(e.StackTrace); return(null); } }
/// <summary> /// Answers a <c>Protocols</c> that provides one or more supported <paramref name="protocols"/> for the /// newly created <c>Actor</c> according to <paramref name="definition"/>. /// </summary> /// <param name="definition">The <c>Definition</c> providing parameters to the <c>Actor</c>.</param> /// <param name="protocols">The array of protocol that the <c>Actor</c> supports.</param> /// <returns>A <see cref="Protocols"/> instance.</returns> public Protocols ActorFor(Definition definition, Type[] protocols) { var all = ActorProtocolFor( definition, protocols, definition.ParentOr(World.DefaultParent), definition.Supervisor, definition.LoggerOr(World.DefaultLogger)); return(new Protocols(ActorProtocolActor <object> .ToActors(all))); }
public T ActorFor <T>(Definition definition, Address address) { var actor = ActorProtocolFor <T>( definition, definition.ParentOr(World.DefaultParent), address, null, definition.Supervisor, definition.LoggerOr(World.DefaultLogger)); return(actor.ProtocolActor); }
public T ActorThunkFor <T>(Definition definition, IAddress?address) { var actorMailbox = AllocateMailbox(definition, address, null); var actor = ActorProtocolFor <T>( definition, definition.ParentOr(World.DefaultParent), address, actorMailbox, definition.Supervisor, definition.LoggerOr(World.DefaultLogger)); return(actor !.ProtocolActor); }
internal Protocols TestActorFor(Definition definition, Type[] protocols) { var redefinition = Definition.Has( definition.Type, definition.Parameters(), TestMailbox.Name, definition.ActorName); var all = ActorProtocolFor( redefinition, protocols, definition.ParentOr(World.DefaultParent), null, null, definition.Supervisor, definition.LoggerOr(World.DefaultLogger)); return(new Protocols(ActorProtocolActor <object> .ToTestActors(all, protocols))); }
public T ActorFor <T>(Definition definition) => ActorFor <T>( definition, definition.ParentOr(World.DefaultParent), definition.Supervisor, definition.LoggerOr(World.DefaultLogger));