@Override public void unregisterResource(String shortName, String qualifiedName) { resourcesRegistry.doUnregisterResource(qualifiedName); if (shortName != null) { shortcutsRegistry.doUnregisterShortcut(shortName); } }
@Override public void start(ComponentContext context) { started = true; factoriesRegistry.doRegisterResources(); doBindResources(); }
protected void doRegisterResource(String qualifiedName, Class<?> info, Object instance) { Resource resource = new Resource(ObjectNameFactory.getObjectName(qualifiedName), info, instance); doRegisterResource(resource); }
protected Resource doResolveServiceDescriptor(ServiceDescriptor descriptor) { Class<?> resourceClass = descriptor.getResourceClass(); Object resourceInstance = doResolveService(resourceClass, descriptor); ObjectName managementName = doResolveServiceName(descriptor); Class<?> ifaceClass = descriptor.getIfaceClass(); Class<?> managementClass = ifaceClass != null ? ifaceClass : resourceClass; return new Resource(managementName, managementClass, resourceInstance); }
protected void doRegisterResource(ServiceDescriptor descriptor) { Resource resource = doResolveServiceDescriptor(descriptor); doRegisterResource(resource); String shortName = descriptor.getName(); if (StringUtils.isNotEmpty(shortName)) { shortcutsRegistry.doRegisterShortcut(shortName, resource.getManagementName()); } }
protected ObjectName doResolveServiceName(ServiceDescriptor descriptor) { String qualifiedName = descriptor.getName(); if (qualifiedName == null) { qualifiedName = ObjectNameFactory.getQualifiedName(descriptor.getResourceClass().getCanonicalName()); } return ObjectNameFactory.getObjectName(qualifiedName); }
protected void doUnregisterResource(ServiceDescriptor descriptor) { ObjectName objectName = doResolveServiceName(descriptor); doUnregisterResource(objectName); String shortName = descriptor.getName(); if (StringUtils.isNotEmpty(shortName)) { shortcutsRegistry.unregisterShortcut(shortName); } }
protected void doUnregisterResource(String qualifiedName) { ObjectName objectName = ObjectNameFactory.getObjectName(qualifiedName); doUnregisterResource(objectName); }
public static String formatShortName(String name) { ObjectName objectName = getObjectName(name); return formatShortName(objectName); }
@Override public void unregisterContribution(Object contribution, String extensionPoint, ComponentInstance contributor) { if (extensionPoint.equals(SERVICES_EXT_KEY)) { resourcesRegistry.doUnregisterResource((ServiceDescriptor) contribution); } else if (extensionPoint.equals(FACTORIES_EXT_KEY)) { factoriesRegistry.doUnregisterFactory((ResourceFactoryDescriptor) contribution); } else if (extensionPoint.equals(SHORTCUTS_EXT_KEY)) { shortcutsRegistry.doUnregisterShortcut((ShortcutDescriptor) contribution); } }
@Override public void registerContribution(Object contribution, String extensionPoint, ComponentInstance contributor) { if (extensionPoint.equals(SERVICES_EXT_KEY)) { resourcesRegistry.doRegisterResource((ServiceDescriptor) contribution); } else if (extensionPoint.equals(FACTORIES_EXT_KEY)) { factoriesRegistry.doRegisterFactory((ResourceFactoryDescriptor) contribution); } else if (extensionPoint.equals(SHORTCUTS_EXT_KEY)) { shortcutsRegistry.doRegisterShortcut((ShortcutDescriptor) contribution); } }
public static ObjectName getObjectName(String name) { String qualifiedName = getQualifiedName(name); try { return new ObjectName(qualifiedName); } catch (JMException e) { throw ManagementRuntimeException.wrap(name + " is not correct", e); } }
@Override public void registerResource(String shortName, String qualifiedName, Class<?> managementClass, Object instance) { resourcesRegistry.doRegisterResource(qualifiedName, managementClass, instance); if (shortName != null) { shortcutsRegistry.doRegisterShortcut(shortName, qualifiedName); } }
protected void doUnregisterShortcut(ShortcutDescriptor descriptor) { doUnregisterShortcut(descriptor.getShortName()); }
public static String getQualifiedName(String name) { String qualifiedName = name; if (!hasAttributeValueAssertion(qualifiedName)) { qualifiedName = NUXEO_DOMAIN_NAME + ":name=" + name + ",type=service"; } else if (!hasDomain(qualifiedName)) { qualifiedName = NUXEO_DOMAIN_NAME + ":" + qualifiedName; } return qualifiedName; }
@Override public void stop(ComponentContext context) { started = false; doUnbindResources(); }
@Override public void deactivate(ComponentContext context) { resourcesRegistry.doUnregisterResources(); }
protected void bindForTest(MBeanServer server, ObjectName name, Object instance, Class<?> clazz) throws JMException, InvalidTargetObjectTypeException { resourcesRegistry.doBind(server, name, instance, clazz); }
public static ObjectName getObjectName(String name, String avas) { String qualifiedName = getQualifiedName(name) + "," + avas; try { return new ObjectName(qualifiedName); } catch (JMException e) { throw ManagementRuntimeException.wrap(name + " is not correct", e); } }
@Override public void unbindResources() { doUnbindResources(); }