public object Generate(IProxyBuilder builder, ProxyGenerationOptions options, IInterceptor[] interceptors)
		{
			var type = GetProxyType(builder);
			var instance = GetProxyInstance(type,interceptors);
			var method = GetInvokeDelegate(instance);
			return method;
		}
Esempio n. 2
0
        /// <inheritdoc/>
        public IProxiesBuilder Map(IProxyBuilder builder)
        {
            if(builder == null)
                throw new ArgumentException($"{nameof(builder)} must not be `null`.");

            _proxyBuilders.Add(builder);
            return this;
        }
        public void SetUp()
        {
            _mocks = new MockRepository();

            _proxies   = new Hashtable();
            _builder   = _mocks.DynamicMock <IProxyBuilder>();
            _generator = new CastleProxyFactory(_builder, _proxies);
        }
Esempio n. 4
0
 public DynamicProxyActivator(IMachineContainer container, IProxyBuilder proxyBuilder, IActivator target, ServiceEntry entry)
 {
     _container = container;
       _entry = entry;
       _proxyBuilder = proxyBuilder;
       _target = target;
       _proxyGenerator = new ProxyGenerator(_proxyBuilder);
 }
        public object Generate(IProxyBuilder builder, ProxyGenerationOptions options, IInterceptor[] interceptors)
        {
            var type     = GetProxyType(builder);
            var instance = GetProxyInstance(type, interceptors);
            var method   = GetInvokeDelegate(instance);

            return(method);
        }
Esempio n. 6
0
		public void ResetGeneratorAndBuilder()
		{
#if SILVERLIGHT // no PersistentProxyBuilder in Silverlight
			builder = new DefaultProxyBuilder();
#else
			builder = new PersistentProxyBuilder();
#endif
			generator = new ProxyGenerator(builder);
		}
		public object Generate(IProxyBuilder builder, ProxyGenerationOptions options, IInterceptor[] interceptors, ComponentModel model,
		                       CreationContext context)
		{
			var targetDelegateType = context.RequestedType;
			var type = GetProxyType(builder, targetDelegateType);
			var instance = GetProxyInstance(type, interceptors);
			var method = GetInvokeDelegate(instance, targetDelegateType);
			return method;
		}
Esempio n. 8
0
        public void ResetGeneratorAndBuilder()
        {
#if FEATURE_ASSEMBLYBUILDER_SAVE
            builder = new PersistentProxyBuilder();
#else
            builder = new DefaultProxyBuilder();
#endif
            generator = new ProxyGenerator(builder);
        }
Esempio n. 9
0
        /// <summary>
        /// Creates a DocumentProxyBuilder instance.
        /// </summary>
        /// <param name="baseProxyBuilder">Base <see cref="IProxyBuilder"/> to use for all calls other than <see cref="CreateClassProxyType"/>.</param>
        public DocumentProxyBuilder(IProxyBuilder baseProxyBuilder)
        {
            if (baseProxyBuilder == null)
            {
                throw new ArgumentNullException("baseProxyBuilder");
            }

            _baseProxyBuilder = baseProxyBuilder;
        }
Esempio n. 10
0
        public UserProxy(DiscordSocketClient discord, IProxyBuilder proxyBuilder, IConfiguration cfg)
        {
            this.discord      = discord;
            this.proxyBuilder = proxyBuilder;
            regexCache        = new RegexCache();
            webhookCache      = new WebhookCache();

            helper = new ProxyHelper(discord, cfg);
        }
Esempio n. 11
0
        public void ResetGeneratorAndBuilder()
        {
#if SILVERLIGHT // no PersistentProxyBuilder in Silverlight
            builder = new DefaultProxyBuilder();
#else
            builder = new PersistentProxyBuilder();
#endif
            generator = new ProxyGenerator(builder);
        }
Esempio n. 12
0
        public object Generate(IProxyBuilder builder, ProxyGenerationOptions options, IInterceptor[] interceptors, ComponentModel model,
                               CreationContext context)
        {
            var targetDelegateType = context.RequestedType;
            var type     = GetProxyType(builder, targetDelegateType);
            var instance = GetProxyInstance(type, interceptors);
            var method   = GetInvokeDelegate(instance, targetDelegateType);

            return(method);
        }
        public object CreateEntity(ValueBuffer valueBuffer)
        {
            DbContext context = (DbContext) valueBuffer[valueBuffer.Count - 1];
            if (_proxyBuilder == null)
            {
                _proxyBuilder = context.GetInfrastructure().GetService<IProxyBuilder>();
            }

            return _proxyBuilder.ConstructProxy(this, valueBuffer, context);
        }
		private Type GetProxyType(IProxyBuilder builder)
		{
			var scope = builder.ModuleScope;
			var logger = builder.Logger;
			var generator = new DelegateProxyGenerator(scope, targetDelegateType)
			{
				Logger = logger
			};
			return generator.GetProxyType(builder);
		}
