package eu.stratosphere.util.reflect;
public class DynamicInstance<Type> {
private final DynamicClass<Type> dynamicClass;
private final Type instance;
public DynamicClass<Type> getDynamicClass() {
return this.dynamicClass;
}
public DynamicInstance(final DynamicClass<Type> dynamicClass, final Object... params) {
this.dynamicClass = dynamicClass;
this.instance = dynamicClass.getConstructor().invoke(params);
}
public Object invoke(final String name, final Object... params) {
return this.dynamicClass.invoke(this.instance, name, params);
}
}