public void configure(StreamableValue config) throws ConfigurationException {
super.configure(config);
MapValueDescriptor mapValueDescriptor = new MapValueDescriptor();
List parameterDescriptorList = new ArrayList();
for ( Iterator i = parameterDescriptions.iterator(); i.hasNext(); ) {
ParameterDescriptor entryDescriptor = (ParameterDescriptor)i.next();
// add all map parameters to optional parameters
if ( entryDescriptor.getName() == FRAGMENT ) {
parameterDescriptorList.add(entryDescriptor);
} else {
if ( entryDescriptor.isRequired() ) {
mapValueDescriptor.addEntryDescriptor(new ParameterDescriptor(entryDescriptor.getName(), new ParameterMessage("templateMapRenderer/mapEntry"), entryDescriptor.getValueDescriptor()));
} else {
mapValueDescriptor.addEntryDescriptor(new ParameterDescriptor(entryDescriptor.getName(), new ParameterMessage("templateMapRenderer/mapEntry"), entryDescriptor.getValueDescriptor(), entryDescriptor.getDefaultValue() ));
parameterDescriptorList.add(new ParameterDescriptor(entryDescriptor.getName(), entryDescriptor.getDescription(), entryDescriptor.getValueDescriptor(), NullValue.NULL));
}
}
}
parameterDescriptorList.add(new ParameterDescriptor(SimpleProcessor.INPUT, new ParameterMessage("templateMapRenderer/input"), mapValueDescriptor));
parameterDescriptors = (ParameterDescriptor[])parameterDescriptorList.toArray(new ParameterDescriptor[parameterDescriptorList.size()]);
}