private IPortTemplateDesc addConfig(final IConfigurationElement element) {
   if (element.getName().equals(CodeGeneratorPortTemplatesRegistry.ATTR_TEMPLATE)) {
     final PortTemplateDescriptor desc = new PortTemplateDescriptor(element);
     if (!this.templateMap.containsKey(desc.getId())) {
       this.templateMap.put(desc.getId(), desc);
       final String[] ifaces = desc.getInterfaces();
       for (final String i : ifaces) {
         if (i == null) {
           continue;
         }
         Set<String> ids = this.repToIdMap.get(i);
         if (ids == null) {
           ids = new HashSet<String>();
           this.repToIdMap.put(i, ids);
         }
         ids.add(desc.getId());
       }
       return desc;
     } else {
       RedhawkCodegenActivator.logError(
           "Duplicate Code Generator registered with an ID of: " + desc.getId(), null);
     }
   }
   return null;
 }
 private ITemplateDesc addConfig(final IConfigurationElement element) {
   if (element.getName().equals(CodeGeneratorTemplatesRegistry.ATTR_TEMPLATE)) {
     final TemplateDescriptor desc = new TemplateDescriptor(element);
     if (!this.templateMap.containsKey(desc.getId())) {
       this.templateMap.put(desc.getId(), desc);
       final String lang = desc.getCodegenId();
       Set<String> ids = this.codegenToIdMap.get(lang);
       if (ids == null) {
         ids = new HashSet<String>();
         this.codegenToIdMap.put(lang, ids);
       }
       ids.add(desc.getId());
       return desc;
     } else {
       RedhawkCodegenActivator.logError(
           "Duplicate Code Generator registered with an ID of: " + desc.getId(), null);
     }
   }
   return null;
 }