private boolean isConfigRegistryReadOnly() { RegistryContext context = tenantConfigRegistry.getRegistryContext(); try { if (context != null) { return context.isReadOnly(); } } catch (Exception e) { log.error("An error occurred while obtaining registry instance", e); } return false; }
/** * Function to check whether this nos node is manager node by checking registry read/write ability * * @return true if this is manager node, false otherwise */ private boolean isManagerNode() { try { //get config registry of super tenant Registry configRegistry = BPELServiceComponent.getRegistryService().getConfigSystemRegistry( MultitenantConstants.SUPER_TENANT_ID); RegistryContext registryContext = configRegistry.getRegistryContext(); if (registryContext != null) { return !registryContext.isReadOnly(); } } catch (RegistryException e) { log.error("Error occurred while retrieving config registry", e); } return false; }
/** * At bpel package undeployment, remove the entires created in registry corresponding to the given BPEL package * @param packageName * @throws RegistryException */ public void handleBPELPackageUndeploy(String packageName) throws RegistryException { try { String packageLocation = BPELPackageRepositoryUtils.getResourcePathForBPELPackage(packageName); if (!configRegistry.getRegistryContext().isReadOnly() && configRegistry.resourceExists(packageLocation)) { configRegistry.delete(packageLocation); } else { throw new IllegalAccessException(); } } catch (RegistryException re) { String errMessage = "Unable to access registry for handling BPEL package " + "undeployment for Package: " + packageName; log.error(errMessage, re); throw re; } catch (IllegalAccessException e) { log.error("Trying to update a Read-only registry", e); } }
String tempResourcePath = "/governance/lcm/" + UUIDGenerator.generateUUID(); for (String aspectToAdd : aspectsToAdd) { if (systemRegistry.getRegistryContext().isReadOnly()) { lifecycleAspectsToAdd.add(aspectToAdd); continue;