@Override public void registerContribution(Object contribution, String extensionPoint, ComponentInstance contributor) { if ("hibernate".equals(extensionPoint)) { registerHibernateContribution((HibernateConfiguration) contribution, contributor.getName()); } }
@Override public int getApplicationStartedOrder() { ComponentInstance repositoryComponent = Framework.getRuntime().getComponentInstance( "org.nuxeo.ecm.core.repository.RepositoryServiceComponent"); if (repositoryComponent == null || repositoryComponent.getInstance() == null) { return super.getApplicationStartedOrder(); } return ((DefaultComponent) repositoryComponent.getInstance()).getApplicationStartedOrder() - 5; }
FlavorDescriptor flavor = (FlavorDescriptor) contribution; log.info(String.format("Register flavor '%s'", flavor.getName())); registerFlavor(flavor, contributor.getContext()); log.info(String.format("Done registering flavor '%s'", flavor.getName())); } else if (contribution instanceof SimpleStyle) { + "point '%s': a compatibility registration was performed but it may not be " + "accurate. Note that the 'flavor' processor should be used with this resource.", style.getName(), contributor.getName(), WR_EX); DeprecationLogger.log(message, "7.4"); Framework.getRuntime().getMessageHandler().addWarning(message); ResourceDescriptor resource = getResourceFromStyle(style); registerResource(resource, contributor.getContext()); log.info(String.format("Done registering style '%s'", style.getName())); } else if (contribution instanceof PageDescriptor) { String message = String.format("Resource '%s' on component %s should now be contributed to extension " + "point '%s': a compatibility registration was performed but it may not be accurate.", resource.getName(), contributor.getName(), WR_EX); DeprecationLogger.log(message, "7.4"); Framework.getRuntime().getMessageHandler().addWarning(message); resource.setUri("/" + path); registerResource(resource, contributor.getContext()); log.info(String.format("Done registering resource '%s'", resource.getName())); } else if (contribution instanceof NegotiationDescriptor) {
@Override public void registerContribution(Object contribution, String extensionPoint, ComponentInstance contributor) { if (EVENT_LISTENER_XP.equals(extensionPoint)) { EventListenerDescriptor descriptor = (EventListenerDescriptor) contribution; descriptor.setRuntimeContext(contributor.getRuntimeContext()); try { service.addEventListener(descriptor); } catch (RuntimeException e) { String msg = "Failed to register event listener in component '" + contributor.getName() + "': error initializing event listener '" + descriptor.getName() + "' (" + e.toString() + ')'; Framework.getRuntime().getMessageHandler().addError(msg); } } else if (EVENT_PIPE_XP.equals(extensionPoint)) { EventPipeDescriptor descriptor = (EventPipeDescriptor) contribution; service.addEventPipe(descriptor); } else if (EVENT_DISPATCHER_XP.equals(extensionPoint)) { EventDispatcherDescriptor descriptor = (EventDispatcherDescriptor) contribution; service.addEventDispatcher(descriptor); } }
@Override public void registerContribution(Object contribution, String extensionPoint, ComponentInstance contributor) { if (XP_SERVLETS.equals(extensionPoint)) { ((ServletDescriptor) contribution).setBundle(contributor.getContext().getBundle()); try { registry.addServlet((ServletDescriptor) contribution); } catch (ServletException | NamespaceException e) { throw new RuntimeException(e); } } else if (XP_FILTERS.equals(extensionPoint)) { registry.addFilterSet((FilterSetDescriptor) contribution); } else if (XP_RESOURCES.equals(extensionPoint)) { ResourcesDescriptor rd = (ResourcesDescriptor) contribution; rd.setBundle(contributor.getContext().getBundle()); registry.addResources(rd); } else if (XP_SUBRESOURCES.equals(extensionPoint)) { ResourceExtension rxt = (ResourceExtension) contribution; rxt.setBundle(contributor.getContext().getBundle()); ApplicationManager.getInstance().getOrCreateApplication(rxt.getApplication()).addExtension(rxt); } }
@Override public void registerContribution(Object contribution, String extensionPoint, ComponentInstance contributor) { if (CHAINS_TO_TYPE_XP.equals(extensionPoint)) { ChainToTypeMappingDescriptor desc = (ChainToTypeMappingDescriptor) contribution; typeToChain.put(desc.getDocumentType(), desc.getChainId()); undoChainIdFromRunning.put(desc.getDocumentType(), desc.getUndoChainIdFromRunning()); undoChainIdFromDone.put(desc.getDocumentType(), desc.getUndoChainIdFromDone()); } else if (PERSISTER_XP.equals(extensionPoint)) { PersisterDescriptor des = (PersisterDescriptor) contribution; try { persister = des.getKlass().newInstance(); } catch (ReflectiveOperationException e) { throw new RuntimeException(e); } } else if (ROUTE_MODELS_IMPORTER_XP.equals(extensionPoint)) { RouteModelResourceType res = (RouteModelResourceType) contribution; registerRouteResource(res, contributor.getRuntimeContext()); } }
service.putOperation(opc.type, opc.replace, contributor.getName().toString(), widgetDefinitionList); } catch (OperationException e) { throw new RuntimeException(e); occ.toOperationChain(contributor.getContext().getBundle()), occ); service.putOperation(docChainType, occ.replace); } catch (OperationException e) {
protected void computeResourceUri(ResourceDescriptor resource, ComponentInstance contributor) { String uri = resource.getURI(); if (uri == null) { // build it from local classpath // XXX: hacky wildcard support String path = resource.getPath(); if (path != null) { boolean hasWildcard = false; if (path.endsWith("*")) { hasWildcard = true; path = path.substring(0, path.length() - 1); } URL url = contributor.getContext().getLocalResource(path); if (url == null) { log.error("Cannot resolve local URL for resource '" + resource.getName() + "' with path '" + resource.getPath() + "'"); } else { String builtUri = url.toString(); if (hasWildcard) { builtUri += "*"; } resource.setURI(builtUri); } } } }
@Override public void registerContribution(Object contribution, String extensionPoint, ComponentInstance contributor) throws Exception { if (EXTENSION_POINTS_SETTERS.equals(extensionPoint)) { DataInheritanceSetterDescriptor setterContribution = (DataInheritanceSetterDescriptor) contribution; Class<?> clazz = setterContribution.getClazz(); if (null != clazz && DataInheritanceSetter.class.isAssignableFrom(clazz)) { DataInheritanceSetter setter = (DataInheritanceSetter) clazz.newInstance(); setterContribution.setSetter(setter); this.settersDescriptors.put(setterContribution.getName(), setterContribution); } else { log.warn("Failed to register the contribution '" + contributor.getName() + "'. Either a null clazz is defined or it doesn't implement the interface 'DataInheritanceSetter'"); } } }
@Override public void unregisterContribution(Object contribution, String extensionPoint, ComponentInstance contributor) { if (XP_SERVLETS.equals(extensionPoint)) { registry.removeServlet((ServletDescriptor) contribution); } else if (XP_FILTERS.equals(extensionPoint)) { registry.removeFilterSet((FilterSetDescriptor) contribution); } else if (XP_RESOURCES.equals(extensionPoint)) { ResourcesDescriptor rd = (ResourcesDescriptor) contribution; rd.setBundle(contributor.getContext().getBundle()); registry.removeResources(rd); } else if (XP_SUBRESOURCES.equals(extensionPoint)) { ResourceExtension rxt = (ResourceExtension) contribution; rxt.setBundle(contributor.getContext().getBundle()); ApplicationManager.getInstance().getOrCreateApplication(rxt.getApplication()).removeExtension(rxt); } }
@Override public int getApplicationStartedOrder() { // should deploy before repository service because the tag service is indirectly used (through a listener) by // the repository init handlers Component component = (Component) Framework.getRuntime() .getComponentInstance( "org.nuxeo.ecm.core.repository.RepositoryServiceComponent") .getInstance(); return component.getApplicationStartedOrder() - 1; }
embeddedServerConfig = serverContrib; log.info("Registering embedded server configuration: " + embeddedServerConfig + ", loaded from " + contributor.getName()); } else if (embeddedServerConfig != null) { log.info("Disabling previous embedded server configuration, deactivated by " + contributor.getName()); embeddedServerConfig = null; idx.merge(previous); indexConfig.put(idx.getName(), idx); log.info("Registering index configuration: " + idx + ", loaded from " + contributor.getName()); } else if (previous != null) { log.info("Disabling index configuration: " + previous + ", deactivated by " + contributor.getName()); indexConfig.remove(idx.getName());
@Override public void registerContribution(Object contribution, String extensionPoint, ComponentInstance contributor) { if (contribution instanceof GwtWarStrategy) { GwtWarStrategy descriptor = (GwtWarStrategy) contribution; resolver.install(descriptor.name, descriptor.strategy); } else if (contribution instanceof GwtWarDirectory) { GwtWarDirectory descriptor = (GwtWarDirectory) contribution; try { resolver.install(descriptor.name, descriptor.dir.toURI()); } catch (IOException cause) { throw new NuxeoException("Cannot install " + descriptor, cause); } } else if (contribution instanceof GwtWarBundle) { GwtWarBundle descriptor = (GwtWarBundle) contribution; URL location = contributor.getContext().getBundle().getEntry(descriptor.pathname); if (location == null) { throw new NuxeoException("Cannot locate GWT " + descriptor + " in " + contributor.getContext().getBundle()); } try { resolver.install(descriptor.name, location.toURI()); } catch (IOException | URISyntaxException cause) { throw new NuxeoException("Cannot install " + descriptor, cause); } } }
@Override public int getApplicationStartedOrder() { ComponentInstance compo = Framework.getRuntime().getComponentInstance("org.nuxeo.ecm.core.work.service"); return compo != null ? ((DefaultComponent) compo.getInstance()).getApplicationStartedOrder() - 1 : -500; }
@Override public void registerContribution(Object contribution, String extensionPoint, ComponentInstance contributor) { if ("configuration".equals(extensionPoint)) { UserRegistrationConfiguration newConfig = (UserRegistrationConfiguration) contribution; if (configurations.containsKey(newConfig.getName())) { if (newConfig.isMerge()) { configurations.get(newConfig.getName()).mergeWith(newConfig); } else if (newConfig.isRemove()) { configurations.remove(newConfig.getName()); } else { log.warn( "Trying to register an existing userRegistration configuration without removing or merging it, in: " + contributor.getName()); } } else { configurations.put(newConfig.getName(), newConfig); } } }
log.debug("New authentication chain powered by " + contributor.getName()); authChain.clear(); authChain.addAll(chainContrib.getPluginsNames());
@Override @SuppressWarnings("deprecation") public void registerContribution(Object contribution, String extensionPoint, ComponentInstance contributor) { if (extensionPoint.equals(EVENT_EXT_POINT)) { doRegisterEvent((EventDescriptor) contribution); } else if (extensionPoint.equals(EXTENDED_INFO_EXT_POINT)) { doRegisterExtendedInfo((ExtendedInfoDescriptor) contribution); } else if (extensionPoint.equals(ADAPTER_POINT)) { doRegisterAdapter((AdapterDescriptor) contribution); } else if (contribution instanceof AuditBackendDescriptor) { backendConfig = (AuditBackendDescriptor) contribution; } else if (contribution instanceof AuditBulkerDescriptor) { bulkerConfig = (AuditBulkerDescriptor) contribution; String message = String.format( "AuditBulker on component %s is deprecated because it is now handled with nuxeo-stream, no replacement.", contributor.getName()); DeprecationLogger.log(message, "10.10"); Framework.getRuntime().getMessageHandler().addWarning(message); } else if (contribution instanceof AuditStorageDescriptor) { AuditStorageDescriptor auditStorageDesc = (AuditStorageDescriptor) contribution; auditStorageDescriptors.put(auditStorageDesc.getId(), auditStorageDesc); } }
"Versioning rule for '%s' on component %s should now be contributed to extension points '%s', " + "'%s' and '%s': a compatibility registration was performed but it may not be accurate.", (rule).getTypeName(), contributor.getName(), VERSIONING_POLICY_XP, VERSIONING_FILTER_XP, VERSIONING_RESTRICTION_XP); DeprecationLogger.log(message, "9.1"); String message = String.format("Default versioning rule on component %s should now be contributed to " + "extension points '%s' and '%s': a compatibility registration was performed but it may not be " + "accurate.", contributor.getName(), VERSIONING_POLICY_XP, VERSIONING_RESTRICTION_XP); DeprecationLogger.log(message, "9.1"); Framework.getRuntime().getMessageHandler().addWarning(message);