Skip to content

Commit 07fd353

Browse files
committed
Use stackify-api.properties for configuration of log appenders
1 parent ee98a96 commit 07fd353

2 files changed

Lines changed: 20 additions & 18 deletions

File tree

src/main/java/com/stackify/api/common/ApiConfigurations.java

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,6 @@
2323
import org.slf4j.Logger;
2424
import org.slf4j.LoggerFactory;
2525

26-
import com.google.common.base.Preconditions;
27-
2826
/**
2927
* ApiConfigurations
3028
* @author Eric Martin
@@ -44,16 +42,20 @@ public class ApiConfigurations {
4442
* @param environment Configured environment name
4543
* @return ApiConfiguration
4644
*/
47-
public static ApiConfiguration from(final String apiUrl, final String apiKey, final String application, final String environment) {
48-
Preconditions.checkNotNull(apiKey);
49-
Preconditions.checkArgument(!apiKey.isEmpty());
45+
public static ApiConfiguration fromPropertiesWithOverrides(final String apiUrl, final String apiKey, final String application, final String environment) {
46+
ApiConfiguration props = ApiConfigurations.fromProperties();
47+
48+
String mergedApiUrl = ((apiUrl != null) && (0 < apiUrl.length())) ? apiUrl : props.getApiUrl();
49+
String mergedApiKey = ((apiKey != null) && (0 < apiKey.length())) ? apiKey : props.getApiKey();
50+
String mergedApplication = ((application != null) && (0 < application.length())) ? application : props.getApplication();
51+
String mergedEnvironment = ((environment != null) && (0 < environment.length())) ? environment : props.getEnvironment();
5052

5153
ApiConfiguration.Builder builder = ApiConfiguration.newBuilder();
52-
builder.apiUrl(apiUrl);
53-
builder.apiKey(apiKey);
54-
builder.application(application);
55-
builder.environment(environment);
56-
builder.envDetail(EnvironmentDetails.getEnvironmentDetail(application, environment));
54+
builder.apiUrl(mergedApiUrl);
55+
builder.apiKey(mergedApiKey);
56+
builder.application(mergedApplication);
57+
builder.environment(mergedEnvironment);
58+
builder.envDetail(EnvironmentDetails.getEnvironmentDetail(mergedApplication, mergedEnvironment));
5759

5860
return builder.build();
5961
}

src/test/java/com/stackify/api/common/ApiConfigurationsTest.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,16 +25,16 @@
2525
public class ApiConfigurationsTest {
2626

2727
/**
28-
* testExplicit
28+
* fromPropertiesWithOverrides
2929
*/
3030
@Test
31-
public void testExplicit() {
32-
String apiUrl = "url";
33-
String apiKey = "key";
34-
String application = "app";
35-
String environment = "env";
31+
public void fromPropertiesWithOverrides() {
32+
String apiUrl = "urlOverride";
33+
String apiKey = "keyOverride";
34+
String application = "appOverride";
35+
String environment = "envOverride";
3636

37-
ApiConfiguration apiConfig = ApiConfigurations.from(apiUrl, apiKey, application, environment);
37+
ApiConfiguration apiConfig = ApiConfigurations.fromPropertiesWithOverrides(apiUrl, apiKey, application, environment);
3838

3939
Assert.assertNotNull(apiConfig);
4040
Assert.assertEquals(apiUrl, apiConfig.getApiUrl());
@@ -45,7 +45,7 @@ public void testExplicit() {
4545
}
4646

4747
/**
48-
* testExplicit
48+
* testFromProperties
4949
*/
5050
@Test
5151
public void testFromProperties() {

0 commit comments

Comments
 (0)