/// <summary> /// Registers the fluent object configuration we will later load into the spring factory registry. /// </summary> /// <param name="objectConfiguration">The object configuration container.</param> public void RegisterObjectConfiguration(ICanContainConfiguration objectConfiguration) { if (!(objectConfiguration is IRegistrableObject)) { throw new ConfigurationErrorsException( string.Format("This object is not registrable in your application context {0}", objectConfiguration.GetType().FullName)); } _springObjectConfigurations.Add(objectConfiguration); }
public static ICanConfigureObject <T> Register <T>(string identifierName) where T : class { ICanContainConfiguration configurationParser = FluentStaticConfiguration.GetConfigurationParser(identifierName); if (configurationParser == null) { configurationParser = new ObjectDefinitionParser(typeof(T), identifierName); } var objectBinder = new ObjectBinder <T>((ObjectDefinitionParser)configurationParser); FluentStaticConfiguration.RegisterObjectConfiguration(configurationParser); return(objectBinder); }
public static ICanConfigureCreatedObject <T> Register <T>(Func <IApplicationContext, T> objectCreation, string identifierName) { ICanContainConfiguration configurationParser = FluentStaticConfiguration.GetConfigurationParser(identifierName); if (configurationParser == null) { configurationParser = new ConstructorObjectDefinitionParser <T>(identifierName); } var objectBinder = new ConstructorObjectBinder <T>((ConstructorObjectDefinitionParser <T>)configurationParser); objectBinder.AddConstructorDelegate(objectCreation); FluentStaticConfiguration.RegisterObjectConfiguration(configurationParser); return(objectBinder); }
/// <summary> /// Registers the object that contains your object configuration. /// </summary> /// <param name="configurationParser">The configuration parser.</param> public static void RegisterObjectConfiguration(ICanContainConfiguration configurationParser) { _configurationRegistry.RegisterObjectConfiguration(configurationParser); }
public void SetPropertyWithInlineDefinition(string propertyName, ICanContainConfiguration inlineDefinitionParser) { _objectDefinitionActions.Add((a, f) => a.PropertyValues.Add(new PropertyValue(propertyName, ((ICanConfigureInlineObject)inlineDefinitionParser).GetObject(f)))); }
public void SetConstructorArgumentWithIndexToInlineDefinition(int construtorArgumentIndex, ICanContainConfiguration inlineDefinition) { _objectDefinitionActions.Add((a, f) => a.ConstructorArgumentValues.AddIndexedArgumentValue(construtorArgumentIndex, ((ICanConfigureInlineObject)inlineDefinition).GetObject(f))); }
public void SetConstructorArgumentWithTypeToInlineDefinition(Type construtorArgumentType, ICanContainConfiguration inlineDefinitionParser) { _objectDefinitionActions.Add((a, f) => a.ConstructorArgumentValues.AddGenericArgumentValue(((ICanConfigureInlineObject)inlineDefinitionParser).GetObject(f), construtorArgumentType.FullName)); }
public void SetConstructorArgumentWithNameToInlineDefinition(string construtorArgumentName, ICanContainConfiguration inlineDefinitionParser) { _objectDefinitionActions.Add((a, f) => a.ConstructorArgumentValues.AddNamedArgumentValue(construtorArgumentName, ((ICanConfigureInlineObject)inlineDefinitionParser).GetObject(f))); }