@Override public void start(ComponentContext context) { replacersReg.dumpReplacerMap(); }
@Override public void registerContribution(Object contribution, String extensionPoint, ComponentInstance contributor) { if (PROVIDER_EP.equals(extensionPoint)) { PageProviderDefinition desc = (PageProviderDefinition) contribution; registerPageProviderDefinition(desc); } else if (REPLACER_EP.equals(extensionPoint)) { PageProviderClassReplacerDefinition desc = (PageProviderClassReplacerDefinition) contribution; replacersReg.addContribution(desc); } }
protected PageProvider<?> newCoreQueryPageProviderInstance(String name) { PageProvider<?> ret; Class<? extends PageProvider<?>> klass = replacersReg.getClassForPageProvider(name); if (klass == null) { ret = new CoreQueryDocumentPageProvider(); } else { ret = newPageProviderInstance(name, klass); } return ret; }
@Override public void contributionUpdated(String id, PageProviderClassReplacerDefinition desc, PageProviderClassReplacerDefinition newOrigContrib) { String name = desc.getPageProviderClassName(); if (name == null) { log.error("Cannot register page provider class replacer without class name"); return; } if (!desc.isEnabled()) { return; } log.debug("Registering page provider class replacer using " + name); Class<? extends PageProvider<?>> klass = getPageProviderClass(desc.getPageProviderClassName()); for (String providerName : desc.getPageProviderNames()) { replacerMap.put(providerName, klass); } }