protected override IDomainObj CreateProxy()
 {
     return((IDomainObj)proxyGen.CreateInterfaceProxyWithTarget(
                typeof(IDomainObj),
                new ConcreteObj(),
                new ProxyGenerationOptions(
                    DebugEngineProxyHook.CreateForTest(typeof(API_Base_1).Namespace)),
                callCountAspect));
 }
            private T CreateProxy <T>()
            {
                var debugEngine = (T)proxyGen.CreateInterfaceProxyWithTarget(
                    typeof(T),
                    new ConcreteObj(),
                    new ProxyGenerationOptions(
                        DebugEngineProxyHook.CreateForTest(typeof(API_Base_1).Namespace)),
                    callCountAspect);

                return(debugEngine);
            }
            protected override ConcreteObj CreateProxy()
            {
                var debugEngine = new ConcreteObj();

                debugEngine = (ConcreteObj)proxyGen.CreateClassProxyWithTarget(
                    typeof(ConcreteObj),
                    debugEngine,
                    new ProxyGenerationOptions(
                        DebugEngineProxyHook.CreateForTest(typeof(API_Base_1).Namespace)),
                    callCountAspect);
                return(debugEngine);
            }