Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions distro/src/readme.html
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,19 @@ <h1>Links</h1>

<h1>Flowable Release Notes</h1>

<h3>Release Notes - Flowable - 8.0.0</h3>

<ul>
<li>
Date variables will now include the milliseconds when they are returned over REST.
E.g., up to now a date variable with the value of <code>2020-05-04T09:25:45.583Z</code> would have been returned as <code>2020-05-04T09:25:45Z</code>.
However, now it would be returned as <code>2020-05-04T09:25:45.583Z</code> which is still ISO 8601 compliant.
</li>
<li>
Date properties e.g., Process Instance start time will be returned as an ISO 8601 in the UTC timezone.
E.g., if the start time was returned as <code>2025-09-24T09:58:12.609+02:00</code> now it is returned as <code>2025-09-24T07:58:12.609Z</code>.
</li>
</ul>
<h3>Release Notes - Flowable - 7.2.0</h3>

<ul>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "Engine" }, description = "Manage App Engine", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "Engine" }, authorizations = { @Authorization(value = "basicAuth") })
public class AppEngineResource {

@Autowired(required=false)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "App Definitions" }, description = "Manage App Definitions", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "App Definitions" }, authorizations = { @Authorization(value = "basicAuth") })
public class AppDefinitionCollectionResource {

private static final Map<String, QueryProperty> properties = new HashMap<>();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "App Definitions" }, description = "Manage App Definitions", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "App Definitions" }, authorizations = { @Authorization(value = "basicAuth") })
public class AppDefinitionResource {

@Autowired
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "App Definitions" }, description = "Manage App Definitions", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "App Definitions" }, authorizations = { @Authorization(value = "basicAuth") })
public class AppDefinitionResourceDataResource {

@Autowired
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "App Deployments" }, description = "Manage App Deployments", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "App Deployments" }, authorizations = { @Authorization(value = "basicAuth") })
public class AppDeploymentCollectionResource {

private static Map<String, QueryProperty> allowedSortProperties = new HashMap<>();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "App Deployments" }, description = "Manage App Deployments", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "App Deployments" }, authorizations = { @Authorization(value = "basicAuth") })
public class AppDeploymentResource {

@Autowired
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "App Deployments" }, description = "Manage App Deployment", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "App Deployments" }, authorizations = { @Authorization(value = "basicAuth") })
public class AppDeploymentResourceCollectionResource {

@Autowired
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "App Deployments" }, description = "Manage App Deployments", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "App Deployments" }, authorizations = { @Authorization(value = "basicAuth") })
public class AppDeploymentResourceDataResource {

@Autowired
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
* @author Tim Stephenson
*/
@RestController
@Api(tags = { "App Deployments" }, description = "Manage App Deployment", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "App Deployments" }, authorizations = { @Authorization(value = "basicAuth") })
public class AppDeploymentResourceResource {

@Autowired
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "App Definitions" }, description = "Manage App Definitions", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "App Definitions" }, authorizations = { @Authorization(value = "basicAuth") })
public class AppModelResource {

@Autowired
Expand Down
5 changes: 0 additions & 5 deletions modules/flowable-app-rest/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -57,11 +57,6 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring.boot.version}</version>
<configuration>
<excludeArtifactIds>
spring-boot-configuration-processor
</excludeArtifactIds>
</configuration>
<executions>
<execution>
<goals>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,6 @@
*/
package org.flowable.rest.conf;

import static org.springframework.security.web.util.matcher.AntPathRequestMatcher.antMatcher;

import org.apache.commons.lang3.StringUtils;
import org.flowable.rest.app.properties.RestAppProperties;
import org.flowable.rest.security.BasicAuthenticationProvider;
Expand All @@ -30,6 +28,7 @@
import org.springframework.security.config.annotation.web.configurers.CsrfConfigurer;
import org.springframework.security.config.http.SessionCreationPolicy;
import org.springframework.security.web.SecurityFilterChain;
import org.springframework.security.web.servlet.util.matcher.PathPatternRequestMatcher;

