public MethodSynthesizerProxy(final ClassLoader classLoader, final Object value) throws UnableToCreateInstanceException {
this(classLoader);
if (value instanceof String) {
final String[] configs = ((String) value).split(";");
final String syn = configs[0];
final MethodSynthesizer synth = lazyGet(classLoader, syn);
for (int i = 1; i < configs.length; i++) {
final String config = configs[i];
final String name = config.substring(0, config.indexOf('='));
final String val = config.substring(name.length() + 1);
try {
synth.configure(name, val);
} catch (GeDAException geda) {
throw new UnableToCreateInstanceException(synth.getClass().getCanonicalName(),
"Unable to configure with: " + value, geda);
}
}
} else {
lazyGet(classLoader, value);