Example #1
0
        /// <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);
        }
Example #2
0
        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);
        }
Example #3
0
        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);
 }
 /// <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)));
 }