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
2 changes: 1 addition & 1 deletion client/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

<dependencies>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<groupId>tools.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
import java.time.LocalDateTime;
import java.util.Date;

import com.fasterxml.jackson.databind.JsonNode;
import tools.jackson.databind.JsonNode;

/**
* A builder that can be used to complete a specific job.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,10 @@
import java.util.function.Function;
import java.util.function.Supplier;

import com.fasterxml.jackson.databind.node.ObjectNode;
import org.flowable.external.client.FlowableClientException;

import tools.jackson.databind.node.ObjectNode;

/**
* @author Filip Hrisafov
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,14 @@
*/
package org.flowable.external.client.impl;

import com.fasterxml.jackson.databind.ObjectMapper;
import org.flowable.external.client.AcquiredExternalWorkerJob;
import org.flowable.external.client.ExternalWorkerClient;
import org.flowable.external.client.ExternalWorkerJobAcquireBuilder;
import org.flowable.external.client.ExternalWorkerJobCompletionBuilder;
import org.flowable.external.client.ExternalWorkerJobFailureBuilder;

import tools.jackson.databind.ObjectMapper;

/**
* @author Filip Hrisafov
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,24 +18,23 @@
import java.util.Date;
import java.util.function.Function;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.BooleanNode;
import com.fasterxml.jackson.databind.node.DoubleNode;
import com.fasterxml.jackson.databind.node.IntNode;
import com.fasterxml.jackson.databind.node.LongNode;
import com.fasterxml.jackson.databind.node.NullNode;
import com.fasterxml.jackson.databind.node.ObjectNode;
import com.fasterxml.jackson.databind.node.ShortNode;
import com.fasterxml.jackson.databind.node.TextNode;
import com.fasterxml.jackson.databind.util.ISO8601Utils;
import org.flowable.external.client.AcquiredExternalWorkerJob;
import org.flowable.external.client.ExternalWorkerJobCompletionBuilder;
import org.flowable.external.client.FlowableClientException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import tools.jackson.core.JacksonException;
import tools.jackson.databind.JsonNode;
import tools.jackson.databind.ObjectMapper;
import tools.jackson.databind.node.BooleanNode;
import tools.jackson.databind.node.DoubleNode;
import tools.jackson.databind.node.IntNode;
import tools.jackson.databind.node.LongNode;
import tools.jackson.databind.node.NullNode;
import tools.jackson.databind.node.ObjectNode;
import tools.jackson.databind.node.ShortNode;
import tools.jackson.databind.node.StringNode;

/**
* @author Filip Hrisafov
Expand All @@ -59,7 +58,7 @@ public RestExternalWorkerCompletionBuilder(AcquiredExternalWorkerJob workerJob,

@Override
public ExternalWorkerJobCompletionBuilder variable(String name, String value) {
return addVariableToRequest(name, "string", value, TextNode::valueOf);
return addVariableToRequest(name, "string", value, StringNode::valueOf);
}

@Override
Expand Down Expand Up @@ -89,22 +88,22 @@ public ExternalWorkerJobCompletionBuilder variable(String name, Boolean value) {

@Override
public ExternalWorkerJobCompletionBuilder variable(String name, Date value) {
return addVariableToRequest(name, "date", value, v -> TextNode.valueOf(ISO8601Utils.format(v)));
return addVariableToRequest(name, "date", value, v -> StringNode.valueOf(v.toInstant().toString()));
}

@Override
public ExternalWorkerJobCompletionBuilder variable(String name, Instant value) {
return addVariableToRequest(name, "instant", value, v -> TextNode.valueOf(v.toString()));
return addVariableToRequest(name, "instant", value, v -> StringNode.valueOf(v.toString()));
}

@Override
public ExternalWorkerJobCompletionBuilder variable(String name, LocalDate value) {
return addVariableToRequest(name, "localDate", value, v -> TextNode.valueOf(v.toString()));
return addVariableToRequest(name, "localDate", value, v -> StringNode.valueOf(v.toString()));
}

@Override
public ExternalWorkerJobCompletionBuilder variable(String name, LocalDateTime value) {
return addVariableToRequest(name, "localDateTime", value, v -> TextNode.valueOf(v.toString()));
return addVariableToRequest(name, "localDateTime", value, v -> StringNode.valueOf(v.toString()));
}

@Override
Expand All @@ -130,7 +129,7 @@ protected JsonNode convertToJson(Object value) {
try {
String serializedValue = objectMapper.writeValueAsString(value);
return objectMapper.readTree(serializedValue);
} catch (JsonProcessingException e) {
} catch (JacksonException e) {
throw new FlowableClientException("Failed to convert value of type " + value.getClass().getName() + " to json", e);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,14 @@
import java.io.UncheckedIOException;
import java.time.Duration;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ObjectNode;
import org.flowable.external.client.AcquiredExternalWorkerJob;
import org.flowable.external.client.ExternalWorkerJobFailureBuilder;
import org.flowable.external.client.FlowableClientException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import tools.jackson.databind.ObjectMapper;
import tools.jackson.databind.node.ObjectNode;

/**
* @author Filip Hrisafov
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,26 +12,24 @@
*/
package org.flowable.external.client.impl;

