Skip to content

Commit

Permalink
Bonita '7.13.0' to '9.0.0' automated migration
Browse files Browse the repository at this point in the history
  • Loading branch information
rbioteau committed Oct 11, 2023
1 parent 342568e commit 85d7ce9
Show file tree
Hide file tree
Showing 45 changed files with 1,749 additions and 557 deletions.
88 changes: 5 additions & 83 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,87 +1,9 @@

# Output of source code compilation.
# For example Bonita includes helper Groovy classes such as BonitaUsers (with for example getProcessInstanceInitiator method).
# Sources (e.g. BonitaUsers.groovy) are located in src-providedGroovy folder and build result (e.g. BonitaUsers.class) is located in bin folder.
/bin

# BDM jar generated from the BDM definition (bom.xml)
/lib/bdm-client-pojo.jar

# You can also ignore in lib folder jar files related to connector provided by Bonita
/lib/bonita-connector-email-impl-1.0.15.jar
/lib/mail-1.4.7.jar
/lib/bonita-connector-email-1.1.0.jar
/lib/bonita-userfilter-initiator-impl-1.0.0-SNAPSHOT.jar
/lib/bonita-userfilter-user-manager-impl-1.0.0-SNAPSHOT.jar

# Classpath configuration for Bonita Studio. Automatically generated.
bin
.classpath

# Project settings. Studio is able to create them with appropriate default value if needed.
.settings

# Should be created by the Studio if needed.
/META-INF

# Should be created by the Studio if needed.
/build.properties

# If you don't use database connectors you can safely ignore the content of database_connectors_properties folder
/database_connectors_properties

# h2 database information are only used when testing application in Bonita Studio.
/h2_database

# ACME test organization is provided by Bonita Studio.
# You probably don't want to include it except if you did some customization.
/organizations/ACME.organization

# Ignore the Groovy script sources provided with Bonita Studio.
/src-providedGroovy

# Web component user individual preferences (e.g. bookmarked,...).
/web_widgets/.metadata
/web_page/.metadata

# Output of web component build
/web_widgets/*/*.js
/web_page/*/js

# Web widgets provided by Bonita in the UI Designer.
/web_widgets/pb*/

# Gradle (can be used for example to build and package REST API extensions).

# Ignore Gradle generated files.
.gradle
**/build/

# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored).
!gradle-wrapper.jar

# IntelliJ (can be used for example to create a REST API extension).

# Ignore IntelliJ output folder.
**/out/

# IntelliJ user workspace configuration.
**/.idea/**/workspace.xml

# IntelliJ Gradle integration configuration.
**/.idea/**/gradle.xml

# Maven
target/

# Macos
.DS_Store


bin
/template
/process_configurations
.flattened-pom.xml
dependency-reduced-pom.xml
pom.xml.versionsBackup
node/
node_modules/
/web_fragments/.metadata
/web_fragments/*/*.js
!/web_widgets/*/*.ctrl.js
node_modules/
10 changes: 1 addition & 9 deletions .project
Original file line number Diff line number Diff line change
@@ -1,25 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>getting-started-tutorial</name>
<comment>7.13.0</comment>
<comment>9.0.0</comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.m2e.core.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.bonitasoft.studio.common.repository.bonitaNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.eclipse.jdt.groovy.core.groovyNature</nature>
<nature>org.eclipse.m2e.core.maven2Nature</nature>
</natures>
</projectDescription>
22 changes: 0 additions & 22 deletions MIGRATION_NOTES.adoc

This file was deleted.

75 changes: 75 additions & 0 deletions app/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@


# Output of source code compilation.
# For example Bonita includes helper Groovy classes such as BonitaUsers (with for example getProcessInstanceInitiator method).
# Sources (e.g. BonitaUsers.groovy) are located in src-providedGroovy folder and build result (e.g. BonitaUsers.class) is located in bin folder.
/bin

# BDM jar generated from the BDM definition (bom.xml)

# You can also ignore in lib folder jar files related to connector provided by Bonita

# Classpath configuration for Bonita Studio. Automatically generated.

# Project settings. Studio is able to create them with appropriate default value if needed.

# Should be created by the Studio if needed.
/META-INF

# Should be created by the Studio if needed.
/build.properties

# If you don't use database connectors you can safely ignore the content of database_connectors_properties folder
/database_connectors_properties

# h2 database information are only used when testing application in Bonita Studio.
/h2_database

# ACME test organization is provided by Bonita Studio.
# You probably don't want to include it except if you did some customization.
/organizations/ACME.organization

# Ignore the Groovy script sources provided with Bonita Studio.
/src-providedGroovy

# Web component user individual preferences (e.g. bookmarked,...).
/web_widgets/.metadata
/web_page/.metadata

# Output of web component build
/web_widgets/*/*.js
/web_page/*/js

# Web widgets provided by Bonita in the UI Designer.
/web_widgets/pb*/

# Gradle (can be used for example to build and package REST API extensions).

# Ignore Gradle generated files.
.gradle
**/build/

# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored).
!gradle-wrapper.jar

# IntelliJ (can be used for example to create a REST API extension).

# Ignore IntelliJ output folder.
**/out/

