/// <summary> /// Makes an appropriate implementor for requested service client contract type. /// Pass svcName parameter in cases when the requested contract may get implemented by more than one network service. /// The call is thread-safe. The caller should Dispose() the returned instance after it has been used /// </summary> public static TServiceClient New <TServiceClient>(Metabase.Metabank.SectionHost toHost, Metabase.Metabank.SectionHost fromHost = null, string svcName = null) where TServiceClient : class, IAgniServiceClient { return(Instance.GetNew <TServiceClient>(toHost.RegionPath, fromHost != null ? fromHost.RegionPath : null, svcName)); }
/// <summary> /// Makes an appropriate implementor for requested service client contract type. /// Pass svcName parameter in cases when the requested contract may get implemented by more than one network service. /// The call is thread-safe. The caller should Dispose() the returned instance after it has been used /// </summary> public TServiceClient MakeNew <TServiceClient>(Metabase.Metabank.SectionHost toHost, Metabase.Metabank.SectionHost fromHost = null, string svcName = null) where TServiceClient : class, ISkyServiceClient { return(MakeNew <TServiceClient>(toHost.RegionPath, fromHost != null ? fromHost.RegionPath : null, svcName)); }