Skip to content

Commit 99a9f8f

Browse files
committed
fix: replace create with constructors
1 parent b6659c8 commit 99a9f8f

File tree

14 files changed

+73
-49
lines changed

14 files changed

+73
-49
lines changed

kobuka-client/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<artifactId>kobuka</artifactId>
77
<groupId>org.swisspush</groupId>
8-
<version>1.0.1</version>
8+
<version>1.0.2</version>
99
</parent>
1010
<modelVersion>4.0.0</modelVersion>
1111

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,18 @@
11
package org.swisspush.kobuka.client;
22

33
import org.swisspush.kobuka.client.base.BaseAdminClientConfigBuilder;
4+
import org.swisspush.kobuka.client.base.BaseCommonClientConfigBuilder;
45

56
public class AdminClientConfigBuilder extends BaseAdminClientConfigBuilder<AdminClientConfigBuilder> {
7+
8+
public AdminClientConfigBuilder() {
9+
}
10+
11+
public AdminClientConfigBuilder(BaseAdminClientConfigBuilder<?> parent) {
12+
copyFrom(parent);
13+
}
14+
15+
public AdminClientConfigBuilder(BaseCommonClientConfigBuilder<?> parent) {
16+
copyFrom(parent);
17+
}
618
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,18 @@
11
package org.swisspush.kobuka.client;
22

3+
import org.swisspush.kobuka.client.base.BaseCommonClientConfigBuilder;
34
import org.swisspush.kobuka.client.base.BaseConsumerConfigBuilder;
45

56
public class ConsumerConfigBuilder extends BaseConsumerConfigBuilder<ConsumerConfigBuilder> {
7+
8+
public ConsumerConfigBuilder() {
9+
}
10+
11+
public ConsumerConfigBuilder(BaseConsumerConfigBuilder<?> parent) {
12+
copyFrom(parent);
13+
}
14+
15+
public ConsumerConfigBuilder(BaseCommonClientConfigBuilder<?> parent) {
16+
copyFrom(parent);
17+
}
618
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,19 @@
11
package org.swisspush.kobuka.client;
22

3+
import org.swisspush.kobuka.client.base.BaseCommonClientConfigBuilder;
4+
import org.swisspush.kobuka.client.base.BaseConsumerConfigBuilder;
35
import org.swisspush.kobuka.client.base.BaseProducerConfigBuilder;
46

57
public class ProducerConfigBuilder extends BaseProducerConfigBuilder<ProducerConfigBuilder> {
8+
9+
public ProducerConfigBuilder() {
10+
}
11+
12+
public ProducerConfigBuilder(BaseProducerConfigBuilder<?> parent) {
13+
copyFrom(parent);
14+
}
15+
16+
public ProducerConfigBuilder(BaseCommonClientConfigBuilder<?> parent) {
17+
copyFrom(parent);
18+
}
619
}

kobuka-client/src/main/java/org/swisspush/kobuka/client/base/BaseAdminClientConfigBuilder.java

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,12 @@
99
public class BaseAdminClientConfigBuilder<T extends BaseAdminClientConfigBuilder<T>>
1010
extends AbstractAdminClientConfigBuilder<T> implements ClientBuilderFunctions<T> {
1111

12-
public static <T extends BaseAdminClientConfigBuilder<T>> BaseAdminClientConfigBuilder<T> create() {
13-
return new BaseAdminClientConfigBuilder<>();
12+
public void copyFrom(BaseAdminClientConfigBuilder<?> parent) {
13+
configs.putAll(parent.configs);
1414
}
1515

16-
public static <T extends BaseAdminClientConfigBuilder<T>> BaseAdminClientConfigBuilder<T> create(BaseAdminClientConfigBuilder<?> parent) {
17-
BaseAdminClientConfigBuilder<T> result = new BaseAdminClientConfigBuilder<>();
18-
result.configs.putAll(parent.configs);
19-
return result;
20-
}
21-
22-
public static <T extends BaseAdminClientConfigBuilder<T>> BaseAdminClientConfigBuilder<T> create(BaseCommonClientConfigBuilder<?> parent) {
23-
BaseAdminClientConfigBuilder<T> result = new BaseAdminClientConfigBuilder<>();
24-
result.configs.putAll(parent.configs);
25-
return result;
16+
public void copyFrom(BaseCommonClientConfigBuilder<?> parent) {
17+
configs.putAll(parent.configs);
2618
}
2719

2820
@Override

kobuka-client/src/main/java/org/swisspush/kobuka/client/base/BaseCommonClientConfigBuilder.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,24 @@
11
package org.swisspush.kobuka.client.base;
22

3+
import java.util.Map;
34
import java.util.function.Function;
45

56
/**
67
* Base class for custom builders. Do not use directly.
78
*/
8-
public class BaseCommonClientConfigBuilder<T extends BaseCommonClientConfigBuilder<T>> extends AbstractCommonClientConfigBuilder<T> {
9+
public class BaseCommonClientConfigBuilder<T extends BaseCommonClientConfigBuilder<T>>
10+
extends AbstractCommonClientConfigBuilder<T>
11+
implements ClientBuilderFunctions<T> {
912

1013
public static BaseCommonClientConfigBuilder<?> create() {
1114
return new BaseCommonClientConfigBuilder<>();
1215
}
1316

17+
@Override
18+
public Map<String, Object> build() {
19+
return configs;
20+
}
21+
1422
public <R> R transform(Function<BaseCommonClientConfigBuilder<?>, R> fn) {
1523
return fn.apply(this);
1624
}

kobuka-client/src/main/java/org/swisspush/kobuka/client/base/BaseConsumerConfigBuilder.java

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,12 @@
99
public class BaseConsumerConfigBuilder<T extends BaseConsumerConfigBuilder<T> & ClientBuilderFunctions<T>>
1010
extends AbstractConsumerConfigBuilder<T> implements ClientBuilderFunctions<T> {
1111

12-
public static <T extends BaseConsumerConfigBuilder<T>> BaseConsumerConfigBuilder<T> create() {
13-
return new BaseConsumerConfigBuilder<T>();
12+
public void copyFrom(BaseConsumerConfigBuilder<?> parent) {
13+
configs.putAll(parent.configs);
1414
}
1515

16-
public static <T extends BaseConsumerConfigBuilder<T>> BaseConsumerConfigBuilder<T> create(BaseConsumerConfigBuilder<?> parent) {
17-
BaseConsumerConfigBuilder<T> result = new BaseConsumerConfigBuilder<>();
18-
result.configs.putAll(parent.configs);
19-
return result;
20-
}
21-
22-
public static <T extends BaseConsumerConfigBuilder<T>> BaseConsumerConfigBuilder<T> create(BaseCommonClientConfigBuilder<?> parent) {
23-
BaseConsumerConfigBuilder<T> result = new BaseConsumerConfigBuilder<>();
24-
result.configs.putAll(parent.configs);
25-
return result;
16+
public void copyFrom(BaseCommonClientConfigBuilder<?> parent) {
17+
configs.putAll(parent.configs);
2618
}
2719

2820
@Override

kobuka-client/src/main/java/org/swisspush/kobuka/client/base/BaseProducerConfigBuilder.java

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,13 @@
88
*/
99
public class BaseProducerConfigBuilder<T extends BaseProducerConfigBuilder<T> & ClientBuilderFunctions<T>>
1010
extends AbstractProducerConfigBuilder<T> implements ClientBuilderFunctions<T> {
11-
public static <T extends BaseProducerConfigBuilder<T>> BaseProducerConfigBuilder<T> create() {
12-
return new BaseProducerConfigBuilder<T>();
13-
}
1411

15-
public static <T extends BaseProducerConfigBuilder<T>> BaseProducerConfigBuilder<T> create(BaseProducerConfigBuilder<?> parent) {
16-
BaseProducerConfigBuilder<T> result = new BaseProducerConfigBuilder<>();
17-
result.configs.putAll(parent.configs);
18-
return result;
12+
public void copyFrom(BaseProducerConfigBuilder<?> parent) {
13+
configs.putAll(parent.configs);
1914
}
2015

21-
public static <T extends BaseProducerConfigBuilder<T>> BaseProducerConfigBuilder<T> create(BaseCommonClientConfigBuilder<?> parent) {
22-
BaseProducerConfigBuilder<T> result = new BaseProducerConfigBuilder<>();
23-
result.configs.putAll(parent.configs);
24-
return result;
16+
public void copyFrom(BaseCommonClientConfigBuilder<?> parent) {
17+
configs.putAll(parent.configs);
2518
}
2619

2720
@Override

kobuka-client/src/test/java/org/swisspush/kobuka/test/client/ConfigBuilderTest.java

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ public void testCopy() {
4747

4848
ConsumerConfig config =
4949
original
50-
.transform(ConsumerConfigBuilder::create)
50+
.transform(ConsumerConfigBuilder::new)
5151
.autoCommitIntervalMs(1234)
5252
.build(ConsumerConfig::new);
5353

@@ -69,14 +69,14 @@ public void testInheritance() {
6969

7070
ConsumerConfig consumerConfig =
7171
commonConfigBuilder
72-
.transform(ConsumerConfigBuilder::create)
72+
.transform(ConsumerConfigBuilder::new)
7373
.keyDeserializer(StringDeserializer.class)
7474
.valueDeserializer(StringDeserializer.class)
7575
.build(ConsumerConfig::new);
7676

7777
ProducerConfig producerConfig =
7878
commonConfigBuilder
79-
.transform(ProducerConfigBuilder::create)
79+
.transform(ProducerConfigBuilder::new)
8080
.keySerializer(StringDeserializer.class)
8181
.valueSerializer(StringDeserializer.class)
8282
.build(ProducerConfig::new);
@@ -149,4 +149,12 @@ private <T> T safeGet(Supplier<T> supplier) {
149149
throw new RuntimeException(e);
150150
}
151151
}
152+
153+
@Test
154+
public void testCast() {
155+
ConsumerConfigBuilder b = new CommonClientConfigBuilder()
156+
.bootstrapServers("localhost:9092")
157+
.transform(ConsumerConfigBuilder::new);
158+
}
159+
152160
}

kobuka-gen/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<artifactId>kobuka</artifactId>
77
<groupId>org.swisspush</groupId>
8-
<version>1.0.1</version>
8+
<version>1.0.2</version>
99
</parent>
1010
<modelVersion>4.0.0</modelVersion>
1111

kobuka-spring/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<artifactId>kobuka</artifactId>
77
<groupId>org.swisspush</groupId>
8-
<version>1.0.1</version>
8+
<version>1.0.2</version>
99
</parent>
1010
<modelVersion>4.0.0</modelVersion>
1111

kobuka-spring/src/main/java/org/swisspush/kobuka/spring/DefaultKafkaConsumerFactoryBuilder.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,4 @@ public DefaultKafkaConsumerFactoryBuilder(Map<String, Object> configs) {
99
configs(configs);
1010
}
1111

12-
public static <K, V> DefaultKafkaConsumerFactoryBuilder<K, V> create(Map<String, Object> configs) {
13-
return new DefaultKafkaConsumerFactoryBuilder<K, V>(configs);
14-
}
1512
}

kobuka-spring/src/main/java/org/swisspush/kobuka/spring/DefaultKafkaProducerFactoryBuilder.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,4 @@ public DefaultKafkaProducerFactoryBuilder(Map<String, Object> configs) {
99
configs(configs);
1010
}
1111

12-
public static <K, V> DefaultKafkaProducerFactoryBuilder<K, V> create(Map<String, Object> configs) {
13-
return new DefaultKafkaProducerFactoryBuilder<K, V>(configs);
14-
}
1512
}

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
<groupId>org.swisspush</groupId>
88
<artifactId>kobuka</artifactId>
99
<packaging>pom</packaging>
10-
<version>1.0.1</version>
10+
<version>1.0.2</version>
1111

1212
<build>
1313
<plugins>

0 commit comments

Comments
 (0)