public static I Create <I>(Uri serviceAddress, ActorId id, IHeaderAccessor accessor) where I : class, IActor { string applicationName = string.Empty, serviceName = string.Empty; AddressHelper.EvaluateAddress(serviceAddress, out applicationName, out serviceName); return(ActorProxy.Create <I>(id, applicationName, serviceName, new ProxyOperationInvoker(Invokers), new Extensions.Services.ProxyMessageInterceptor(Interceptors, accessor))); }
public static I Create <I>(Uri serviceAddress, string listenerName, IHeaderAccessor accessor) where I : class, IService { string applicationName = string.Empty, serviceName = string.Empty; Debug.Assert(listenerName.Equals(typeof(I).Name)); AddressHelper.EvaluateAddress(serviceAddress, out applicationName, out serviceName); return(ServiceProxy.Create <I>(applicationName, serviceName, new ProxyOperationInvoker(Invokers), new ProxyMessageInterceptor(Interceptors, accessor))); }
protected abstract void OnCopyCommonHeadersFrom(IHeaderAccessor accessor);
protected abstract void OnAddCommonHeaders(IHeaderAccessor accessor);
public static I ForAccessor <I>(string instanceName, IHeaderAccessor accessor) where I : class, IActor { Debug.Assert(typeof(I).Namespace.Contains("Accessor"), "Invalid resource call. Use only the accesor interface to access a resource."); return(Create <I>(Addressing.Accessor <I>(), instanceName, accessor)); }
static I Create <I>(Uri actorAddress, string instanceName, IHeaderAccessor accessor) where I : class, IActor { Debug.Assert(typeof(I).IsInterface); return(ProxyFactory.Create <I>(actorAddress, new ActorId(instanceName), accessor)); }
public static I ForMicroservice <I>(IHeaderAccessor accessor) where I : class, IService { Debug.Assert(typeof(I).Namespace.Contains("Manager"), "Invalid microservice call. Use only the Manager interface to access a microservice."); return(Create <I>(Addressing.Microservice <I>(), accessor)); }
static I Create <I>(Uri serviceAddress, IHeaderAccessor accessor) where I : class, IService { Debug.Assert(typeof(I).IsInterface); return(ProxyFactory.Create <I>(serviceAddress, Naming.Listener <I>(), accessor)); }
protected override void OnAddCommonHeaders(IHeaderAccessor accessor) { accessor.AddHeader(OriginationHelper.Create()); }
protected override void OnCopyCommonHeadersTo(IHeaderAccessor accessor) { accessor.CopyHeaderTo <OriginationContext>(); }
protected override void OnCopyCommonHeadersFrom(IHeaderAccessor accessor) { accessor.CopyHeaderFrom <MyContext>(); }
protected override void OnAddCommonHeaders(IHeaderAccessor accessor) { accessor.AddHeader <MyContext>(new MyContext { Value = "Call chain start" }); }
public ProxyMessageInterceptor(IEnumerable <IProxyHeaderInterceptor> interceptors, IHeaderAccessor accessor) { Interceptors = interceptors; Accessor = accessor; }