@Override protected boolean readElement(IConfigurationElement element) { if (TAG_NAVIGATOR_CONTENT.equals(element.getName())) { String id = element.getAttribute(ATT_ID); if (id != null) { NavigatorContentDescriptor contentDescriptor = CONTENT_DESCRIPTOR_MANAGER.getContentDescriptor(id); if (contentDescriptor != null) { IConfigurationElement[] children = element.getChildren(TAG_COMMON_SORTER); if (children.length > 0) { Set<CommonSorterDescriptor> localSorters = getCommonSorters(contentDescriptor); for (int i = 0; i < children.length; i++) { localSorters.add(new CommonSorterDescriptor(children[i])); } return true; } } else { NavigatorPlugin.logError( 0, NLS.bind( CommonNavigatorMessages .CommonSorterDescriptorManager_A_navigatorContent_extension_does_n_, new Object[] {id, element.getDeclaringExtension().getNamespaceIdentifier()}), null); } } else { NavigatorPlugin.logError( 0, NLS.bind( CommonNavigatorMessages .CommonSorterDescriptorManager_A_navigatorContent_extension_in_0_, element.getNamespaceIdentifier()), null); } } return super.readElement(element); }
private void addCommonWizardDescriptor(CommonWizardDescriptor aDesc) { if (aDesc == null) { return; } else if (aDesc.getWizardId() == null) { NavigatorPlugin.logError( 0, "A null wizardId was supplied for a commonWizard in " + aDesc.getNamespace(), null); //$NON-NLS-1$ } synchronized (commonWizardDescriptors) { Set descriptors = (Set) commonWizardDescriptors.get(aDesc.getType()); if (descriptors == null) { commonWizardDescriptors.put(aDesc.getType(), descriptors = new HashSet()); } if (!descriptors.contains(aDesc)) { descriptors.add(aDesc); } } }