com.sun.hk2.component
Class FactoryWomb<T>

java.lang.Object
  extended by com.sun.hk2.component.AbstractInhabitantImpl<T>
      extended by com.sun.hk2.component.AbstractWombImpl<T>
          extended by com.sun.hk2.component.FactoryWomb<T>
All Implemented Interfaces:
Holder<T>, Inhabitant<T>, Womb<T>

public class FactoryWomb<T>
extends AbstractWombImpl<T>

Creates an object from Factory.

Author:
Kohsuke Kawaguchi

Nested Class Summary
 
Nested classes/interfaces inherited from interface com.sun.hk2.component.Holder
Holder.Impl<T>
 
Field Summary
 
Fields inherited from class com.sun.hk2.component.AbstractWombImpl
type
 
Constructor Summary
FactoryWomb(java.lang.Class<T> type, java.lang.Class<? extends Factory> factory, Habitat habitat, MultiMap<java.lang.String,java.lang.String> metadata)
           
FactoryWomb(java.lang.Class<T> type, Inhabitant<? extends Factory> factory, Habitat habitat, MultiMap<java.lang.String,java.lang.String> metadata)
           
 
Method Summary
 T create(Inhabitant onBehalfOf)
          Creates a new instance.
 
Methods inherited from class com.sun.hk2.component.AbstractWombImpl
get, initialize, inject, metadata, release, type, typeName
 
Methods inherited from class com.sun.hk2.component.AbstractInhabitantImpl
companions, get, getSerializedMetadata, getSerializedMetadata, lead, setCompanions
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jvnet.hk2.component.Womb
get
 
Methods inherited from interface org.jvnet.hk2.component.Inhabitant
companions, getSerializedMetadata, getSerializedMetadata, lead, setCompanions
 

Constructor Detail

FactoryWomb

public FactoryWomb(java.lang.Class<T> type,
                   java.lang.Class<? extends Factory> factory,
                   Habitat habitat,
                   MultiMap<java.lang.String,java.lang.String> metadata)

FactoryWomb

public FactoryWomb(java.lang.Class<T> type,
                   Inhabitant<? extends Factory> factory,
                   Habitat habitat,
                   MultiMap<java.lang.String,java.lang.String> metadata)
Method Detail

create

public T create(Inhabitant onBehalfOf)
         throws ComponentException
Description copied from interface: Womb
Creates a new instance. The caller is supposed to call the #initialize(T, Inhabitant) right away. This 2-phase initialization allows us to handle cycle references correctly.

Throws:
ComponentException


Copyright © 2009 Sun Microsystems, Inc.. All Rights Reserved.