Skip to content

Commit 9a58722

Browse files
committed
extract super interface, see #667
1 parent 13cf93c commit 9a58722

File tree

14 files changed

+217
-100
lines changed

14 files changed

+217
-100
lines changed

examples/itest/src/test/kotlin/org/camunda/community/rest/itest/SpringBootConfigurationITest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ internal class SpringBootConfigurationITest {
3232
companion object {
3333
val VALUE_MAPPER: ValueMapper =
3434
ValueMapper(objectMapper = jacksonObjectMapper(), valueTypeResolver = ValueTypeResolverImpl(),
35-
customValueMappers = emptyList(),
35+
valueMappers = emptyList(),
3636
serializationFormat = Variables.SerializationDataFormats.JSON)
3737
}
3838

extension/core/src/test/kotlin/org/camunda/community/rest/adapter/LockedExternalTaskAdapterTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ class LockedExternalTaskAdapterTest {
4141
private val valueMapper = ValueMapper(
4242
objectMapper = objectMapper,
4343
valueTypeResolver = typeResolver,
44-
customValueMappers = listOf(JsonFormatValueMapper(objectMapper)),
44+
valueMappers = listOf(JsonFormatValueMapper(objectMapper)),
4545
serializationFormat = Variables.SerializationDataFormats.JSON
4646
)
4747

extension/core/src/test/kotlin/org/camunda/community/rest/impl/builder/DelegatingDecisionEvaluationBuilderTest.kt

Lines changed: 62 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,7 @@ import org.camunda.community.rest.variables.SpinValueMapper
1414
import org.camunda.community.rest.variables.ValueMapper
1515
import org.camunda.community.rest.variables.ValueTypeResolverImpl
1616
import org.junit.Test
17-
import org.mockito.kotlin.any
18-
import org.mockito.kotlin.eq
19-
import org.mockito.kotlin.isNull
20-
import org.mockito.kotlin.mock
21-
import org.mockito.kotlin.whenever
17+
import org.mockito.kotlin.*
2218
import org.springframework.http.ResponseEntity
2319

2420
internal class DelegatingDecisionEvaluationBuilderTest {
@@ -28,7 +24,7 @@ internal class DelegatingDecisionEvaluationBuilderTest {
2824
private val valueMapper = ValueMapper(
2925
objectMapper = jacksonObjectMapper(),
3026
valueTypeResolver = valueTypeResolver,
31-
customValueMappers = listOf(SpinValueMapper(valueTypeResolver)),
27+
valueMappers = listOf(SpinValueMapper(valueTypeResolver)),
3228
serializationFormat = Variables.SerializationDataFormats.JSON
3329
)
3430

@@ -71,9 +67,36 @@ internal class DelegatingDecisionEvaluationBuilderTest {
7167
@Test
7268
fun testEvaluateDecisionWithKeyAndVersion() {
7369
builder.version(1)
74-
whenever(decisionDefinitionApiClient.getDecisionDefinitions(isNull(), isNull(), isNull(), isNull(), isNull(), isNull(), isNull(),
75-
isNull(), isNull(), isNull(), isNull(), eq("decisionDefinitionKey"), isNull(), isNull(), isNull(), eq(1), isNull(), isNull(), isNull(),
76-
isNull(), isNull(), isNull(), isNull(), isNull(), isNull(), isNull(), isNull())
70+
whenever(
71+
decisionDefinitionApiClient.getDecisionDefinitions(
72+
isNull(),
73+
isNull(),
74+
isNull(),
75+
isNull(),
76+
isNull(),
77+
isNull(),
78+
isNull(),
79+
isNull(),
80+
isNull(),
81+
isNull(),
82+
isNull(),
83+
eq("decisionDefinitionKey"),
84+
isNull(),
85+
isNull(),
86+
isNull(),
87+
eq(1),
88+
isNull(),
89+
isNull(),
90+
isNull(),
91+
isNull(),
92+
isNull(),
93+
isNull(),
94+
isNull(),
95+
isNull(),
96+
isNull(),
97+
isNull(),
98+
isNull()
99+
)
77100
).thenReturn(
78101
ResponseEntity.ok(listOf(DecisionDefinitionDto().id("decisionDefinitionId")))
79102
)
@@ -87,9 +110,36 @@ internal class DelegatingDecisionEvaluationBuilderTest {
87110
@Test
88111
fun testEvaluateDecisionWithKeyAndVersionNotFound() {
89112
builder.version(1)
90-
whenever(decisionDefinitionApiClient.getDecisionDefinitions(isNull(), isNull(), isNull(), isNull(), isNull(), isNull(), isNull(),
91-
isNull(), isNull(), isNull(), isNull(), eq("decisionDefinitionKey"), isNull(), isNull(), isNull(), eq(1), isNull(), isNull(), isNull(),
92-
isNull(), isNull(), isNull(), isNull(), isNull(), isNull(), isNull(), isNull())
113+
whenever(
114+
decisionDefinitionApiClient.getDecisionDefinitions(
115+
isNull(),
116+
isNull(),
117+
isNull(),
118+
isNull(),
119+
isNull(),
120+
isNull(),
121+
isNull(),
122+
isNull(),
123+
isNull(),
124+
isNull(),
125+
isNull(),
126+
eq("decisionDefinitionKey"),
127+
isNull(),
128+
isNull(),
129+
isNull(),
130+
eq(1),
131+
isNull(),
132+
isNull(),
133+
isNull(),
134+
isNull(),
135+
isNull(),
136+
isNull(),
137+
isNull(),
138+
isNull(),
139+
isNull(),
140+
isNull(),
141+
isNull()
142+
)
93143
).thenReturn(
94144
ResponseEntity.ok(listOf())
95145
)

extension/core/src/test/kotlin/org/camunda/community/rest/impl/builder/DelegatingDecisionsEvaluationBuilderTest.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,10 @@ internal class DelegatingDecisionsEvaluationBuilderTest {
2222
private val valueMapper = ValueMapper(
2323
objectMapper = jacksonObjectMapper(),
2424
valueTypeResolver = valueTypeResolver,
25-
customValueMappers = listOf(SpinValueMapper(valueTypeResolver)),
25+
valueMappers = listOf(SpinValueMapper(valueTypeResolver)),
2626
serializationFormat = Variables.SerializationDataFormats.JSON
2727
)
2828

29-
3029
val builder = DelegatingDecisionsEvaluationBuilder(
3130
decisionDefinitionApiClient = decisionDefinitionApiClient,
3231
valueMapper = valueMapper,

extension/core/src/test/kotlin/org/camunda/community/rest/impl/builder/DelegatingMessageCorrelationBuilderTest.kt

Lines changed: 55 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,12 @@ class DelegatingMessageCorrelationBuilderTest {
2323
val builder = DelegatingMessageCorrelationBuilder(
2424
messageName = "messageName",
2525
messageApiClient = messageApiClient,
26-
valueMapper = ValueMapper(objectMapper = jacksonObjectMapper(), valueTypeResolver = ValueTypeResolverImpl(), customValueMappers = emptyList(),serializationFormat = Variables.SerializationDataFormats.JSON)
26+
valueMapper = ValueMapper(
27+
objectMapper = jacksonObjectMapper(),
28+
valueTypeResolver = ValueTypeResolverImpl(),
29+
valueMappers = emptyList(),
30+
serializationFormat = Variables.SerializationDataFormats.JSON
31+
)
2732
).apply {
2833
this.localVariableEquals("localVar", "localValue")
2934
// this.processDefinitionId("processDefinitionId")
@@ -38,9 +43,13 @@ class DelegatingMessageCorrelationBuilderTest {
3843
@Test
3944
fun correlateStartMessage() {
4045
whenever(messageApiClient.deliverMessage(any())).thenReturn(
41-
ResponseEntity.ok(listOf(MessageCorrelationResultWithVariableDto().processInstance(
42-
ProcessInstanceDto().id("processInstanceId").ended(false).suspended(false)
43-
)))
46+
ResponseEntity.ok(
47+
listOf(
48+
MessageCorrelationResultWithVariableDto().processInstance(
49+
ProcessInstanceDto().id("processInstanceId").ended(false).suspended(false)
50+
)
51+
)
52+
)
4453
)
4554
val result = builder.correlateStartMessage()
4655
assertThat(result).isNotNull
@@ -50,8 +59,12 @@ class DelegatingMessageCorrelationBuilderTest {
5059
@Test
5160
fun correlateWithResultAndVariables() {
5261
whenever(messageApiClient.deliverMessage(any())).thenReturn(
53-
ResponseEntity.ok(listOf(MessageCorrelationResultWithVariableDto()
54-
.resultType(MessageCorrelationResultWithVariableDto.ResultTypeEnum.EXECUTION)))
62+
ResponseEntity.ok(
63+
listOf(
64+
MessageCorrelationResultWithVariableDto()
65+
.resultType(MessageCorrelationResultWithVariableDto.ResultTypeEnum.EXECUTION)
66+
)
67+
)
5568
)
5669
val result = builder.correlateWithResultAndVariables(true)
5770
assertThat(result).isNotNull
@@ -61,8 +74,12 @@ class DelegatingMessageCorrelationBuilderTest {
6174
@Test
6275
fun correlateAllWithResultAndVariables() {
6376
whenever(messageApiClient.deliverMessage(any())).thenReturn(
64-
ResponseEntity.ok(listOf(MessageCorrelationResultWithVariableDto()
65-
.resultType(MessageCorrelationResultWithVariableDto.ResultTypeEnum.EXECUTION)))
77+
ResponseEntity.ok(
78+
listOf(
79+
MessageCorrelationResultWithVariableDto()
80+
.resultType(MessageCorrelationResultWithVariableDto.ResultTypeEnum.EXECUTION)
81+
)
82+
)
6683
)
6784
val result = builder.correlateAllWithResultAndVariables(true)
6885
assertThat(result).isNotNull
@@ -72,8 +89,12 @@ class DelegatingMessageCorrelationBuilderTest {
7289
@Test
7390
fun correlateAllWithResult() {
7491
whenever(messageApiClient.deliverMessage(any())).thenReturn(
75-
ResponseEntity.ok(listOf(MessageCorrelationResultWithVariableDto()
76-
.resultType(MessageCorrelationResultWithVariableDto.ResultTypeEnum.EXECUTION)))
92+
ResponseEntity.ok(
93+
listOf(
94+
MessageCorrelationResultWithVariableDto()
95+
.resultType(MessageCorrelationResultWithVariableDto.ResultTypeEnum.EXECUTION)
96+
)
97+
)
7798
)
7899
val result = builder.correlateAllWithResult()
79100
assertThat(result).isNotNull
@@ -83,8 +104,12 @@ class DelegatingMessageCorrelationBuilderTest {
83104
@Test
84105
fun correlateWithResult() {
85106
whenever(messageApiClient.deliverMessage(any())).thenReturn(
86-
ResponseEntity.ok(listOf(MessageCorrelationResultWithVariableDto()
87-
.resultType(MessageCorrelationResultWithVariableDto.ResultTypeEnum.PROCESS_DEFINITION)))
107+
ResponseEntity.ok(
108+
listOf(
109+
MessageCorrelationResultWithVariableDto()
110+
.resultType(MessageCorrelationResultWithVariableDto.ResultTypeEnum.PROCESS_DEFINITION)
111+
)
112+
)
88113
)
89114
val result = builder.correlateWithResult()
90115
assertThat(result).isNotNull
@@ -94,8 +119,12 @@ class DelegatingMessageCorrelationBuilderTest {
94119
@Test
95120
fun correlateExclusively() {
96121
whenever(messageApiClient.deliverMessage(any())).thenReturn(
97-
ResponseEntity.ok(listOf(MessageCorrelationResultWithVariableDto()
98-
.resultType(MessageCorrelationResultWithVariableDto.ResultTypeEnum.PROCESS_DEFINITION)))
122+
ResponseEntity.ok(
123+
listOf(
124+
MessageCorrelationResultWithVariableDto()
125+
.resultType(MessageCorrelationResultWithVariableDto.ResultTypeEnum.PROCESS_DEFINITION)
126+
)
127+
)
99128
)
100129
val result = builder.correlateExclusively()
101130
assertThat(result).isNotNull
@@ -104,8 +133,12 @@ class DelegatingMessageCorrelationBuilderTest {
104133
@Test
105134
fun correlateAll() {
106135
whenever(messageApiClient.deliverMessage(any())).thenReturn(
107-
ResponseEntity.ok(listOf(MessageCorrelationResultWithVariableDto()
108-
.resultType(MessageCorrelationResultWithVariableDto.ResultTypeEnum.EXECUTION)))
136+
ResponseEntity.ok(
137+
listOf(
138+
MessageCorrelationResultWithVariableDto()
139+
.resultType(MessageCorrelationResultWithVariableDto.ResultTypeEnum.EXECUTION)
140+
)
141+
)
109142
)
110143
builder.correlateAll()
111144
verify(messageApiClient).deliverMessage(any())
@@ -114,8 +147,12 @@ class DelegatingMessageCorrelationBuilderTest {
114147
@Test
115148
fun correlate() {
116149
whenever(messageApiClient.deliverMessage(any())).thenReturn(
117-
ResponseEntity.ok(listOf(MessageCorrelationResultWithVariableDto()
118-
.resultType(MessageCorrelationResultWithVariableDto.ResultTypeEnum.EXECUTION)))
150+
ResponseEntity.ok(
151+
listOf(
152+
MessageCorrelationResultWithVariableDto()
153+
.resultType(MessageCorrelationResultWithVariableDto.ResultTypeEnum.EXECUTION)
154+
)
155+
)
119156
)
120157
builder.correlate()
121158
verify(messageApiClient).deliverMessage(any())

extension/core/src/test/kotlin/org/camunda/community/rest/impl/builder/DelegatingSignalEventReceivedBuilderTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ class DelegatingSignalEventReceivedBuilderTest {
2222
valueMapper = ValueMapper(
2323
objectMapper = jacksonObjectMapper(),
2424
valueTypeResolver = ValueTypeResolverImpl(),
25-
customValueMappers = emptyList(),
25+
valueMappers = emptyList(),
2626
serializationFormat = Variables.SerializationDataFormats.JSON
2727
)
2828
).apply {

extension/core/src/test/kotlin/org/camunda/community/rest/impl/builder/RemoteExternalTaskQueryBuilderTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ class RemoteExternalTaskQueryBuilderTest {
2626
valueMapper = ValueMapper(
2727
objectMapper = jacksonObjectMapper(),
2828
valueTypeResolver = ValueTypeResolverImpl(),
29-
customValueMappers = emptyList(),
29+
valueMappers = emptyList(),
3030
serializationFormat = Variables.SerializationDataFormats.JSON
3131
),
3232
camundaRestClientProperties,

extension/variables/src/main/kotlin/org/camunda/community/rest/variables/CustomValueMapper.kt

Lines changed: 2 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -23,61 +23,9 @@
2323

2424
package org.camunda.community.rest.variables
2525

26-
import org.camunda.bpm.engine.variable.value.SerializableValue
27-
import org.camunda.bpm.engine.variable.value.TypedValue
28-
2926
/**
30-
* Custom value mapper.
27+
* Implement this interface to provide custom mapping logic.
3128
*/
32-
interface CustomValueMapper {
33-
34-
/**
35-
* Check method.
36-
* @param variableValue value.
37-
* @return `true`of the mapper is responsible.
38-
*/
39-
@Deprecated("Use fine grained check methods instead.")
40-
fun canHandle(value: Any?): Boolean {
41-
return canMapValue(value) ||
42-
canSerializeValue(value as TypedValue) ||
43-
canDeserializeValue(value as SerializableValue)
44-
}
45-
46-
/**
47-
* @param value - the (nullable) value to check
48-
* @return `true` if the #mapValue method should be called.
49-
*/
50-
fun canMapValue(value: Any?): Boolean
51-
52-
/**
53-
* @param value - the typedValue that should be serialized
54-
* @return `true` if the #serializeValue method should be called.
55-
*/
56-
fun canSerializeValue(value: TypedValue): Boolean
57-
58-
/**
59-
* @param value - the serializableValue that should be de-serialized
60-
* @return `true` if the #deserializeValue method should be called.
61-
*/
62-
fun canDeserializeValue(value: SerializableValue): Boolean
63-
64-
65-
/**
66-
* Maps the value into a typed value.
67-
* @return typed representation.
68-
*/
69-
fun mapValue(value: Any?): TypedValue
70-
71-
/**
72-
* Serializes the value (still returning the serializable value type).
73-
* @return serialized representation.
74-
*/
75-
fun serializeValue(value: TypedValue): SerializableValue
76-
77-
/**
78-
* De-serializes the value.
79-
* @return typed value.
80-
*/
81-
fun deserializeValue(value: SerializableValue): TypedValue
29+
interface CustomValueMapper : IValueMapper {
8230

8331
}

0 commit comments

Comments
 (0)