import java.text.ParseException;
import java.text.ParsePosition;
import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.function.BiConsumer;

import org.flowable.external.client.AcquiredExternalWorkerJob;
import org.flowable.external.client.FlowableClientException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.fasterxml.jackson.databind.node.ObjectNode;
import com.fasterxml.jackson.databind.util.ISO8601Utils;
import org.flowable.external.client.AcquiredExternalWorkerJob;
import org.flowable.external.client.FlowableClientException;
import tools.jackson.core.JacksonException;
import tools.jackson.databind.JsonNode;
import tools.jackson.databind.ObjectMapper;
import tools.jackson.databind.node.ArrayNode;
import tools.jackson.databind.node.ObjectNode;

/**
* @author Filip Hrisafov
Expand Down Expand Up @@ -104,7 +102,7 @@ protected List<AcquiredExternalWorkerJob> asList(String response) {
}

return jobs;
} catch (JsonProcessingException e) {
} catch (JacksonException e) {
throw new FlowableClientException("Failed to read response", e);
}
}
Expand Down Expand Up @@ -182,13 +180,7 @@ protected Object parseVariableValue(String type, JsonNode valueNode) {
case "boolean" -> valueNode.booleanValue();
case "double" -> valueNode.doubleValue();
case "long" -> valueNode.longValue();
case "date" -> {
try {
yield ISO8601Utils.parse(valueNode.textValue(), new ParsePosition(0));
} catch (ParseException e) {
yield null;
}
}
case "date" -> Date.from(Instant.parse(valueNode.textValue()));
case "instant" -> Instant.parse(valueNode.textValue());
case "localDate" -> LocalDate.parse(valueNode.textValue());
case "localDateTime" -> LocalDateTime.parse(valueNode.textValue());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
*/
package org.flowable.external.client.impl;

import com.fasterxml.jackson.databind.node.ObjectNode;
import tools.jackson.databind.node.ObjectNode;

/**
* @author Filip Hrisafov
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,8 @@
import org.microhttp.Request;
import org.microhttp.Response;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ObjectNode;
import tools.jackson.databind.ObjectMapper;
import tools.jackson.databind.node.ObjectNode;

/**
* @author Filip Hrisafov
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,18 +26,18 @@
import java.util.List;
import java.util.Map;

import org.flowable.external.client.AcquiredExternalWorkerJob;
import org.flowable.external.client.ExternalWorkerClient;
import org.flowable.external.client.ExternalWorkerJob;
import org.flowable.external.client.FlowableClientException;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.ValueSource;
import org.junit.platform.commons.util.ExceptionUtils;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ObjectNode;
import org.flowable.external.client.AcquiredExternalWorkerJob;
import org.flowable.external.client.ExternalWorkerClient;
import org.flowable.external.client.ExternalWorkerJob;
import org.flowable.external.client.FlowableClientException;
import tools.jackson.databind.ObjectMapper;
import tools.jackson.databind.node.ObjectNode;

/**
* @author Filip Hrisafov
Expand Down
4 changes: 2 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
<java.version>17</java.version>
<maven.compiler.source>${java.version}</maven.compiler.source>
<maven.compiler.target>${java.version}</maven.compiler.target>
<spring-boot.version>3.1.2</spring-boot.version>
<spring-boot.version>4.0.3</spring-boot.version>

<distributionManagementSnapshotsUrl>https://oss.sonatype.org/content/repositories/snapshots/</distributionManagementSnapshotsUrl>

Expand Down Expand Up @@ -78,7 +78,7 @@
<dependency>
<groupId>net.javacrumbs.json-unit</groupId>
<artifactId>json-unit-assertj</artifactId>
<version>3.0.0</version>
<version>5.1.0</version>
</dependency>

</dependencies>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,13 @@
*/
package org.flowable.external.worker.spring.boot;

