private final Injector injector;
private final Class<T> clazz;
public GuicePrototypeObjectFactory(Class<T> clazz, Injector injector) {
classMetadata = collectClassMetadata(clazz);
ConstructorMetadata constructorMetadata = classMetadata.getConstructor();
Constructor<?> constructor = constructorMetadata.getConstructor();
List<Injectable> formalParameters = constructorMetadata.getFormalParameters();
isConstructorNoArgumentOrInject =
formalParameters.size() == 0 || constructor.getAnnotation(Inject.class) != null;
this.injector = injector;
this.clazz = clazz;
}