예제 #1
0
 public AsyncProxyGenerator(IZooyardPools zooyardPools, string app, string version)
 {
     _proxyTypeCaches = new ConcurrentDictionary <Type, Dictionary <Type, Type> >();
     _proxyAssembly   = new ProxyAssembly();
     _zooyardPools    = zooyardPools;
     _app             = app;
     _version         = version;
 }
예제 #2
0
 public ZooyardFactory(IZooyardPools pools, string app, string version)
 {
     _pools   = pools;
     _app     = app;
     _version = version;
 }
예제 #3
0
        /// <summary> 创建代理 </summary>
        /// <param name="interfaceType"></param>
        /// <param name="baseType"></param>
        /// <param name="proxyProvider"></param>
        /// <param name="key"></param>
        /// <returns></returns>
        public object CreateProxy(Type interfaceType, Type baseType, IZooyardPools zooyardPools, string app, string version)
        {
            var proxiedType = GetProxyType(baseType, interfaceType);

            return(Activator.CreateInstance(proxiedType, new ProxyHandler(this)));
        }
예제 #4
0
 public ServiceInterceptor(IZooyardPools clientPools, string app, string version)
 {
     this.clientPools = clientPools;
     this.app         = app;
     this.version     = version;
 }