Skip to content

Commit

Permalink
Merge branch 'RC-5.3.1'
Browse files Browse the repository at this point in the history
  • Loading branch information
sfieten committed Dec 13, 2021
2 parents d53c4c8 + ada0178 commit 0af3457
Show file tree
Hide file tree
Showing 256 changed files with 4,392 additions and 2,976 deletions.
80 changes: 78 additions & 2 deletions CHANGELOG.MD
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,89 @@
All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](http://semver.org/).

## 5.3.1
##### 2021-12-13
### Changed
* Removed ".." from directory names on Windows

### Fixed
* Vulnerability in log4j2 [#123](https://github.com/holodeck-b2b/Holodeck-B2B/issues/123)


## 5.3.0
##### 2021-10-25
### Added
* New processing state _SUSPENDED_ to indicate that an error occurred that prevented the sending of a User Message to
the trading partner and the possibility to resume their processing by calling the
`HolodeckB2BCoreInterface#resumeProcessing()` method.
* Option to have multiple event handlers for one event. See `IMessageProcessingEventConfiguration`
* `ISendMessageProcessingFailure` is now also raised when a message unit cannot be (re)sent, i.e. before the actual
send process is started.

### Changed
* Improved shutdown process in `org.holodeckb2b.core.HolodeckB2BServer`. Includes support for [Apache commons daemon|
https://commons.apache.org/proper/commons-daemon/index.html] (using _jvm_ mode).
* Message properties are included in P-Mode matching, i.e. all properties defined in a P-Mode must be specified in the
received message for a P-Mode to match. But any properties in the message not defined in the P-Mode are ignored.

### Fixed
* Delivery events (`IMessageDelivered` and `IMessageDeliveryFailure`) not raised for delivered Signal Messages.
* Getting send and receive legs for 2-Way P-Mode does not work for non ebMS3 MEP bindings.

## 5.2.0
##### 2021-09-02
### Added
* `org.holodeckb2b.core.axis2.HTTPWorker` puts the request parameters included in the HTTP URL in _MessageContext_
property "hb2b:" + `org.apache.axis2.Constants.REQUEST_PARAMETER_MAP`. The property value is a `Map<String, String>`
of parameter names to values.

### Changed
* Removed Core Axis2 module as default.
* Maven ArtifactId of the default ebMS3 Security Provider module to make it consistent with other module names.
* Log message when no event handlers are configured in P-Mode.

### Fixed
* Duplicate messages not eliminated [#117](https://github.com/holodeck-b2b/Holodeck-B2B/issues/117)
* Setting of threads available for a _worker pool_
* NPE when writing P-Mode XML document with retry configuration

## 5.1.0
##### 2021-05-26
### Added
* Management of worker pools by the Core, including the possibility for "on the fly" reconfiguration. For this purpose a
new `IWorkerPool` interface has been introduced and methods in the `HolodeckB2BCoreInterface` and
`IWorkerPullConfiguration` have been added.

### Changed
* Pull reconfiguration is now managed by the worker pool and configured in the pull configuration file by setting the
_refresh_ parameter
* Loading of the _Event Processor_, _Certificate Manager_, _Persistency Provider_ and ebMS3 _Security Provider_ has been
changed to load the first available provider instead of trying to load just the first one registered
* Improved logging of unexpected errors during message processing
* Refactored code to use the generic utility classes from https://github.com/holodeck-b2b/generic-utils
* Moved `AbstractWorkerTask` class from `org.holodeckb2b.common.workerpool` to `org.holodeckb2b.common.workers`
* Renamed `org.holodeckb2b.common.workerpool`to `org.holodeckb2b.core.workerpool`

### Deprecated
* `org.holodeckb2b.interfaces.workerpool.IWorkerPoolConfiguration.getName()` as worker pool names are now set in code

### Fixed
* Finding the correct P-Mode for User Messages received on response leg of a Two-Way P-Mode
* Completion of submission for Two-Way P-Modes
* Processing of a received message with more than 30 attachments fails [#113](https://github.com/holodeck-b2b/Holodeck-B2B/issues/113)
* Setting of HTTP response code in response message context

### Removed
* The _pullConfigWatcher_ as the pull configuration is now automatically refreshed by the worker pool itself
* Generic utility classes `org.holodeckb2b.common.util.Utils`, `org.holodeckb2b.common.util.MessageIdUtils` and
`org.holodeckb2b.security.util.KeystoreUtils` as they are moved to a new, separate project.


## 5.0.3
##### 2020-11-18

### Fixed
* Multihop routing information missing in async Signal Messages [#112](https://github.com/holodeck-b2b/Holodeck-B2B/issues/112)


## 5.0.2
##### 2020-09-16

Expand Down
246 changes: 121 additions & 125 deletions modules/holodeckb2b-core/pom.xml
Original file line number Diff line number Diff line change
@@ -1,133 +1,129 @@
<!--
<!-- Copyright (C) 2014 The Holodeck B2B Team, Sander Fieten This program
is free software: you can redistribute it and/or modify it under the terms
of the GNU General Public License as published by the Free Software Foundation,
either version 3 of the License, or (at your option) any later version. This
program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with
this program. If not, see <http://www.gnu.org/licenses/>. -->
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

Copyright (C) 2014 The Holodeck B2B Team, Sander Fieten
<parent>
<groupId>org.holodeckb2b</groupId>
<artifactId>holodeckb2b</artifactId>
<version>5.3.1</version>
<relativePath>../../pom.xml</relativePath>
</parent>

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
<modelVersion>4.0.0</modelVersion>
<artifactId>holodeckb2b-core</artifactId>
<packaging>jar</packaging>
<name>Holodeck B2B - Core</name>
<description>This module contains the Holodeck B2B Core processing engine that applies to all protocols</description>

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>holodeckb2b-interfaces</artifactId>
</dependency>
<dependency>
<groupId>org.holodeckb2b.commons</groupId>
<artifactId>generic-utils</artifactId>
</dependency>
<!-- Apache Axis2 kernel -->
<dependency>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-kernel</artifactId>
</dependency>
<dependency>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-transport-http</artifactId>
</dependency>
<dependency>
<groupId>org.simpleframework</groupId>
<artifactId>simple-xml</artifactId>
</dependency>

You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
<!-- Apache Tika is used to determine MIME Type -->
<dependency>
<groupId>org.apache.tika</groupId>
<artifactId>tika-core</artifactId>
</dependency>

-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
</dependency>

<parent>
<groupId>org.holodeckb2b</groupId>
<artifactId>holodeckb2b</artifactId>
<version>5.0.3</version>
<relativePath>../../pom.xml</relativePath>
</parent>
<!-- Dependencies specific for testing -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<scope>test</scope>
</dependency>
<!-- This specific log4j lib is used by mockito. @todo: We should check
if we can skip this dependency -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
<scope>test</scope>
</dependency>
</dependencies>

<modelVersion>4.0.0</modelVersion>
<artifactId>holodeckb2b-core</artifactId>
<packaging>jar</packaging>
<name>Holodeck B2B - Core</name>
<description>This module contains the Holodeck B2B Core processing engine that applies to all protocols</description>

<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>holodeckb2b-interfaces</artifactId>
</dependency>

<!-- Apache Axis2 kernel -->
<dependency>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-kernel</artifactId>
</dependency>
<dependency>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-transport-http</artifactId>
</dependency>
<dependency>
<groupId>org.simpleframework</groupId>
<artifactId>simple-xml</artifactId>
</dependency>

<!-- Apache Tika is used to determine MIME Type -->
<dependency>
<groupId>org.apache.tika</groupId>
<artifactId>tika-core</artifactId>
</dependency>

<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
</dependency>

<!-- Dependencies specific for testing -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<scope>test</scope>
</dependency>
<!-- This specific log4j lib is used by mockito. @todo: We should check if we can skip this dependency -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
<scope>test</scope>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>templating-maven-plugin</artifactId>
<version>1.0.0</version>
<executions>
<execution>
<id>filter-src</id>
<goals>
<goal>filter-sources</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>xsd/**</exclude>
</excludes>
</resource>
</resources>
</build>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>templating-maven-plugin</artifactId>
<version>1.0.0</version>
<executions>
<execution>
<id>filter-src</id>
<goals>
<goal>filter-sources</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>xsd/**</exclude>
</excludes>
</resource>
</resources>
</build>
</project>
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

import java.util.List;

import org.holodeckb2b.common.util.Utils;
import org.holodeckb2b.commons.util.Utils;
import org.holodeckb2b.interfaces.eventprocessing.IMessageProcessingEvent;
import org.holodeckb2b.interfaces.eventprocessing.IMessageProcessingEventConfiguration;
import org.holodeckb2b.interfaces.messagemodel.IMessageUnit;
Expand Down
Loading

0 comments on commit 0af3457

Please sign in to comment.