import org.flowable.external.client.ExternalWorkerClient;
import org.flowable.external.client.impl.RestExternalWorkerClient;
import org.flowable.external.client.impl.RestInvoker;
import org.flowable.external.worker.annotation.EnableFlowableWorker;
import org.flowable.external.worker.config.DefaultFlowableWorkerContainerFactory;
import org.flowable.external.worker.config.FlowableWorkerConfigUtils;
import org.flowable.external.worker.config.FlowableWorkerContainerFactory;
import org.springframework.beans.factory.ObjectProvider;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
Expand All @@ -22,14 +29,7 @@
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;

import com.fasterxml.jackson.databind.ObjectMapper;
import org.flowable.external.client.ExternalWorkerClient;
import org.flowable.external.client.impl.RestExternalWorkerClient;
import org.flowable.external.client.impl.RestInvoker;
import org.flowable.external.worker.annotation.EnableFlowableWorker;
import org.flowable.external.worker.config.DefaultFlowableWorkerContainerFactory;
import org.flowable.external.worker.config.FlowableWorkerConfigUtils;
import org.flowable.external.worker.config.FlowableWorkerContainerFactory;
import tools.jackson.databind.ObjectMapper;

/**
* @author Filip Hrisafov
Expand All @@ -56,8 +56,7 @@ public FlowableWorkerContainerFactory<?> flowableWorkerContainerFactory(External
DefaultFlowableWorkerContainerFactory workContainerFactory = new DefaultFlowableWorkerContainerFactory();
workContainerFactory.setExternalWorkerClient(externalWorkerClient);

PropertyMapper propertyMapper = PropertyMapper.get()
.alwaysApplyingWhenNonNull();
PropertyMapper propertyMapper = PropertyMapper.get();
propertyMapper.from(properties.getConcurrency()).to(workContainerFactory::setConcurrency);
propertyMapper.from(properties.getLockDuration()).to(workContainerFactory::setLockDuration);
propertyMapper.from(properties.getNumberOfRetries()).to(workContainerFactory::setNumberOfRetries);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,13 @@
import java.util.function.BiConsumer;
import java.util.function.Consumer;

import org.flowable.external.client.ExternalWorkerClient;
import org.flowable.external.client.impl.JavaHttpClientRestInvoker;
import org.flowable.external.client.impl.RestInvoker;
import org.flowable.external.worker.config.DefaultFlowableWorkerContainerFactory;
import org.flowable.external.worker.config.FlowableWorkerContainerFactory;
import org.flowable.external.worker.config.FlowableWorkerEndpoint;
import org.flowable.external.worker.listener.WorkerJobListenerContainer;
import org.junit.jupiter.api.Test;
import org.microhttp.EventLoop;
import org.microhttp.Handler;
Expand All @@ -41,14 +48,7 @@
import org.springframework.boot.test.context.assertj.AssertableApplicationContext;
import org.springframework.boot.test.context.runner.ApplicationContextRunner;

import com.fasterxml.jackson.databind.ObjectMapper;
import org.flowable.external.client.ExternalWorkerClient;
import org.flowable.external.client.impl.JavaHttpClientRestInvoker;
import org.flowable.external.client.impl.RestInvoker;
import org.flowable.external.worker.config.DefaultFlowableWorkerContainerFactory;
import org.flowable.external.worker.config.FlowableWorkerContainerFactory;
import org.flowable.external.worker.config.FlowableWorkerEndpoint;
import org.flowable.external.worker.listener.WorkerJobListenerContainer;
import tools.jackson.databind.ObjectMapper;

/**
* @author Filip Hrisafov
Expand Down
14 changes: 3 additions & 11 deletions workers/spring/starter/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -25,20 +25,12 @@
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<groupId>tools.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jdk8</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jsr310</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.module</groupId>
<artifactId>jackson-module-parameter-names</artifactId>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-json</artifactId>
</dependency>
</dependencies>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@

import org.flowable.external.worker.annotation.FlowableWorker;

import com.fasterxml.jackson.databind.JsonNode;
import tools.jackson.databind.JsonNode;

/**
* A result that can be returned by a method annotated with {@link FlowableWorker @FlowableWorker}.
Expand Down
Loading