# IntelliJ user workspace configuration.
**/.idea/**/workspace.xml

# IntelliJ Gradle integration configuration.
**/.idea/**/gradle.xml

# Maven

# Macos
.DS_Store


/process_configurations
/web_fragments/.metadata
/web_fragments/*/*.js
!/web_widgets/*/*.ctrl.js
42 changes: 42 additions & 0 deletions app/.project
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>getting-started-tutorial-app</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.bonitasoft.studio.common.repository.bonitaProjectValidationBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.m2e.core.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.m2e.core.maven2Nature</nature>
<nature>org.bonitasoft.studio.common.repository.bonitaNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.eclipse.jdt.groovy.core.groovyNature</nature>
</natures>
<linkedResources>
<link>
<name>bdm</name>
<type>2</type>
<locationURI>PARENT-1-PROJECT_LOC/bdm</locationURI>
</link>
<link>
<name>extensions</name>
<type>2</type>
<locationURI>PARENT-1-PROJECT_LOC/extensions</locationURI>
</link>
</linkedResources>
</projectDescription>
43 changes: 43 additions & 0 deletions app/MIGRATION_NOTES.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
== Migration notes (October 11, 2023 at 4:46:59 PM CEST)

=== Additions

* Bonita Admin Application has been added in the project extensions.

=== Updates

* `com.company.model:bdm-client:jar:1.0.0` dependency has been replaced with `${project.groupId}:getting-started-tutorial-bdm-model:jar:${project.version}`.
* The project layout has been changed in favor of a multi modules maven project. It means that files location inside the project have changed. It is a technical change and will not impact the design usage in Bonita Studio.New maven modules and their respective `pom.xml` files are *reserved for internal Studio use*.
* Project's Business Data Model is now build in its own maven module. While it does not impact the design usage, it can now be built and deployed independently from a Studio. The BDM model dependency share the same `version` and `groupId` of the parent project. It is enforced by the format of the Bonita project and must not be changed.
* `app/.gitignore` file has been updated.
* This project now depends on the Bonita project parent pom. This parent pom configures all the required plugins and dependencies versions for a given Bonita version.
* Rest API Extensions and Themes projects have been moved in the project layout to benefit from the Maven multi module approach. It means that files location inside the project have changed. It is a technical change and will not impact the design usage in Bonita Studio.New maven modules and their respective `pom.xml` files are *reserved for internal Studio use*.
* Project's extensions are now build in their own maven module. While it does not impact the design usage, this internal change allow the usage of a standard Maven build lifecycle. All extensions share the same `version` and `groupId` of the parent project. It is enforced by the format of the Bonita project and must not be changed.
* Application module build configuration has been updated to support Maven build.

=== Removals

* Deprecated provided groovy classes `BonitaUsers`, `BonitaSql`, `BonitaXML` and `BonitaTypes` have been removed.

== Migration notes (September 1, 2021 at 10:41:46 AM CEST)

=== Updates

* `bonita.runtime.version` has been updated from `7.13.0-SNAPSHOT` to `7.13.0.beta-02`.

== Migration notes (September 1, 2021 at 10:09:11 AM CEST)

=== Additions

* Bonita projects are now Maven projects and rely on the https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html[Maven dependency mechanism] to manage their dependencies. Check the documentation for more information about https://www.bonitasoft.com/bos_redirect.php?bos_redirect_id=727&bos_redirect_major_version=7.13&bos_redirect_minor_version=0&bos_redirect_product=bos[Project composition].

=== Updates

* Groovy version has been updated from `2.4.x` to `3.0.x`
* Only Java `11` version is now supported. This might impact your existing projet if you were still using Java 8. Some dependencies in your project might be incompatible with the _Java Platform Module System_ introduced in Java 9.

=== Removals

* Existing `pom.xml` has been backed up as `pom.xml.old`. Bonita projects are now Maven project and the `pom.xml` file is *reserved for internal use*.
* `lib` folder and its content has been removed.

