Skip to content

Commit

Permalink
Merge branch 'release/3.1.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
zambrovski committed Aug 17, 2021
2 parents 1d4305c + 9f5b642 commit 6539cb0
Show file tree
Hide file tree
Showing 124 changed files with 2,523 additions and 466 deletions.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,9 @@

> A component library for building enterprise-wide process platforms with multiple process engines like Camunda BPM.
In the last five years, we built different process applications on behalf of the customer several times. It turned out that some of the issues occurred every
In the last five years, we built different process applications on behalf of the customer several times. It turned out that some issues occurred every
time during the implementation.

<img src="docs/img/polyflow-hero-530x406.png?raw=true" width=500 alt="Polyflow Hero" title="Polyflow Hero" align="right" />

These were:

* coping with performance issues if big amount of tasks is available
Expand All @@ -24,6 +22,8 @@ These were:
* creating an archive view for business data items handled during the process execution
* creating an audit log of changes performed on business data items

![Polyflow Hero](docs/img/polyflow-hero-530x406.png)

We decided to stop repetitive work and release an open-source library which builds a foundation for solving these problems.

### Features
Expand Down
2 changes: 1 addition & 1 deletion bom/datapool-dependencies/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-parent</artifactId>
<version>3.0.2</version>
<version>3.1.0</version>
<relativePath>../parent/pom.xml</relativePath>
</parent>

Expand Down
17 changes: 13 additions & 4 deletions bom/parent/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-root</artifactId>
<version>3.0.2</version>
<version>3.1.0</version>
<relativePath>../../pom.xml</relativePath>
</parent>

Expand All @@ -21,7 +21,7 @@
<springboot.version>2.4.5</springboot.version>
<camunda-commons-typed-values.version>7.15.0</camunda-commons-typed-values.version>

<axon.version>4.5.2</axon.version>
<axon.version>4.5.3</axon.version>
<axon-kotlin.version>0.1.0</axon-kotlin.version>
<axon-gateway-extension.version>0.0.4</axon-gateway-extension.version>

Expand Down Expand Up @@ -116,6 +116,12 @@
<artifactId>polyflow-view-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-view-filtering</artifactId>
<version>3.1.0</version>
</dependency>

<dependency>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-view-simple</artifactId>
Expand Down Expand Up @@ -471,6 +477,9 @@
<groupId>org.jetbrains.kotlin</groupId>
<version>${kotlin.version}</version>
<configuration>
<args>
<arg>-Xjsr305=strict</arg>
</args>
<compilerPlugins>
<plugin>spring</plugin>
<plugin>jpa</plugin>
Expand Down Expand Up @@ -598,7 +607,7 @@
<plugin>
<groupId>org.jetbrains.dokka</groupId>
<artifactId>dokka-maven-plugin</artifactId>
<version>1.4.32</version>
<version>1.5.0</version>
<executions>
<execution>
<id>attach-javadocs</id>
Expand All @@ -623,7 +632,7 @@
</goals>
<configuration>
<sources>
<source>${project.basedir}/src/main/kotlin</source>
<source>src/main/kotlin</source>
</sources>
</configuration>
</execution>
Expand Down
9 changes: 7 additions & 2 deletions bom/taskpool-dependencies/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-parent</artifactId>
<version>3.0.2</version>
<version>3.1.0</version>
<relativePath>../parent/pom.xml</relativePath>
</parent>

Expand Down Expand Up @@ -42,7 +42,7 @@
<dependency>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-camunda-bpm-taskpool-collector</artifactId>
<version>3.0.2</version>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>io.holunda.polyflow</groupId>
Expand All @@ -64,6 +64,11 @@
<artifactId>polyflow-view-simple</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-view-jpa</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-view-mongo</artifactId>
Expand Down
7 changes: 7 additions & 0 deletions codacy.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
engines:
duplications:
exclude_paths:
- "**/src/test/kotlin/**"
exclude_paths:
- ".github/ISSUE_TEMPLATE/**"
2 changes: 1 addition & 1 deletion core/datapool/datapool-api/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-datapool-parent</artifactId>
<version>3.0.2</version>
<version>3.1.0</version>
</parent>

<artifactId>polyflow-datapool-api</artifactId>
Expand Down
2 changes: 1 addition & 1 deletion core/datapool/datapool-core/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-datapool-parent</artifactId>
<version>3.0.2</version>
<version>3.1.0</version>
</parent>

