@SuppressWarnings("unchecked") private void setupReferenceAttribute(FactoryReferenceAttribute<?, ?> referenceAttribute) { Class<?> referenceClass = referenceAttribute.internal_getReferenceClass(); Scope scope = factoryTreeBuilder.getScope(referenceClass); if (scope== Scope.SINGLETON) { referenceAttribute.userNotSelectable(); } // if (scope==Scope.PROTOTYPE) { // referenceAttribute.userNotSelectable(); // } FactoryReferenceAttribute workaround = referenceAttribute; workaround.newValuesProvider(newValuesProvider); }
/** * @param clazz generic type erasure workaround */ public FactoryReferenceAttribute(Class<F> clazz) { setup(clazz); }
if (attribute instanceof FactoryReferenceAttribute){ FactoryReferenceAttribute factoryReferenceAttribute = (FactoryReferenceAttribute) attribute; Class<? extends FactoryBase> clazz = factoryReferenceAttribute.internal_getReferenceClass(); validateAttributeClass(attributeVariableName, clazz); FactoryBase factoryBase = context.get(clazz); factoryReferenceAttribute.set(factoryBase);
public HttpServerConnectorFactory(){ config().setDisplayTextProvider(() -> { String protocol="http"; if (ssl.get()!=null){ protocol="https"; } return protocol+"://"+host.get()+":"+port.get(); }); } }
@Override public HttpServerConnectorCreator createImpl() { return new HttpServerConnectorCreator(host.get(),port.get(),ssl.instance()); } public HttpServerConnectorFactory(){
@Override public ApplicationServerRestClient<VS, RS> createImpl() { return new ApplicationServerRestClient<>(restClient.instance(),factoryRootClass.get(),user.get(),passwordHash.get()); }