Esempio n. 15
0
        private Type GetProxyType(IProxyBuilder builder, Type targetDelegateType)
        {
            var scope     = builder.ModuleScope;
            var logger    = builder.Logger;
            var generator = new DelegateProxyGenerator(scope, targetDelegateType)
            {
                Logger = logger
            };

            return(generator.GetProxyType());
        }
        public CastleProxyFactory(IProxyBuilder proxyBuilder, IDictionary proxies)
        {
            if (proxyBuilder == null)
            {
                throw new ArgumentNullException("proxyBuilder");
            }
            if (proxies == null)
            {
                throw new ArgumentNullException("proxies");
            }

            _proxyBuilder = proxyBuilder;
            _proxies = proxies;
        }
Esempio n. 17
0
        public CastleProxyFactory(IProxyBuilder proxyBuilder, IDictionary proxies)
        {
            if (proxyBuilder == null)
            {
                throw new ArgumentNullException("proxyBuilder");
            }
            if (proxies == null)
            {
                throw new ArgumentNullException("proxies");
            }

            _proxyBuilder = proxyBuilder;
            _proxies      = proxies;
        }
        public XmlRpcProxyBuilder(IProxyBuilder <T> proxyBuilder, IHttpClientFactory httpClientFactory)
        {
            Ensure.IsNotNull(proxyBuilder, nameof(proxyBuilder));
            Ensure.IsNotNull(httpClientFactory, nameof(httpClientFactory));

            if (!typeof(T).IsInterface)
            {
                throw new ArgumentException($"Generic type '{typeof(T).Name}' must be an interface");
            }

            _proxyBuilder      = proxyBuilder;
            _httpClientFactory = httpClientFactory;

            SetDefaultSettings();
        }
Esempio n. 19
0
        /// <summary>
        /// Creates the proxy.
        /// </summary>
        /// <param name="type">The type.</param>
        /// <param name="entityMap">The entity map.</param>
        /// <param name="proxyHydrator">The proxy hydrator.</param>
        /// <param name="implementITrackable">if set to <c>true</c> implement ITrackable.</param>
        /// <returns></returns>
        public static object CreateProxy(this Type type, EntityMap entityMap, IProxyHydrator proxyHydrator, bool implementITrackable = false)
        {
            IProxyBuilder proxyBuilder = implementITrackable ? new TrackableProxyBuilder() : new ProxyBuilder();
            var           proxyType    = proxyBuilder.CreateProxyType(type, entityMap);
            var           instance     = Activator.CreateInstance(proxyType, type, proxyHydrator);

            if (implementITrackable && (proxyHydrator == null))
            {
                var trackable = (ITrackable)instance;
                trackable.ChangeTracker.Start();
                trackable.Version = trackable.ChangeTracker.Version;
            }

            return(instance);
        }
        public SerializationResolver(IMemoryFormatter memoryFormatter, IProxyBuilder proxyBuilder)
        {
            if (proxyBuilder == null)
            {
                throw new ArgumentNullException(nameof(proxyBuilder));
            }

            if (memoryFormatter == null)
            {
                throw new ArgumentNullException(nameof(memoryFormatter));
            }

            this.MemoryFormatter = memoryFormatter;
            this.ProxyBuilder    = proxyBuilder;
        }
        /// <summary>
        /// Initializes a new instance of a <see cref="CastleMockObjectFactory"/>
        /// </summary>
        /// <param name="usePersistentProxyBuilder">A value indicating if the ProxyBuilder should be persistent</param>
        public CastleMockObjectFactory(bool usePersistentProxyBuilder)
        {
#if !SILVERLIGHT // no PersistentProxyBuilder in Silverlight
            if (usePersistentProxyBuilder)
            {
                ProxyBuilder = new PersistentProxyBuilder();
            }
            else
            {
#endif
            ProxyBuilder = new DefaultProxyBuilder();
#if !SILVERLIGHT
        }
#endif
            //Generator = new ProxyGenerator(ProxyBuilder);
        }
        /// <summary>
        /// Initializes a new instance of a <see cref="CastleMockObjectFactory"/>
        /// </summary>
        /// <param name="usePersistentProxyBuilder">A value indicating if the ProxyBuilder should be persistent</param>
        public CastleMockObjectFactory(bool usePersistentProxyBuilder)
        {
#if !SILVERLIGHT && FALSE // [email protected]
            // no PersistentProxyBuilder in Silverlight
            if (usePersistentProxyBuilder)
            {
                ProxyBuilder = new PersistentProxyBuilder();
            }
            else
            {
#endif
            ProxyBuilder = new DefaultProxyBuilder();
#if !SILVERLIGHT && FALSE // [email protected]
        }
#endif
            //Generator = new ProxyGenerator(ProxyBuilder);
        }
