private static void createInterfaceProxy( StringBuilder sb, KeyValuePair<Type, ObservedType> kv, Type interfaceType ) { Type type = kv.Key; AopCoderDialect dialect = new AopCoderDialectInerface(); append_ns_begin( sb, type ); append_interface_class_begin( sb, type, dialect, interfaceType.FullName ); append_methods( sb, kv, dialect ); append_interface_methods_other( sb, kv, dialect, interfaceType ); append_class_end( sb ); append_ns_end( sb ); }
private static void createInterfaceProxy(StringBuilder sb, KeyValuePair <Type, ObservedType> kv, Type interfaceType) { Type type = kv.Key; AopCoderDialect dialect = new AopCoderDialectInerface(); append_ns_begin(sb, type); append_interface_class_begin(sb, type, dialect, interfaceType.FullName); append_methods(sb, kv, dialect); append_interface_methods_other(sb, kv, dialect, interfaceType); append_class_end(sb); append_ns_end(sb); }
internal static Object createProxyByInterface(Type targetType, Type interfaceType) { AopCoderDialect dialect = new AopCoderDialectInerface(); String proxyName = strUtil.Join(targetType.Namespace, dialect.GetClassFullName(targetType, interfaceType.FullName), "."); Object interfaceProxy = _aopAssembly.CreateInstance(proxyName); if (interfaceProxy == null) { String exMsg = "cannot create interface proxy. target type=" + targetType.FullName + ", interface type=" + interfaceType + ", proxy=" + proxyName; logger.Error(exMsg); return(null); } rft.SetPropertyValue(interfaceProxy, dialect.GetInvokeTargetBase(), rft.GetInstance(targetType)); return(interfaceProxy); }