On Mon, Sep 27, 2010 at 1:15 AM, Milinda Pathirage <[email protected]> wrote:
> Ran the FindBugs, no bugs were found on latest modifications. Milinda, Can there be bugs in your code that FindBugs cannot find? /sumedha > > Thanks > Milinda > > > On Mon, Sep 27, 2010 at 10:39 AM, Afkham Azeez <[email protected]> wrote: > >> Milinda, >> Did you run FindBugs on the modified code before committing? >> >> Azeez >> >> >> >> On Mon, Sep 27, 2010 at 9:07 AM, <[email protected]> wrote: >> >>> Author: milinda >>> Date: Sun Sep 26 20:37:43 2010 >>> New Revision: 74208 >>> URL: http://wso2.org/svn/browse/wso2?view=rev&revision=74208 >>> >>> Log: >>> Some minor refactorings to TenantProcesStoreImpl >>> >>> Modified: >>> >>> trunk/carbon/components/bpel/org.wso2.carbon.bpel/src/main/java/org/wso2/carbon/bpel/ode/integration/store/TenantProcessStoreImpl.java >>> >>> Modified: >>> trunk/carbon/components/bpel/org.wso2.carbon.bpel/src/main/java/org/wso2/carbon/bpel/ode/integration/store/TenantProcessStoreImpl.java >>> URL: >>> http://wso2.org/svn/browse/wso2/trunk/carbon/components/bpel/org.wso2.carbon.bpel/src/main/java/org/wso2/carbon/bpel/ode/integration/store/TenantProcessStoreImpl.java?rev=74208&r1=74207&r2=74208&view=diff >>> >>> ============================================================================== >>> --- >>> trunk/carbon/components/bpel/org.wso2.carbon.bpel/src/main/java/org/wso2/carbon/bpel/ode/integration/store/TenantProcessStoreImpl.java >>> (original) >>> +++ >>> trunk/carbon/components/bpel/org.wso2.carbon.bpel/src/main/java/org/wso2/carbon/bpel/ode/integration/store/TenantProcessStoreImpl.java >>> Sun Sep 26 20:37:43 2010 >>> @@ -114,39 +114,30 @@ >>> >>> parentProcessStore.getLocalProcessStoreRootDirectory(), >>> deploymentUnit, >>> versionForThisDeployment); >>> + boolean isExistingPackage = >>> repository.isExistingBPELPackage(deploymentContext); >>> >>> - if (repository.isExistingBPELPackage(deploymentContext)) { >>> + if (isExistingPackage) { >>> if (repository.isBPELPackageReload(deploymentContext)) { >>> - BPELPackageInfo bpelPackage = >>> repository.getBPELPackageInfo(deploymentContext); >>> - for (String packageName : >>> bpelPackage.getAvailableVersions()) { >>> - loadExistingBPELPackage(packageName); >>> - } >>> - return; // Once we finish reloading exit from this >>> deployment >>> + reloadAllVersionsOfBPELPackage(deploymentContext); >>> + return; // Once we finish reloading exit from the normal >>> flow. >>> } // Else this is a update of existing BPEL package >>> } >>> >>> try { >>> Utils.extractBPELArchive(deploymentContext); >>> } catch (Exception e) { >>> - String logMessage = "Error extracting BPEL archive " + >>> deploymentUnit + "."; >>> - deploymentContext.setDeploymentFailureCause(logMessage); >>> - >>> repository.handleBPELPackageDeploymentError(deploymentContext); >>> - log.error(logMessage, e); >>> - return; >>> + onBPELArchiveExtractionError(deploymentContext, e); >>> + return; // Exist from the normal flow on extration error. >>> } >>> >>> if >>> (!validateBPELPackage(deploymentContext.getBpelPackageLocationInFileSystem())) >>> { >>> - String logMessage = "BPEL Package format issue. Cannot find >>> deploy.xml in BPEL archive " >>> - + deploymentContext.getArchiveName() + "."; >>> - deploymentContext.setDeploymentFailureCause(logMessage); >>> - >>> repository.handleBPELPackageDeploymentError(deploymentContext); >>> - log.error(logMessage); >>> - return; >>> + onBPELPackageValidationError(deploymentContext); >>> + return; // Exist from the normal flow on BPEL package >>> validation error. >>> } >>> >>> deployBPELPackageInODE(deploymentContext); >>> >>> - if (repository.isExistingBPELPackage(deploymentContext)) { >>> + if (isExistingPackage) { >>> repository.handleBPELPackageUpdate(deploymentContext); >>> } else { >>> repository.handleNewBPELPackageAddition(deploymentContext); >>> @@ -154,6 +145,127 @@ >>> >>> } >>> >>> + public void undeploy(String bpelPackageName) { >>> + parentProcessStore.preBPELPackageUndeployment(bpelPackageName); >>> + >>> + String locationInRegistry = Constants.REG_PATH_OF_BPEL_PACKAGES >>> + "/" + bpelPackageName; >>> + try { >>> + if (tenantConfigRegistry.resourceExists(locationInRegistry)) >>> { >>> + tenantConfigRegistry.delete(locationInRegistry); >>> + } else { >>> + log.warn("BPEL Package " + bpelPackageName + " does not >>> exist in the registry."); >>> + } >>> + } catch (RegistryException e) { >>> + //String logMessage = "" >>> + log.error("Error occurred while removing BPEL package " + >>> bpelPackageName >>> + + " from registry."); >>> + } >>> + >>> + Collection<QName> undeployed = Collections.emptyList(); >>> + >>> + DeploymentUnitDir du = deploymentUnits.remove(bpelPackageName); >>> + if (du != null) { >>> + long version = du.getVersion(); >>> + for (QName name : du.getProcessNames()) { >>> + undeployed.add(Utils.toPid(name, version)); >>> + } >>> + } >>> + >>> + parentProcessStore.postBPELPackageUndeployment(tenantId, >>> bpelPackageName, undeployed); >>> + >>> + } >>> + >>> + public void dehydrate() { >>> + } >>> + >>> + public void hydrate() { >>> + } >>> + >>> + public ProcessConf getProcessConfiguration(QName pid) { >>> + return processes.get(pid); >>> + } >>> + >>> + public void setState(QName pid, ProcessState processState) { >>> + if (!processes.containsKey(pid)) { >>> + String errMsg = "Process " + pid + " not found."; >>> + log.error(errMsg); >>> + throw new ContextException(errMsg); >>> + } >>> + >>> + if (processState == null) { >>> + String errMessage = "Process State cannot be null."; >>> + log.error(errMessage); >>> + throw new ContextException(errMessage); >>> + } >>> + >>> + parentProcessStore.setState(pid, processState); >>> + } >>> + >>> + public ConfigurationContext getTenantConfigContext() { >>> + return tenantConfigContext; >>> + } >>> + >>> + public Integer getTenantId() { >>> + return tenantId; >>> + } >>> + >>> + public Map<QName, ProcessConfigurationImpl> getProcesses() { >>> + return processes; >>> + } >>> + >>> + public List<QName> getProcessesInPackage(String packageName) { >>> + return processesInDeploymentUnit.get(packageName); >>> + } >>> + >>> + /** >>> + * Log and store the information to registry on BPEL archive >>> extraction error. >>> + * @param deploymentContext information about current deployment >>> + * @param e exception thrown by extraction utility >>> + * @throws RegistryException on error accessing registry for >>> persisting information. >>> + */ >>> + private void onBPELArchiveExtractionError(BPELDeploymentContext >>> deploymentContext, Exception e) >>> + throws RegistryException { >>> + String logMessage = "Error extracting BPEL archive " + >>> deploymentContext.getBpelArchive() >>> + + "."; >>> + deploymentContext.setDeploymentFailureCause(logMessage); >>> + repository.handleBPELPackageDeploymentError(deploymentContext); >>> + log.error(logMessage, e); >>> + } >>> + >>> + /** >>> + * Log and store the information to registry on BPEL package >>> validation error. >>> + * @param deploymentContext information about current deployment >>> + * @throws RegistryException on error accessing registry for >>> persisting information. >>> + */ >>> + private void onBPELPackageValidationError(BPELDeploymentContext >>> deploymentContext) >>> + throws RegistryException { >>> + String logMessage = "BPEL Package format issue. Cannot find >>> deploy.xml in BPEL archive " >>> + + deploymentContext.getArchiveName() + "."; >>> + deploymentContext.setDeploymentFailureCause(logMessage); >>> + repository.handleBPELPackageDeploymentError(deploymentContext); >>> + log.error(logMessage); >>> + } >>> + >>> + /** >>> + * Reload old versions of BPEL package. This is used to handle >>> restart of BPEL server. >>> + * At restart based on the last modifed time of the BPEL archives >>> we'll reload all the versions >>> + * of that BPEL archive. >>> + * @param deploymentContext information about current deployment >>> + * @throws RegistryException on error loading resources from >>> registry. >>> + */ >>> + private void reloadAllVersionsOfBPELPackage(BPELDeploymentContext >>> deploymentContext) >>> + throws RegistryException { >>> + BPELPackageInfo bpelPackage = >>> repository.getBPELPackageInfo(deploymentContext); >>> + for (String packageName : bpelPackage.getAvailableVersions()) { >>> + loadExistingBPELPackage(packageName); >>> + } >>> + } >>> + >>> + /** >>> + * Deploy BPEL package in ODE and add process configuration objects >>> to necessary maps in process >>> + * store. >>> + * @param deploymentData information about current deployment >>> + */ >>> private void deployBPELPackageInODE(BPELDeploymentContext >>> deploymentData) { >>> File bpelPackage = new >>> File(deploymentData.getBpelPackageLocationInFileSystem()); >>> log.info("Strating deployment of processes from directory " >>> @@ -344,6 +456,8 @@ >>> * there's already version 2 than regexp >>> * "AbsenceRequest([-\\.](\d)+)?/AbsenceRequest.ode" will be matched >>> against >>> * "AbsenceRequest-2/AbsenceRequest.ode" and setRetirePackage() will >>> be called accordingly. >>> + * >>> + * @param du DeploymentUnitDir object containing in-memory >>> representation of BPEL package.Ê >>> */ >>> private void retirePreviousPackageVersions(DeploymentUnitDir du) { >>> //retire all the other versions of the same DU >>> @@ -378,94 +492,4 @@ >>> } >>> >>> >>> - /** >>> - * Return Registry resource if it exists and null if doesn't. >>> - * >>> - * @param bpelArchiveResourceLocation Location of the BPEL archive >>> resource in registry >>> - * @return Resource or null >>> - */ >>> - private Resource getExistingBPELArchiveResource(String >>> bpelArchiveResourceLocation) { >>> - >>> - try { >>> - if >>> (tenantConfigRegistry.resourceExists(bpelArchiveResourceLocation)) { >>> - return >>> tenantConfigRegistry.get(bpelArchiveResourceLocation); >>> - } >>> - } catch (RegistryException e) { >>> - log.error("Error accessing registry to check for existing >>> BPEL archives.", e); >>> - } >>> - return null; >>> - } >>> - >>> - public void undeploy(String bpelPackageName) { >>> - parentProcessStore.preBPELPackageUndeployment(bpelPackageName); >>> - >>> - String locationInRegistry = Constants.REG_PATH_OF_BPEL_PACKAGES >>> + "/" + bpelPackageName; >>> - try { >>> - if (tenantConfigRegistry.resourceExists(locationInRegistry)) >>> { >>> - tenantConfigRegistry.delete(locationInRegistry); >>> - } else { >>> - log.warn("BPEL Package " + bpelPackageName + " does not >>> exist in the registry."); >>> - } >>> - } catch (RegistryException e) { >>> - //String logMessage = "" >>> - log.error("Error occurred while removing BPEL package " + >>> bpelPackageName >>> - + " from registry."); >>> - } >>> - >>> - Collection<QName> undeployed = Collections.emptyList(); >>> - >>> - DeploymentUnitDir du = deploymentUnits.remove(bpelPackageName); >>> - if (du != null) { >>> - long version = du.getVersion(); >>> - for (QName name : du.getProcessNames()) { >>> - undeployed.add(Utils.toPid(name, version)); >>> - } >>> - } >>> - >>> - parentProcessStore.postBPELPackageUndeployment(tenantId, >>> bpelPackageName, undeployed); >>> - >>> - } >>> - >>> - public void dehydrate() { >>> - } >>> - >>> - public void hydrate() { >>> - } >>> - >>> - public ProcessConf getProcessConfiguration(QName pid) { >>> - return processes.get(pid); >>> - } >>> - >>> - public void setState(QName pid, ProcessState processState) { >>> - if (!processes.containsKey(pid)) { >>> - String errMsg = "Process " + pid + " not found."; >>> - log.error(errMsg); >>> - throw new ContextException(errMsg); >>> - } >>> - >>> - if (processState == null) { >>> - String errMessage = "Process State cannot be null."; >>> - log.error(errMessage); >>> - throw new ContextException(errMessage); >>> - } >>> - >>> - parentProcessStore.setState(pid, processState); >>> - } >>> - >>> - public ConfigurationContext getTenantConfigContext() { >>> - return tenantConfigContext; >>> - } >>> - >>> - public Integer getTenantId() { >>> - return tenantId; >>> - } >>> - >>> - public Map<QName, ProcessConfigurationImpl> getProcesses() { >>> - return processes; >>> - } >>> - >>> - public List<QName> getProcessesInPackage(String packageName) { >>> - return processesInDeploymentUnit.get(packageName); >>> - } >>> - >>> } >>> >>> >>> _______________________________________________ >>> Carbon-commits mailing list >>> [email protected] >>> https://wso2.org/cgi-bin/mailman/listinfo/carbon-commits >>> >>> >> >> >> -- >> *Afkham Azeez* >> Senior Software Architect & Senior Manager; WSO2, Inc.; http://wso2.com, >> * >> * >> *Member; Apache Software Foundation; >> **http://www.apache.org/*<http://www.apache.org/> >> * >> email: **[email protected]* <[email protected]>* cell: +94 77 3320919 >> blog: **http://blog.afkham.org* <http://blog.afkham.org>* >> twitter: **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> >> * >> linked-in: **http://lk.linkedin.com/in/afkhamazeez* >> * >> * >> *Lean . Enterprise . Middleware* >> >> > > > -- > Milinda Pathirage > Technical Lead and Product Manager, Business Process Server - WSO2 Inc; > http://wso2.com > Blog: http://blog.mpathirage.com > > Lean Enterprise Middleware > > _______________________________________________ > Carbon-dev mailing list > [email protected] > https://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev > >
_______________________________________________ Carbon-dev mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev
