//[DebuggerStepThrough] ////[DebuggerHidden] public object NewInstance(InjectionContext context) { object instance = this.constructorsModel.NewInstance(context); this.injectedFieldsModel.Inject(context, instance); this.injectedMethodsModel.Inject(context, instance); return instance; }
//[DebuggerStepThrough] ////[DebuggerHidden] public object NewInstance(CompositeInstance compositeInstance, StateHolder stateHolder, UsesInstance uses) { var injectionContext = new InjectionContext(compositeInstance, uses, stateHolder); object mixin = this.injectedObjectBuilder.NewInstance(injectionContext); return(mixin); }
//[DebuggerStepThrough] ////[DebuggerHidden] public void Inject(InjectionContext context, object instance) { foreach (InjectedFieldModel field in this.fields) { field.Inject(context, instance); } }
// Context //[DebuggerStepThrough] ////[DebuggerHidden] public object NewInstance(ModuleInstance moduleInstance, object next, ProxyReferenceInvocationHandler proxyHandler) { var injectionContext = new InjectionContext(moduleInstance, this.WrapNext(next), proxyHandler); object mixin = this.injectedObjectBuilder.NewInstance(injectionContext); return(mixin); }
public object ProvideInjection(InjectionContext context, InjectionAttribute attribute, Type fieldType) { if (fieldType == typeof(object)) { return(context.CompositeInstance.Proxy); } return(context.CompositeInstance.NewProxy(fieldType)); }
//[DebuggerStepThrough] ////[DebuggerHidden] public object NewInstance(InjectionContext context) { object instance = this.constructorsModel.NewInstance(context); this.injectedFieldsModel.Inject(context, instance); this.injectedMethodsModel.Inject(context, instance); return(instance); }
public object ProvideInjection(InjectionContext context, InjectionAttribute attribute, Type fieldType) { if (fieldType == typeof(object)) { return context.CompositeInstance.Proxy; } return context.CompositeInstance.NewProxy(fieldType); }
public object ProvideInjection(InjectionContext context, InjectionAttribute attribute, Type fieldType) { if (typeof(StateHolder).IsAssignableFrom(fieldType)) { return(context.State); } return(null); }
public object ProvideInjection(InjectionContext context, InjectionAttribute attribute, Type fieldType) { if (typeof(StateHolder).IsAssignableFrom(fieldType)) { return context.State; } return null; }
//[DebuggerStepThrough] ////[DebuggerHidden] public object NewInstance(InjectionContext injectionContext) { return Activator.CreateInstance(this.type, null); //foreach(var constructor in constructors) //{ // try // { // constructor.Invoke() // } //} }
//[DebuggerStepThrough] ////[DebuggerHidden] public object NewInstance(InjectionContext injectionContext) { return(Activator.CreateInstance(this.type, null)); //foreach(var constructor in constructors) //{ // try // { // constructor.Invoke() // } //} }
//[DebuggerStepThrough] ////[DebuggerHidden] public object ProvideInjection(InjectionContext context, InjectionAttribute attribute, Type fieldType) { if (fieldType == typeof(TransientBuilderFactory)) { return context.ModuleInstance.TransientBuilderFactory; } if (fieldType == typeof(ObjectBuilderFactory)) { return context.ModuleInstance.ObjectBuilderFactory; } if (fieldType == typeof(ValueBuilderFactory)) { return context.ModuleInstance.ValueBuilderFactory; } if (fieldType == typeof(UnitOfWorkFactory)) { return context.ModuleInstance.UnitOfWorkFactory; } if (fieldType == typeof(ServiceFinder)) { return context.ModuleInstance.ServiceFinder; } if (fieldType == typeof(ModuleInstance)) { return context.ModuleInstance; } if (fieldType == typeof(Layer)) { return context.ModuleInstance.LayerInstance; } if (fieldType == typeof(Application)) { return context.ModuleInstance.LayerInstance.ApplicationInstance; } //else if( typeof( Qi4j) ) || typeof( Qi4jSPI) ) //{ // return context.ModuleInstance.layerInstance().applicationInstance().runtime(); //} return null; }
//[DebuggerStepThrough] ////[DebuggerHidden] public object ProvideInjection(InjectionContext context, InjectionAttribute attribute, Type fieldType) { if (fieldType == typeof(TransientBuilderFactory)) { return(context.ModuleInstance.TransientBuilderFactory); } if (fieldType == typeof(ObjectBuilderFactory)) { return(context.ModuleInstance.ObjectBuilderFactory); } if (fieldType == typeof(ValueBuilderFactory)) { return(context.ModuleInstance.ValueBuilderFactory); } if (fieldType == typeof(UnitOfWorkFactory)) { return(context.ModuleInstance.UnitOfWorkFactory); } if (fieldType == typeof(ServiceFinder)) { return(context.ModuleInstance.ServiceFinder); } if (fieldType == typeof(ModuleInstance)) { return(context.ModuleInstance); } if (fieldType == typeof(Layer)) { return(context.ModuleInstance.LayerInstance); } if (fieldType == typeof(Application)) { return(context.ModuleInstance.LayerInstance.ApplicationInstance); } //else if( typeof( Qi4j) ) || typeof( Qi4jSPI) ) //{ // return context.ModuleInstance.layerInstance().applicationInstance().runtime(); //} return(null); }
public object ProvideInjection(InjectionContext context, InjectionAttribute attribute, Type fieldType) { object obj = context.Uses.UseForType(fieldType); if (obj != null) { return obj; } ModuleInstance moduleInstance = context.ModuleInstance; TransientFinder compositeFinder = moduleInstance.FindCompositeModel(fieldType); if (compositeFinder.Model != null) { CompositeInstance compositeInstance = compositeFinder.Model.NewCompositeInstance(moduleInstance, context.Uses, context.State); context.Uses.Use(compositeInstance); return compositeInstance.Proxy; } return null; }
public object ProvideInjection(InjectionContext context, InjectionAttribute attribute, Type fieldType) { object obj = context.Uses.UseForType(fieldType); if (obj != null) { return(obj); } ModuleInstance moduleInstance = context.ModuleInstance; TransientFinder compositeFinder = moduleInstance.FindCompositeModel(fieldType); if (compositeFinder.Model != null) { CompositeInstance compositeInstance = compositeFinder.Model.NewCompositeInstance(moduleInstance, context.Uses, context.State); context.Uses.Use(compositeInstance); return(compositeInstance.Proxy); } return(null); }
//[DebuggerStepThrough] ////[DebuggerHidden] public object NewInstance(CompositeInstance compositeInstance, StateHolder stateHolder, UsesInstance uses) { var injectionContext = new InjectionContext(compositeInstance, uses, stateHolder); object mixin = this.injectedObjectBuilder.NewInstance(injectionContext); return mixin; }
//[DebuggerStepThrough] ////[DebuggerHidden] public object ProvideInjection(InjectionContext context, InjectionAttribute attribute, Type fieldType) { return(context.Next); }
public object Inject(InjectionContext context) { throw new NotImplementedException(); }
//[DebuggerStepThrough] ////[DebuggerHidden] public object ProvideInjection(InjectionContext context, InjectionAttribute attribute, Type fieldType) { return context.Next; }
//[DebuggerStepThrough] ////[DebuggerHidden] public void Inject(InjectionContext context, object mixin) { // throw new NotImplementedException(); }
//[DebuggerStepThrough] ////[DebuggerHidden] public void Inject(InjectionContext context, object instance) { object value = this.injectionProvider.ProvideInjection(context, this.injectionAttribute, this.injectedField.FieldType); this.injectedField.SetValue(instance, value); }
public object ProvideInjection(InjectionContext context, InjectionAttribute attribute, Type fieldType) { ServiceReference service = context.ModuleInstance.ServiceFinder.FindService(fieldType); return service; }
public object ProvideInjection(InjectionContext context, InjectionAttribute attribute, Type fieldType) { ServiceReference service = context.ModuleInstance.ServiceFinder.FindService(fieldType); return(service); }
// Context //[DebuggerStepThrough] ////[DebuggerHidden] public object NewInstance(ModuleInstance moduleInstance, object next, ProxyReferenceInvocationHandler proxyHandler) { var injectionContext = new InjectionContext(moduleInstance, this.WrapNext(next), proxyHandler); object mixin = this.injectedObjectBuilder.NewInstance(injectionContext); return mixin; }