Class ApplicationInstaller
- java.lang.Object
-
- org.bonitasoft.engine.api.impl.application.installer.ApplicationInstaller
-
@Component @ConditionalOnSingleCandidate(ApplicationInstaller.class) public class ApplicationInstaller extends java.lang.Object
Main entry point to deploy anApplicationArchive.- Author:
- Baptiste Mesta., Danila Mazour, Haroun El Alami
-
-
Constructor Summary
Constructors Constructor Description ApplicationInstaller(InstallationService installationService, BusinessDataModelRepository bdmRepository, UserTransactionService transactionService, java.lang.Long tenantId, SessionAccessor sessionAccessor, SessionService sessionService, TenantStateManager tenantStateManager, BusinessArchiveArtifactsManager businessArchiveArtifactsManager, ApplicationImporter applicationImporter)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.LongdeployProcess(org.bonitasoft.engine.bpm.bar.BusinessArchive businessArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult)voiddisableOldProcesses(java.util.List<java.lang.Long> installedProcessIds, org.bonitasoft.engine.api.result.ExecutionResult executionResult)voidenableResolvedProcesses(java.util.List<java.lang.Long> processDefinitionIds, org.bonitasoft.engine.api.result.ExecutionResult executionResult)protected SPlatformUpdateBuildergetPlatformUpdateBuilder()<T> TinSession(java.util.concurrent.Callable<T> callable)voidinstall(ApplicationArchive applicationArchive)protected java.util.List<java.lang.Long>installArtifacts(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult)protected java.lang.StringinstallBusinessDataModel(byte[] zip)protected voidinstallBusinessDataModel(ApplicationArchive applicationArchive)protected voidinstallLivingApplications(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult, org.bonitasoft.engine.business.application.ApplicationImportPolicy policy)protected voidinstallOrganization(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult)protected voidinstallOrUpdateLayouts(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult)protected voidinstallOrUpdatePages(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult)protected voidinstallOrUpdateRestApiExtensions(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult)protected voidinstallOrUpdateThemes(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult)protected java.util.List<java.lang.Long>installProcesses(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult)protected voidinstallUnitPage(java.io.File pageFile, java.lang.String precisePageType, org.bonitasoft.engine.api.result.ExecutionResult executionResult)From the Engine perspective, all custom pages, layouts, themes, custom Rest APIs are of typePageprotected <T> TinTransaction(java.util.concurrent.Callable<T> callable)voidpauseTenantInSession()voidresumeTenantInSession()protected voiduninstallBusinessDataModel()voidupdate(ApplicationArchive applicationArchive)voidupdateApplicationVersion(java.lang.String version)protected java.util.List<java.lang.Long>updateArtifacts(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult)protected java.lang.StringupdateBusinessDataModel(ApplicationArchive applicationArchive)voidupdateConfiguration(java.io.File configurationFileArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult)Update configuration with the given bconf fileprotected voidupdateOrganization(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult)
-
-
-
Constructor Detail
-
ApplicationInstaller
public ApplicationInstaller(InstallationService installationService, @Qualifier("businessDataModelRepository") BusinessDataModelRepository bdmRepository, UserTransactionService transactionService, @Value("${tenantId}") java.lang.Long tenantId, SessionAccessor sessionAccessor, SessionService sessionService, TenantStateManager tenantStateManager, @Qualifier("dependencyResolver") BusinessArchiveArtifactsManager businessArchiveArtifactsManager, ApplicationImporter applicationImporter)
-
-
Method Detail
-
install
public void install(ApplicationArchive applicationArchive) throws org.bonitasoft.engine.exception.ApplicationInstallationException
- Throws:
org.bonitasoft.engine.exception.ApplicationInstallationException
-
installArtifacts
protected java.util.List<java.lang.Long> installArtifacts(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult) throws java.lang.Exception
- Throws:
java.lang.Exception
-
update
public void update(ApplicationArchive applicationArchive) throws org.bonitasoft.engine.exception.ApplicationInstallationException
- Throws:
org.bonitasoft.engine.exception.ApplicationInstallationException
-
resumeTenantInSession
public void resumeTenantInSession() throws java.lang.Exception- Throws:
java.lang.Exception
-
pauseTenantInSession
public void pauseTenantInSession() throws java.lang.Exception- Throws:
java.lang.Exception
-
updateArtifacts
protected java.util.List<java.lang.Long> updateArtifacts(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult) throws java.lang.Exception
- Throws:
java.lang.Exception
-
updateApplicationVersion
public void updateApplicationVersion(java.lang.String version) throws org.bonitasoft.platform.exception.PlatformException- Throws:
org.bonitasoft.platform.exception.PlatformException
-
getPlatformUpdateBuilder
protected SPlatformUpdateBuilder getPlatformUpdateBuilder()
-
disableOldProcesses
public void disableOldProcesses(java.util.List<java.lang.Long> installedProcessIds, org.bonitasoft.engine.api.result.ExecutionResult executionResult) throws org.bonitasoft.engine.exception.SearchException, SBonitaException, org.bonitasoft.engine.bpm.process.ProcessDefinitionNotFoundException- Throws:
org.bonitasoft.engine.exception.SearchExceptionSBonitaExceptionorg.bonitasoft.engine.bpm.process.ProcessDefinitionNotFoundException
-
enableResolvedProcesses
public void enableResolvedProcesses(java.util.List<java.lang.Long> processDefinitionIds, org.bonitasoft.engine.api.result.ExecutionResult executionResult) throws org.bonitasoft.engine.bpm.process.ProcessDeployException- Throws:
org.bonitasoft.engine.bpm.process.ProcessDeployException
-
installOrganization
protected void installOrganization(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult) throws java.lang.Exception
- Throws:
java.lang.Exception
-
updateOrganization
protected void updateOrganization(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult) throws java.lang.Exception
- Throws:
java.lang.Exception
-
installBusinessDataModel
protected void installBusinessDataModel(ApplicationArchive applicationArchive) throws java.lang.Exception
- Throws:
java.lang.Exception
-
updateBusinessDataModel
protected java.lang.String updateBusinessDataModel(ApplicationArchive applicationArchive) throws org.bonitasoft.engine.business.data.InvalidBusinessDataModelException, org.bonitasoft.engine.business.data.BusinessDataRepositoryDeploymentException
- Throws:
org.bonitasoft.engine.business.data.InvalidBusinessDataModelExceptionorg.bonitasoft.engine.business.data.BusinessDataRepositoryDeploymentException
-
uninstallBusinessDataModel
protected void uninstallBusinessDataModel() throws org.bonitasoft.engine.business.data.BusinessDataRepositoryDeploymentException- Throws:
org.bonitasoft.engine.business.data.BusinessDataRepositoryDeploymentException
-
installBusinessDataModel
protected java.lang.String installBusinessDataModel(byte[] zip) throws org.bonitasoft.engine.business.data.InvalidBusinessDataModelException, org.bonitasoft.engine.business.data.BusinessDataRepositoryDeploymentException- Throws:
org.bonitasoft.engine.business.data.InvalidBusinessDataModelExceptionorg.bonitasoft.engine.business.data.BusinessDataRepositoryDeploymentException
-
installLivingApplications
protected void installLivingApplications(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult, org.bonitasoft.engine.business.application.ApplicationImportPolicy policy) throws org.bonitasoft.engine.exception.AlreadyExistsException, org.bonitasoft.engine.exception.ImportException, org.bonitasoft.engine.exception.ApplicationInstallationException
- Throws:
org.bonitasoft.engine.exception.AlreadyExistsExceptionorg.bonitasoft.engine.exception.ImportExceptionorg.bonitasoft.engine.exception.ApplicationInstallationException
-
installOrUpdatePages
protected void installOrUpdatePages(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult) throws java.io.IOException, org.bonitasoft.engine.exception.BonitaException
- Throws:
java.io.IOExceptionorg.bonitasoft.engine.exception.BonitaException
-
installOrUpdateLayouts
protected void installOrUpdateLayouts(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult) throws java.io.IOException, org.bonitasoft.engine.exception.BonitaException
- Throws:
java.io.IOExceptionorg.bonitasoft.engine.exception.BonitaException
-
installOrUpdateThemes
protected void installOrUpdateThemes(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult) throws java.io.IOException, org.bonitasoft.engine.exception.BonitaException
- Throws:
java.io.IOExceptionorg.bonitasoft.engine.exception.BonitaException
-
installOrUpdateRestApiExtensions
protected void installOrUpdateRestApiExtensions(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult) throws java.io.IOException, org.bonitasoft.engine.exception.BonitaException
- Throws:
java.io.IOExceptionorg.bonitasoft.engine.exception.BonitaException
-
installUnitPage
protected void installUnitPage(java.io.File pageFile, java.lang.String precisePageType, org.bonitasoft.engine.api.result.ExecutionResult executionResult) throws java.io.IOException, org.bonitasoft.engine.exception.BonitaExceptionFrom the Engine perspective, all custom pages, layouts, themes, custom Rest APIs are of typePage- Throws:
java.io.IOExceptionorg.bonitasoft.engine.exception.BonitaException
-
installProcesses
protected java.util.List<java.lang.Long> installProcesses(ApplicationArchive applicationArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult) throws org.bonitasoft.engine.bpm.bar.InvalidBusinessArchiveFormatException, java.io.IOException, org.bonitasoft.engine.bpm.process.ProcessDeployException
- Throws:
org.bonitasoft.engine.bpm.bar.InvalidBusinessArchiveFormatExceptionjava.io.IOExceptionorg.bonitasoft.engine.bpm.process.ProcessDeployException
-
updateConfiguration
public void updateConfiguration(java.io.File configurationFileArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult) throws java.lang.ExceptionUpdate configuration with the given bconf file- Parameters:
configurationFileArchive- A bconf fileexecutionResult-- Throws:
java.lang.Exception
-
deployProcess
protected java.lang.Long deployProcess(org.bonitasoft.engine.bpm.bar.BusinessArchive businessArchive, org.bonitasoft.engine.api.result.ExecutionResult executionResult) throws org.bonitasoft.engine.bpm.process.ProcessDeployException- Throws:
org.bonitasoft.engine.bpm.process.ProcessDeployException
-
inSession
public <T> T inSession(java.util.concurrent.Callable<T> callable) throws java.lang.Exception- Throws:
java.lang.Exception
-
inTransaction
protected <T> T inTransaction(java.util.concurrent.Callable<T> callable) throws org.bonitasoft.engine.exception.ApplicationInstallationException- Throws:
org.bonitasoft.engine.exception.ApplicationInstallationException
-
-