if (p.getName().equals(name)) { p.setValue((String) value); found = true; System.arraycopy(spec.getParameters(), 0, params, 0, spec.getParameters().length); params[params.length - 1] = new Parameter_impl(); params[params.length - 1].setName(name); params[params.length - 1].setValue((String) value); spec.setParameters(params);
/** * Initialize a component from a {@link CustomResourceSpecifier}. * * @param component * the component to initialize. * @param parameters * a list of parameters. * @see #initialize(Object, UimaContext) * @throws ResourceInitializationException * if a failure occurs during initialization. */ public static void initialize(Object component, Parameter... parameters) throws ResourceInitializationException { Map<String, Object> params = new HashMap<String, Object>(); for (Parameter p : parameters) { params.put(p.getName(), p.getValue()); } initialize(component, params); }
/** * Fetches the parameter settings from the given resource specifier. * * @param spec * a resource specifier. * @return the parameter settings. */ public static Map<String, Object> getParameterSettings(ResourceSpecifier spec) { Map<String, Object> settings = new HashMap<String, Object>(); if (spec instanceof CustomResourceSpecifier) { for (Parameter p : ((CustomResourceSpecifier) spec).getParameters()) { settings.put(p.getName(), p.getValue()); } } else if (spec instanceof ResourceCreationSpecifier) { for (NameValuePair p : ((ResourceCreationSpecifier) spec).getMetaData() .getConfigurationParameterSettings().getParameterSettings()) { settings.put(p.getName(), p.getValue()); } } else if (spec instanceof ConfigurableDataResourceSpecifier) { for (NameValuePair p : ((ResourceCreationSpecifier) spec).getMetaData() .getConfigurationParameterSettings().getParameterSettings()) { settings.put(p.getName(), p.getValue()); } } else { throw new IllegalClassException("Unsupported resource specifier class [" + spec.getClass() + "]"); } return settings; }
@Override public boolean initialize(ResourceSpecifier aSpecifier, Map<String, Object> aAdditionalParams) throws ResourceInitializationException { if (!super.initialize(aSpecifier, aAdditionalParams)) { return false; } // Create synthetic context to be able to use InitializeUtil. UimaContextAdmin context = UIMAFramework.newUimaContext(UIMAFramework.getLogger(), UIMAFramework.newDefaultResourceManager(), UIMAFramework.newConfigurationManager()); ConfigurationManager cfgMgr = context.getConfigurationManager(); cfgMgr.setSession(context.getSession()); CustomResourceSpecifier spec = (CustomResourceSpecifier) aSpecifier; for (Parameter p : spec.getParameters()) { cfgMgr.setConfigParameterValue(context.getQualifiedContextName() + p.getName(), p .getValue()); } ConfigurationParameterInitializer.initialize(this, context); return true; }
@Override public boolean initialize(ResourceSpecifier aSpecifier, Map<String, Object> aAdditionalParams) throws ResourceInitializationException { if (!super.initialize(aSpecifier, aAdditionalParams)) { return false; } // Create synthetic context to be able to use InitializeUtil. UimaContextAdmin context = UIMAFramework.newUimaContext(UIMAFramework.getLogger(), UIMAFramework.newDefaultResourceManager(), UIMAFramework.newConfigurationManager()); ConfigurationManager cfgMgr = context.getConfigurationManager(); cfgMgr.setSession(context.getSession()); CustomResourceSpecifier spec = (CustomResourceSpecifier) aSpecifier; for (Parameter p : spec.getParameters()) { cfgMgr.setConfigParameterValue(context.getQualifiedContextName() + p.getName(), p .getValue()); } ConfigurationParameterInitializer.initialize(this, context); return true; }