@Configuration(proxyBeanMethods = false)
@EnableWebSecurity
Expand Down Expand Up @@ -61,11 +60,13 @@ public SecurityFilterChain restApiSecurity(HttpSecurity http, AuthenticationProv
// Swagger docs
if (isSwaggerDocsEnabled()) {
httpSecurity
.authorizeHttpRequests(authorizeRequests -> authorizeRequests.requestMatchers(antMatcher("/docs/**")).permitAll());
.authorizeHttpRequests(
authorizeRequests -> authorizeRequests.requestMatchers(PathPatternRequestMatcher.withDefaults().matcher("/docs/**")).permitAll());

} else {
httpSecurity
.authorizeHttpRequests(authorizeRequests -> authorizeRequests.requestMatchers(antMatcher("/docs/**")).denyAll());
.authorizeHttpRequests(
authorizeRequests -> authorizeRequests.requestMatchers(PathPatternRequestMatcher.withDefaults().matcher("/docs/**")).denyAll());

}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ protected ExtensionContext.Store getStore(ExtensionContext context) {
return context.getRoot().getStore(NAMESPACE);
}

protected static class CloseableEngine implements ExtensionContext.Store.CloseableResource {
protected static class CloseableEngine implements AutoCloseable {

protected final ProcessEngine processEngine;

Expand All @@ -161,7 +161,7 @@ public CloseableEngine(ProcessEngine processEngine) {
}

@Override
public void close() throws Throwable {
public void close() {
if (processEngine != null) {
CmmnEngine cmmnEngine = CmmnEngines.getCmmnEngine(processEngine.getName());
if (cmmnEngine != null) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -142,11 +142,9 @@ protected static HistoricCaseInstanceQuery createQuery(JsonNode queryNode, CmmnE
}

protected static void populateQuery(JsonNode queryNode, HistoricCaseInstanceQuery query, CmmnEngineConfiguration engineConfiguration) {
Iterator<Map.Entry<String, JsonNode>> fieldIterator = queryNode.fields();
while (fieldIterator.hasNext()) {
Map.Entry<String, JsonNode> field = fieldIterator.next();
String property = field.getKey();
JsonNode value = field.getValue();
for (Map.Entry<String, JsonNode> propertyEntry : queryNode.properties()) {
String property = propertyEntry.getKey();
JsonNode value = propertyEntry.getValue();
switch (property) {
case "caseDefinitionId":
query.caseDefinitionId(value.textValue());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ protected ExtensionContext.Store getStore(ExtensionContext context) {
return context.getStore(NAMESPACE);
}

protected static class CloseableEngine implements ExtensionContext.Store.CloseableResource {
protected static class CloseableEngine implements AutoCloseable {

protected final CmmnEngine cmmnEngine;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@
import java.time.Month;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;

Expand Down Expand Up @@ -1423,10 +1422,10 @@ public Object aggregateSingleVariable(DelegatePlanItemInstance planItemInstance,
arrayNode.add(sourceNode.deepCopy());
} else if (node.isObject()) {
ObjectNode objectNode = (ObjectNode) node;
Iterator<Map.Entry<String, JsonNode>> fieldsIterator = sourceNode.fields();
while (fieldsIterator.hasNext()) {
Map.Entry<String, JsonNode> field = fieldsIterator.next();
objectNode.set(field.getKey(), field.getValue());
for (Map.Entry<String, JsonNode> property : sourceNode.properties()) {
String propertyName = property.getKey();
JsonNode value = property.getValue();
objectNode.set(propertyName, value);
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "History Case" }, description = "Manage History Case Instances", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "History Case" }, authorizations = { @Authorization(value = "basicAuth") })
public class HistoricCaseInstanceCollectionResource extends HistoricCaseInstanceBaseResource {

@ApiOperation(value = "List of historic case instances", tags = { "History Case" }, nickname = "listHistoricCaseInstances")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "History Case" }, description = "Manage History Case Instances", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "History Case" }, authorizations = { @Authorization(value = "basicAuth") })
public class HistoricCaseInstanceIdentityLinkCollectionResource extends HistoricCaseInstanceBaseResource {

@Autowired
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "History Case" }, description = "Manage History Case Instances", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "History Case" }, authorizations = { @Authorization(value = "basicAuth") })
public class HistoricCaseInstanceQueryResource extends HistoricCaseInstanceBaseResource {

@ApiOperation(value = "Query for historic case instances", tags = {"History Case", "Query" }, nickname = "queryHistoricCaseInstance",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@
* @author Joram Barrez
*/
@RestController
@Api(tags = { "History Case" }, description = "Manage History Case Instances", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "History Case" }, authorizations = { @Authorization(value = "basicAuth") })
public class HistoricCaseInstanceResource extends HistoricCaseInstanceBaseResource {

@Autowired
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "History Process" }, description = "Manage History Process Instances", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "History Process" }, authorizations = { @Authorization(value = "basicAuth") })
public class HistoricCaseInstanceVariableDataResource extends HistoricCaseInstanceBaseResource {

@Autowired
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
* @author DennisFederico
*/
@RestController
@Api(tags = {"History Milestone"}, description = "Manage History Milestone Instances", authorizations = {@Authorization(value = "basicAuth")})
@Api(tags = {"History Milestone"}, authorizations = {@Authorization(value = "basicAuth")})
public class HistoricMilestoneInstanceCollectionResource extends HistoricMilestoneInstanceBaseResource {

private static Map<String, BiConsumer<HistoricMilestoneInstanceQueryRequest, String>> mapping = new HashMap<>();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
* @author Dennis Federico
*/
@RestController
@Api(tags = {"History Milestone"}, description = "Manage History Milestone Instances", authorizations = {@Authorization(value = "basicAuth")})
@Api(tags = {"History Milestone"}, authorizations = {@Authorization(value = "basicAuth")})
public class HistoricMilestoneInstanceQueryResource extends HistoricMilestoneInstanceBaseResource {

@ApiOperation(value = "Query for historic milestone instances", tags = {"History Milestone", "Query"}, nickname = "queryHistoricMilestoneInstance",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
* @author Dennis Federico
*/
@RestController
@Api(tags = {"History Milestone"}, description = "Manage History Milestone Instances", authorizations = {@Authorization(value = "basicAuth")})
@Api(tags = {"History Milestone"}, authorizations = {@Authorization(value = "basicAuth")})
public class HistoricMilestoneInstanceResource extends HistoricMilestoneInstanceBaseResource {

@ApiOperation(value = "Get a historic milestone instance by id", tags = {"History Milestone"}, nickname = "getHistoricMilestoneInstanceById")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
* @author DennisFederico
*/
@RestController
@Api(tags = {"History PlanItem"}, description = "Manage History Plan Item Instances", authorizations = {@Authorization(value = "basicAuth")})
@Api(tags = {"History PlanItem"}, authorizations = {@Authorization(value = "basicAuth")})
public class HistoricPlanItemInstanceCollectionResource extends HistoricPlanItemInstanceBaseResource {

private static Map<String, BiConsumer<HistoricPlanItemInstanceQueryRequest, String>> mapping = new HashMap<>();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
* @author Dennis Federico
*/
@RestController
@Api(tags = {"History PlanItem"}, description = "Manage History Plan Item Instances", authorizations = {@Authorization(value = "basicAuth")})
@Api(tags = {"History PlanItem"}, authorizations = {@Authorization(value = "basicAuth")})
public class HistoricPlanItemInstanceQueryResource extends HistoricPlanItemInstanceBaseResource {

@ApiOperation(value = "Query for historic plan item instances", tags = {"History PlanItem", "Query"}, nickname = "queryHistoricPlanItemInstance",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
* @author Dennis Federico
*/
@RestController
@Api(tags = {"History PlanItem"}, description = "Manage History Plan Item Instances", authorizations = {@Authorization(value = "basicAuth")})
@Api(tags = {"History PlanItem"}, authorizations = {@Authorization(value = "basicAuth")})
public class HistoricPlanItemInstanceResource extends HistoricPlanItemInstanceBaseResource {

@ApiOperation(value = "Get a historic plan item instance", tags = {"History PlanItem"}, nickname = "getHistoricPlanItemInstance")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "History Task" }, description = "Manage History Task Instances", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "History Task" }, authorizations = { @Authorization(value = "basicAuth") })
public class HistoricTaskInstanceCollectionResource extends HistoricTaskInstanceBaseResource {

@ApiOperation(value = "List historic task instances", tags = { "History Task" }, nickname = "listHistoricTaskInstances")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "History Task" }, description = "Manage History Task Instances", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "History Task" }, authorizations = { @Authorization(value = "basicAuth") })
public class HistoricTaskInstanceIdentityLinkCollectionResource extends HistoricTaskInstanceBaseResource {

@Autowired
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "History Task" }, description = "Manage History Task Instances", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "History Task" }, authorizations = { @Authorization(value = "basicAuth") })
public class HistoricTaskInstanceQueryResource extends HistoricTaskInstanceBaseResource {

@ApiOperation(value = "Query for historic task instances", tags = {"History Task", "Query" },
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "History Task" }, description = "Manage History Task Instances", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "History Task" }, authorizations = { @Authorization(value = "basicAuth") })
public class HistoricTaskInstanceResource extends HistoricTaskInstanceBaseResource {

@Autowired
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "History Task" }, description = "Manage History Task Instances", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "History Task" }, authorizations = { @Authorization(value = "basicAuth") })
public class HistoricTaskInstanceVariableDataResource extends HistoricTaskInstanceBaseResource {

@Autowired
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "History" }, description = "Manage History", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "History" }, authorizations = { @Authorization(value = "basicAuth") })
public class HistoricVariableInstanceCollectionResource extends HistoricVariableInstanceBaseResource {

@ApiOperation(value = "List of historic variable instances", tags = { "History" }, nickname = "listHistoricVariableInstances")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "History" }, description = "Manage History", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "History" }, authorizations = { @Authorization(value = "basicAuth") })
public class HistoricVariableInstanceDataResource extends HistoricVariableInstanceBaseResource {

@Autowired
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "History" }, description = "Manage History", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "History" }, authorizations = { @Authorization(value = "basicAuth") })
public class HistoricVariableInstanceQueryResource extends HistoricVariableInstanceBaseResource {

@ApiOperation(value = "Query for historic variable instances", tags = { "History", "Query" },
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
* @author Tijs Rademakers
*/
@RestController
@Api(tags = { "Cmmn Engine" }, description = "Manage Cmmn Engine", authorizations = { @Authorization(value = "basicAuth") })
@Api(tags = { "Cmmn Engine" }, authorizations = { @Authorization(value = "basicAuth") })
public class CmmnEngineResource {

@Autowired(required=false)
Expand Down
Loading