/// <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="protocols">The array of protocols that the <c>Actor</c> supports.</param> /// <param name="definition">The <c>Definition</c> providing parameters to the<c>Actor</c>.</param> /// <returns></returns> public Protocols ActorFor(Type[] protocols, Definition definition) { if (IsTerminated) { throw new InvalidOperationException("vlingo-net/actors: Stopped."); } return(Stage.ActorFor(protocols, definition)); }
/// <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="protocols">The array of protocols that the <c>Actor</c> supports.</param> /// <param name="type">The type of the <code>Actor</code> to be created.</param> /// <param name="parameters">The constructor parameters for the <code>Actor</code>.</param> /// <returns></returns> public Protocols ActorFor(Type[] protocols, Type type, params object[] parameters) { if (IsTerminated) { throw new InvalidOperationException("vlingo-net/actors: Stopped."); } return(Stage.ActorFor(protocols, type, parameters)); }
/// <summary> /// Answers the <typeparamref name="T"/> protocol of the newly created <code>Actor</code> that implements the <code>protocol</code>. /// </summary> /// <typeparam name="T">The protocol.</typeparam> /// <param name="type">The type of the <code>Actor</code>.</param> /// <param name="parameters">Constructor parameters for the <code>Actor</code>.</param> /// <returns></returns> public T ActorFor <T>(Type type, params object[] parameters) { if (IsTerminated) { throw new InvalidOperationException("vlingo/actors: Stopped."); } return(Stage.ActorFor <T>(type, parameters)); }
/// <summary> /// Answers a new concrete <c>Actor</c> that is defined by the parameters of <paramref name="definition"/> /// and supports the protocol defined by <typeparamref name="T"/> protocol. /// </summary> /// <typeparam name="T">The protocol type.</typeparam> /// <param name="definition">The <c>Definition</c> providing parameters to the<c>Actor</c>.</param> /// <returns></returns> public T ActorFor <T>(Definition definition) { if (IsTerminated) { throw new InvalidOperationException("vlingo-net/actors: Stopped."); } return(Stage.ActorFor <T>(definition)); }
/// <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 protocols that the <c>Actor</c> supports.</param> /// <returns></returns> public Protocols ActorFor(Definition definition, Type[] protocols) { if (IsTerminated) { throw new InvalidOperationException("vlingo/actors: Stopped."); } return(Stage.ActorFor(definition, protocols)); }