in uimafit-core/src/main/java/org/apache/uima/fit/factory/ExternalResourceFactory.java [281:315]
public static ExternalResourceDescription createNamedResourceDescriptionUsingUrl(
final String aName, Class<? extends SharedResourceObject> aInterface, String aUrl,
Object... aParams) {
// Extract ExternalResourceDescriptions from configurationData
List<ExternalResourceBinding> bindings = new ArrayList<ExternalResourceBinding>();
List<ExternalResourceDescription> descs = new ArrayList<ExternalResourceDescription>();
for (Entry<String, ExternalResourceDescription> res : extractResourceParameters(aParams)
.entrySet()) {
bindings.add(createResourceBinding(res.getKey(), res.getValue()));
descs.add(res.getValue());
}
ConfigurationData cfg = ConfigurationParameterFactory.createConfigurationData(aParams);
ResourceMetaData_impl meta = new ResourceMetaData_impl();
ConfigurationData reflectedConfigurationData = createConfigurationData(aInterface);
ResourceCreationSpecifierFactory.setConfigurationParameters(meta,
reflectedConfigurationData.configurationParameters,
reflectedConfigurationData.configurationValues);
ResourceCreationSpecifierFactory.setConfigurationParameters(meta, cfg.configurationParameters,
cfg.configurationValues);
ConfigurableDataResourceSpecifier_impl spec = new ConfigurableDataResourceSpecifier_impl();
spec.setUrl(aUrl);
spec.setMetaData(meta);
ExtendedExternalResourceDescription_impl extRes = new ExtendedExternalResourceDescription_impl();
extRes.setName(aName);
extRes.setResourceSpecifier(spec);
extRes.setImplementationName(aInterface.getName());
extRes.setExternalResourceBindings(bindings);
extRes.setExternalResources(descs);
return extRes;
}