public void initialize() /*throws Exception*/ {
// FIXME : need to catch exceptions since ECS doesn't propagate the throws clause of Initializable
try {
DefaultConfiguration config = null;
// Ensure all system-defined hints exist.
// NOTE : checking this here means they can be user-defined in the sitemap
switch(this.roleId) {
case GENERATOR :
config = new DefaultConfiguration(COMPONENT_NAMES[GENERATOR], "autogenerated");
config.setAttribute("name", "<notifier>");
ensureExists("<notifier>",
org.apache.cocoon.sitemap.NotifyingGenerator.class, config);
config = new DefaultConfiguration(COMPONENT_NAMES[GENERATOR], "autogenerated");
config.setAttribute("name", "<aggregator>");
ensureExists("<aggregator>",
org.apache.cocoon.sitemap.ContentAggregator.class, config);
break;
case TRANSFORMER :
config = new DefaultConfiguration(COMPONENT_NAMES[TRANSFORMER], "autogenerated");
config.setAttribute("name", "<translator>");
ensureExists("<translator>",
org.apache.cocoon.sitemap.LinkTranslator.class, config);
config = new DefaultConfiguration(COMPONENT_NAMES[TRANSFORMER], "autogenerated");
config.setAttribute("name", "<gatherer>");
ensureExists("<gatherer>",
org.apache.cocoon.sitemap.LinkGatherer.class, config);
break;
}