<artifactId>polyflow-datapool-core</artifactId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ import org.springframework.context.annotation.ComponentScan
import org.springframework.context.annotation.Configuration


/**
* Configuration of polyflow data pool core.
*/
@Configuration
@ComponentScan
class DataPoolCoreConfiguration {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@ import org.dom4j.Document
import org.dom4j.DocumentHelper
import org.springframework.stereotype.Component


/**
* Upcaster adding attributes applicationName, type and name to the event as specified in revision 2.
*/
@Component
class DataEntryCreatedEventUpcaster : SingleEventUpcaster() {

Expand Down
2 changes: 1 addition & 1 deletion core/datapool/datapool-event/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-datapool-parent</artifactId>
<version>3.0.2</version>
<version>3.1.0</version>
</parent>

<artifactId>polyflow-datapool-event</artifactId>
Expand Down
2 changes: 1 addition & 1 deletion core/datapool/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-parent</artifactId>
<version>3.0.2</version>
<version>3.1.0</version>
<relativePath>../../bom/parent/pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion core/taskpool/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-parent</artifactId>
<version>3.0.2</version>
<version>3.1.0</version>
<relativePath>../../bom/parent/pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion core/taskpool/taskpool-api/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-taskpool-parent</artifactId>
<version>3.0.2</version>
<version>3.1.0</version>
</parent>

<artifactId>polyflow-taskpool-api</artifactId>
Expand Down
2 changes: 1 addition & 1 deletion core/taskpool/taskpool-core/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-taskpool-parent</artifactId>
<version>3.0.2</version>
<version>3.1.0</version>
</parent>

<artifactId>polyflow-taskpool-core</artifactId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ import org.axonframework.modelling.command.AggregateIdentifier
import org.axonframework.modelling.command.AggregateLifecycle
import org.axonframework.spring.stereotype.Aggregate

/**
* Command model responsible for commands on process definition.
*/
@Aggregate
class ProcessDefinitionAggregate() {

Expand All @@ -34,7 +37,9 @@ class ProcessDefinitionAggregate() {
))
}


/**
* React on registration of a new process definition.
*/
@EventSourcingHandler
fun on(event: ProcessDefinitionRegisteredEvent) {
this.processDefinitionId = event.processDefinitionId
Expand Down
2 changes: 1 addition & 1 deletion core/taskpool/taskpool-event/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>io.holunda.polyflow</groupId>
<artifactId>polyflow-taskpool-parent</artifactId>
<version>3.0.2</version>
<version>3.1.0</version>
</parent>

<artifactId>polyflow-taskpool-event</artifactId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@ import org.axonframework.serialization.upcasting.event.IntermediateEventRepresen
import org.dom4j.Document
import java.util.function.Function


/**
* Upcaster to put revision 1 into the event and remove unneeded attributes.
*/
@AnnotatedEventUpcaster("io.holunda.camunda.taskpool.api.task.ProcessDefinitionRegisteredEvent")
class ProcessDefinitionEventXMLNullTo1Upcaster : AnnotationBasedSingleEventUpcaster() {

Expand Down Expand Up @@ -35,6 +37,9 @@ class ProcessDefinitionEventXMLNullTo1Upcaster : AnnotationBasedSingleEventUpcas
}
}

/**
* Upcaster to put revision 1 into the event and remove unneeded attributes.
*/
@AnnotatedEventUpcaster("io.holunda.camunda.taskpool.api.task.ProcessDefinitionRegisteredEvent", representationContentType = JSON)
class ProcessDefinitionEventJSONNullTo1Upcaster : AnnotationBasedSingleEventUpcaster() {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import io.holunda.camunda.taskpool.upcast.definition.AnnotationBasedSingleEventU
import mu.KLogging
import org.axonframework.serialization.SimpleSerializedType
import org.axonframework.serialization.upcasting.event.IntermediateEventRepresentation
import org.dom4j.Attribute
import org.dom4j.Document

/**
Expand Down Expand Up @@ -171,7 +170,8 @@ abstract class AbstractSourceReferenceElementRemovingUpcaster : AnnotationBasedS
override fun doUpcast(representation: IntermediateEventRepresentation): IntermediateEventRepresentation {
return representation.upcastPayload(
SimpleSerializedType(getType(), "4"),
Document::class.java) { document ->
Document::class.java
) { document ->
document.apply {
TAG_NAMES.forEach {
removeWrongElement(document, it)
Expand All @@ -180,6 +180,9 @@ abstract class AbstractSourceReferenceElementRemovingUpcaster : AnnotationBasedS
}
}

/**
* Retrieves the type of resulting object.
*/
abstract fun getType(): String

private fun removeWrongElement(document: Document, tagName: String) {
Expand Down
1 change: 0 additions & 1 deletion docs/developer-guide/contribution.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
---
title: Contribution
pageId: 'contribution'
---

There are several ways in which you may contribute to this project.
Expand Down
34 changes: 18 additions & 16 deletions docs/developer-guide/project-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,8 @@ automatically.

### Skip Frontend

TIP: Components for production use of camunda-bpm-taskpool are backend components only. Frontend components are only
created for examples and demonstration purpose.
!!! note
Components for production use of camunda-bpm-taskpool are backend components only. Frontend components are only created for examples and demonstration purpose.

If you are interested in backend only, specify the `-DskipFrontend` switch. This will accelerate the build
significantly.
Expand All @@ -64,7 +64,8 @@ For doing so, you can re-generate the scripts running:
./mvnw -Pgenerate-sql
```

NOTE: The existing scripts must not be replaced or changed, but new additional scripts needs to added.
!!! warning
The existing scripts must not be replaced or changed, but new additional scripts needs to added.

### Build Documentation

Expand All @@ -83,10 +84,10 @@ For creation of documentation, please run:
mkdocs build
```

The docs are generated into `site` directory.
The docs are generated into `site` directory.

!!!note If you want to develop your docs in 'live' mode, run `mkdocs serve` and access
the [http://localhost:8000/](http://localhost:8000/) from your browser.
!!! note
If you want to develop your docs in 'live' mode, run `mkdocs serve` and access the [http://localhost:8000/](http://localhost:8000/) from your browser.

### Examples

Expand All @@ -100,7 +101,8 @@ line or disable the `examples` module in your IDE.

## Local Start

!!!important If you want to run examples locally, you will need `docker` and `docker-compose`.
!!! important
If you want to run examples locally, you will need `docker` and `docker-compose`.

### Pre-requirements

Expand Down Expand Up @@ -164,13 +166,10 @@ inside the corresponding `pom.xml`. Currently, all examples are _EXCLUDED_ from

### Trigger new release

WARNING: This operation requires special permissions.
!!! warning
This operation requires special permissions.

We use gitflow for development (see [A successful git branching model](http://nvie.com/posts/a-successful-git-branching-model/)
for more details). You could use gitflow with native git commands, but then you would have
to change the versions in the poms manually. Therefore, we use the
[mvn gitflow plugin](https://github.com/aleksandr-m/gitflow-maven-plugin/), which handles this and other
things nicely.
We use gitflow for development (see [A successful git branching model](http://nvie.com/posts/a-successful-git-branching-model/) for more details). You could use gitflow with native git commands, but then you would have to change the versions in the poms manually. Therefore, we use the [mvn gitflow plugin](https://github.com/aleksandr-m/gitflow-maven-plugin/), which handles this and other things nicely.

You can build a release with:

Expand All @@ -184,15 +183,17 @@ and update the `develop` branch for the new development version.

### Trigger a deploy

!!! warning This operation requires special permissions.
!!! warning
This operation requires special permissions.

Currently, CI allows for deployment of artifacts to Maven Central and is executed using github actions.
This means, that a push to `master` branch will start the corresponding build job, and if successful the
artifacts will get into `Staging Repositories` of OSS Sonatype without manual intervention.

### Run deploy from local machine

WARNING: This operation requires special permissions.
!!! warning
This operation requires special permissions.

If you still want to execute the deployment from your local machine, you need to have GPG keys at place and
to execute the following command on the `master` branch:
Expand All @@ -205,7 +206,8 @@ export GPG_PASSPHRASE="<secret>"

### Release to public repositories

WARNING: This operation requires special permissions.
!!! warning
This operation requires special permissions.

The deploy job will publish the artifacts to Nexus OSS staging repositories. Don't forget to close and release the
repository to enable it's sync with Maven Central.
Loading

0 comments on commit 6539cb0

Please sign in to comment.