[cc'ing the [email protected] list]

On Apr 23, 2009, at 9:56 AM, Guillaume Nodet wrote:


  In blueprint, there is a notion of factory
component, which should be built by its own recipe

With you so far.

, then used as a reference to create the object using arguments if any

Not sure what "used as a reference" means.  Also not sure what "using
arguments" means. Are the arguments somehow different than the properties
in a recipe?  Where do they come from?

Just meaning that the factory is itself a bean usually created with
its own recipe.
So the properties on the recipe that uses the factory will be used to:
 * call the factory method
 * populate the created beans with properties

, then populating the created beans using properties.

So the factory is allowed to create several beans and I guess is kept around and the resulting beans should be injected with it's own set of properties?

Right

So is this basically what you're talking about? (making up some api here)

ObjectRecipe colorFactoryRecipe = new ObjectRecipe(ColorFactory.class) colorFactoryRecipe.setProperty("foo", "bar"); // set the properties for the factory

  ColorFactory colorFactory = (ColorFactory) factoryRecipe.create();

  ObjectRecipe redRecipe = new ObjectRecipe();
  redRecipe.setInstanceFactory(colorFactory);
  redRecipe.setProperty("r", "255");
  redRecipe.setProperty("g", "0");
  redRecipe.setProperty("b", "0");

  Color red = (Color) redRecipe.create();

  ObjectRecipe blueRecipe = new ObjectRecipe();
  blueRecipe.setInstanceFactory(colorFactory);
  blueRecipe.setProperty("r", "0");
  blueRecipe.setProperty("g", "0");
  blueRecipe.setProperty("b", "255");

  Color blue = (Color) redRecipe.create();

That the basic idea?

-David


Reply via email to