File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:connectorconfiguration="http://wwww.bonitasoft.org/model/connector/configuration" xmlns:decision="http://www.bonitasoft.org/ns/studio/process/decision" xmlns:expression="http://www.bonitasoft.org/ns/studio/expression" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.3/notation" xmlns:process="http://www.bonitasoft.org/ns/studio/process" xsi:schemaLocation="http://www.bonitasoft.org/ns/studio/process/decision http://www.bonitasoft.org/ns/studio/process#//decision">
<process:MainProcess xmi:id="_H38FQDyAEeqKNtcxTLvuMA" name="ClaimsManagementDiagram" author="antoine" bonitaVersion="7.13.0" bonitaModelVersion="7.12.0-004" configId="ACED0005740010372E31302E302D303031372E31302E30">
<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:connectorconfiguration="http://www.bonitasoft.org/model/connector/configuration" xmlns:decision="http://www.bonitasoft.org/ns/bpm/process/decision" xmlns:expression="http://www.bonitasoft.org/ns/bpm/expression" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.3/notation" xmlns:process="http://www.bonitasoft.org/ns/bpm/process">
<process:MainProcess xmi:id="_H38FQDyAEeqKNtcxTLvuMA" name="ClaimsManagementDiagram" bonitaModelVersion="8">
<elements xmi:type="process:Pool" xmi:id="_H38FQTyAEeqKNtcxTLvuMA" name="ClaimsManagement">
<elements xmi:type="process:Lane" xmi:id="_ymWCkEHzEeqBR-LRxa6TMQ" name="Customer lane" actor="_N9xGsEH0EeqBR-LRxa6TMQ">
<elements xmi:type="process:StartEvent" xmi:id="_H38FQzyAEeqKNtcxTLvuMA" name="Submit claim" outgoing="_H38sWTyAEeqKNtcxTLvuMA">
Expand Down Expand Up @@ -87,7 +87,7 @@
<dynamicDescription xmi:type="expression:Expression" xmi:id="_q2mLEDyBEeqKNtcxTLvuMA" name="" content="" returnTypeFixed="true"/>
<stepSummary xmi:type="expression:Expression" xmi:id="_q2mLEjyBEeqKNtcxTLvuMA" name="" content="" returnTypeFixed="true"/>
<connectors xmi:type="process:Connector" xmi:id="_cL3VYEH6EeqBR-LRxa6TMQ" name="Send notification" definitionId="email" event="ON_ENTER" definitionVersion="1.2.0">
<configuration xmi:type="connectorconfiguration:ConnectorConfiguration" xmi:id="_cL3VYUH6EeqBR-LRxa6TMQ" definitionId="email" version="1.2.0" modelVersion="7.10.0-001">
<configuration xmi:type="connectorconfiguration:ConnectorConfiguration" xmi:id="_cL3VYUH6EeqBR-LRxa6TMQ" definitionId="email" version="1.2.0" modelVersion="8">
<parameters xmi:type="connectorconfiguration:ConnectorParameter" xmi:id="_cL3VYkH6EeqBR-LRxa6TMQ" key="smtpHost">
<expression xmi:type="expression:Expression" xmi:id="_cL3VY0H6EeqBR-LRxa6TMQ" name="localhost" content="localhost" returnTypeFixed="true"/>
</parameters>
Expand Down Expand Up @@ -167,7 +167,7 @@
<stepSummary xmi:type="expression:Expression" xmi:id="_v-tUYTyBEeqKNtcxTLvuMA" name="" content="" returnTypeFixed="true"/>
</elements>
<filters xmi:type="process:ActorFilter" xmi:id="_ov6zMEH3EeqBR-LRxa6TMQ" name="Manager of the user who provided answer" definitionId="bonita-actorfilter-user-manager" definitionVersion="1.0.0">
<configuration xmi:type="connectorconfiguration:ConnectorConfiguration" xmi:id="_ov6zMUH3EeqBR-LRxa6TMQ" definitionId="bonita-actorfilter-user-manager" version="1.0.0">
<configuration xmi:type="connectorconfiguration:ConnectorConfiguration" xmi:id="_ov6zMUH3EeqBR-LRxa6TMQ" definitionId="bonita-actorfilter-user-manager" version="1.0.0" modelVersion="8">
<parameters xmi:type="connectorconfiguration:ConnectorParameter" xmi:id="_ov6zMkH3EeqBR-LRxa6TMQ" key="userId">
<expression xmi:type="expression:Expression" xmi:id="_ov6zM0H3EeqBR-LRxa6TMQ" name="userId()" content="import org.bonitasoft.engine.bpm.flownode.ArchivedHumanTaskInstance&#xA;import org.bonitasoft.engine.bpm.flownode.ArchivedHumanTaskInstanceSearchDescriptor&#xA;import org.bonitasoft.engine.search.SearchOptionsBuilder&#xA;import org.bonitasoft.engine.search.SearchResult&#xA;&#xA;def taskName = 'Review and answer claim'&#xA;&#xA;final SearchOptionsBuilder searchOptionsBuilder = new SearchOptionsBuilder(0, 1)&#xA;.filter(ArchivedHumanTaskInstanceSearchDescriptor.PARENT_PROCESS_INSTANCE_ID, processInstanceId)&#xA;.filter(ArchivedHumanTaskInstanceSearchDescriptor.NAME, taskName).filter(ArchivedHumanTaskInstanceSearchDescriptor.TERMINAL, true)&#xA;&#xA;SearchResult&lt;ArchivedHumanTaskInstance> searchResult = apiAccessor.processAPI.searchArchivedHumanTasks(searchOptionsBuilder.done())&#xA;&#xA;final List&lt;ArchivedHumanTaskInstance> tasks = searchResult.result&#xA;&#xA;tasks.first().executedBy" interpreter="GROOVY" type="TYPE_READ_ONLY_SCRIPT" returnType="java.lang.Long" returnTypeFixed="true">
<referencedElements xmi:type="expression:Expression" xmi:id="_ov6zNEH3EeqBR-LRxa6TMQ" name="processInstanceId" content="processInstanceId" type="TYPE_ENGINE_CONSTANT" returnType="java.lang.Long"/>
Expand Down
File renamed without changes.
File renamed without changes.
Loading

0 comments on commit 85d7ce9

Please sign in to comment.