Esempio n. 23
0
        /// <summary>
        /// Initializes a new instance of a <see cref="CastleMockObjectFactory"/>
        /// </summary>
        /// <param name="usePersistentProxyBuilder">A value indicating if the ProxyBuilder should be persistent</param>
        public CastleMockObjectFactory(bool usePersistentProxyBuilder)
        {
#if !SILVERLIGHT && FALSE // [email protected]
            // no PersistentProxyBuilder in Silverlight
            if (usePersistentProxyBuilder)
            {
                ProxyBuilder = new PersistentProxyBuilder();
            }
            else
            {
#endif
            ProxyBuilder = new DefaultProxyBuilder();
#if !SILVERLIGHT && FALSE // [email protected]
        }
#endif
            //Generator = new ProxyGenerator(ProxyBuilder);
        }
Esempio n. 24
0
        private static ProxyGenerator CreateProxyGenerator()
        {
#if !NETFX_CORE
            var builder = new DefaultProxyBuilder();
#else
            IProxyBuilder builder = null;
            if (MoqRTRuntime.IsBaking)
            {
                builder = new PersistentProxyBuilder();
            }
            else
            {
                builder = new DefaultProxyBuilder();
            }
#endif

            return(new ProxyGenerator(builder));
        }
Esempio n. 25
0
		/// <summary>
		/// Initializes a new instance of a <see cref="CastleMockObjectFactory"/>
		/// </summary>
		/// <param name="usePersistentProxyBuilder">A value indicating if the ProxyBuilder should be persistent</param>
		public CastleMockObjectFactory(bool usePersistentProxyBuilder)
		{
			/* ^ */
#if !SILVERLIGHT && !NETCORE
/* [email protected] ^ */
// no PersistentProxyBuilder in Silverlight
				if(usePersistentProxyBuilder)
				{
					ProxyBuilder = new PersistentProxyBuilder();
				}
				else
				{
#endif
			ProxyBuilder = new DefaultProxyBuilder();
			/* ^ */
#if !SILVERLIGHT && !NETCORE
/* [email protected] ^ */
				}
#endif
			//Generator = new ProxyGenerator(ProxyBuilder);
		}
 public DynamicProxyActivatorFactory(IMachineContainer container, IProxyBuilder proxyBuilder, IActivatorFactory defaultActivatorFactory)
 {
     _container = container;
       _defaultActivatorFactory = defaultActivatorFactory;
       _proxyBuilder = proxyBuilder;
 }
Esempio n. 27
0
 public DynamicProxyFactory(IProxyBuilder proxyBuilder)
 {
     _proxyBuilder = proxyBuilder;
 }
Esempio n. 28
0
		public ProxyGenerator(IProxyBuilder builder)
		{
			_builder = builder;
		}
Esempio n. 29
0
 public ProxyGenerator(IProxyBuilder builder)
 {
     _builder = builder;
 }
Esempio n. 30
0
		public void ResetGeneratorAndBuilder()
		{
#if FEATURE_ASSEMBLYBUILDER_SAVE
			builder = new PersistentProxyBuilder();
#else
			builder = new DefaultProxyBuilder();
#endif
			generator = new ProxyGenerator(builder);
		}
		public DynamicProxyMockObjectFactory()
		{
			builder = new DefaultProxyBuilder();
			generator = new ProxyGenerator(builder);
		}
Esempio n. 32
0
 /// <summary>
 /// Initializes a new instance of <see cref="CommandForProxies"/>
 /// </summary>
 public CommandForProxies(IProxying proxying, IProxyBuilder proxyBuilder, ICommandForProxyInterceptor interceptor)
 {
     _proxying     = proxying;
     _proxyBuilder = proxyBuilder;
     _interceptor  = interceptor;
 }
 public MyProxyGenerator(IProxyBuilder builer) : base(builer)
 {
 }
Esempio n. 34
0
 public DynamicProxyFactory()
 {
     _proxyBuilder = new DecoratorProxyBuilder();
 }
Esempio n. 35
0
 public DynamicProxyMockObjectFactory()
 {
     builder   = new DefaultProxyBuilder();
     generator = new ProxyGenerator(builder);
 }