Skip to content

Commit b1915fa

Browse files
committed
java-wrapper: 1.1
1 parent 29c88a8 commit b1915fa

6 files changed

Lines changed: 46 additions & 72 deletions

File tree

pom.xml

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>co.featureflags</groupId>
88
<artifactId>ffc-java-server-sdk-wrapper</artifactId>
9-
<version>1.0</version>
9+
<version>1.1</version>
1010

1111
<parent>
1212
<groupId>org.springframework.boot</groupId>
@@ -40,9 +40,15 @@
4040
<repositories>
4141
<repository>
4242
<id>github-ffc-java-sdk-repo</id>
43-
<name>The Maven Repository on Github</name>
43+
<name>github-ffc-java-sdk-repo</name>
4444
<url>https://feature-flags-co.github.io/ffc-java-sdk/maven-repo</url>
4545
</repository>
46+
47+
<repository>
48+
<id>github-ffc-java-intergrations-repo</id>
49+
<name>The Maven Repository on Github</name>
50+
<url>https://feature-flags-co.github.io/ffc-java-intergrations/maven-repo</url>
51+
</repository>
4652
</repositories>
4753

4854
<properties>
@@ -61,7 +67,7 @@
6167

6268
<dependency>
6369
<groupId>co.featureflags</groupId>
64-
<artifactId>ffc-java-server-sdk</artifactId>
70+
<artifactId>ffc-java-springboot</artifactId>
6571
<version>1.0</version>
6672
</dependency>
6773

src/main/java/co/featureflags/wrapper/config/SDKConfig.java

Lines changed: 0 additions & 61 deletions
This file was deleted.

src/main/java/co/featureflags/wrapper/controller/FeatureFlagController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ public class FeatureFlagController {
2525

2626
private final FFCSDKService sdkService;
2727

28-
@Value("${ffc.envSecret}")
28+
@Value("${ffc.spring.env-secret}")
2929
private String envSecret;
3030

3131
private final static String INVALID_REQUEST = "Unauthorized";

src/main/java/co/featureflags/wrapper/model/Message.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
package co.featureflags.wrapper.model;
22

3-
import co.featureflags.commons.model.BasicState;
3+
import co.featureflags.commons.model.BasicFlagState;
44

5-
public final class Message extends BasicState {
5+
public final class Message extends BasicFlagState {
66
private Message(boolean success, String message) {
77
super(success, message);
88
}

src/main/java/co/featureflags/wrapper/services/FFCSDKServiceImp.java

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,23 +5,29 @@
55
import co.featureflags.commons.model.FlagState;
66
import co.featureflags.server.exterior.FFCClient;
77
import co.featureflags.wrapper.model.Message;
8+
import org.apache.commons.lang3.StringUtils;
89
import org.slf4j.Logger;
910
import org.slf4j.LoggerFactory;
11+
import org.springframework.beans.factory.InitializingBean;
1012
import org.springframework.beans.factory.annotation.Autowired;
1113
import org.springframework.beans.factory.annotation.Value;
1214
import org.springframework.stereotype.Service;
1315

1416
import java.io.BufferedWriter;
1517
import java.io.FileWriter;
18+
import java.io.IOException;
19+
import java.nio.file.Files;
20+
import java.nio.file.Path;
21+
import java.nio.file.Paths;
1622

1723
@Service
18-
public class FFCSDKServiceImp implements FFCSDKService {
24+
public class FFCSDKServiceImp implements FFCSDKService, InitializingBean {
1925

2026
private final static Logger LOG = LoggerFactory.getLogger(FFCSDKServiceImp.class);
2127

2228
private final static String DEFAULT_VALUE = "NOT FOUND";
2329

24-
@Value("${ffc.offline}")
30+
@Value("${ffc.spring.offline}")
2531
private boolean offline;
2632

2733
@Value("${ffc.dataFile}")
@@ -63,4 +69,26 @@ public Message initializeFromExternalJson(String json) {
6369
return Message.ERROR(unexpected.getMessage());
6470
}
6571
}
72+
73+
@Override
74+
public void afterPropertiesSet() throws Exception {
75+
if (offline) {
76+
String json = null;
77+
Path path = Paths.get(dataFile);
78+
if (Files.isRegularFile(path)) {
79+
try {
80+
json = Files.lines(path)
81+
.reduce((s, line) -> s.concat(line))
82+
.orElse(null);
83+
if (StringUtils.isNotEmpty(json)) {
84+
client.initializeFromExternalJson(json);
85+
LOG.info("initializing from a file works well");
86+
}
87+
} catch (IOException unexpected) {
88+
LOG.warn("initializing from a file didn't work well: {}", unexpected.getMessage());
89+
}
90+
}
91+
}
92+
}
93+
6694
}

src/main/resources/application.properties

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ management.endpoints.web.base-path=/
1111
management.endpoints.web.path-mapping.health=health
1212
management.server.port=${healthPort:8081}
1313

14-
ffc.offline=${offline: true}
15-
ffc.envSecret=${envSecret}
16-
ffc.dataFile=${dataFile:/data/data.json}
14+
ffc.dataFile=${dataFile:/data/data.json}
15+
16+
ffc.spring.env-secret=${envSecret}
17+
ffc.spring.offline=${offline: true}

0 commit comments

Comments
 (0)