Skip to content

Commit 22edc62

Browse files
authored
refactor: change the tes topic name to be more user-friendly (#1758)
1 parent 2d7626b commit 22edc62

File tree

2 files changed

+35
-34
lines changed

2 files changed

+35
-34
lines changed

src/main/java/com/aws/greengrass/tes/TokenExchangeService.java

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,10 @@ public class TokenExchangeService extends GreengrassService implements AwsCreden
4242
private String iotRoleAlias;
4343
private HttpServerImpl server;
4444

45-
public static final String CLOUD_4XX_ERROR_CACHE_TOPIC = "error4xxCredentialRetryInSec";
46-
public static final String CLOUD_5XX_ERROR_CACHE_TOPIC = "error5xxCredentialRetryInSec";
47-
public static final String UNKNOWN_ERROR_CACHE_TOPIC = "errorUnknownCredentialRetryInSec";
45+
public static final String CREDENTIAL_RETRY_CONFIG_TOPIC = "credentialRetryInSec";
46+
public static final String CLOUD_4XX_ERROR_CACHE_TOPIC = "clientError";
47+
public static final String CLOUD_5XX_ERROR_CACHE_TOPIC = "serverError";
48+
public static final String UNKNOWN_ERROR_CACHE_TOPIC = "unknownError";
4849
private static final int MINIMUM_ERROR_CACHE_IN_SEC = 10;
4950
private static final int MAXIMUM_ERROR_CACHE_IN_SEC = 42_900;
5051
private int cloud4xxErrorCache;
@@ -76,15 +77,15 @@ public TokenExchangeService(Topics topics,
7677

7778
cloud4xxErrorCache = validateErrorCacheConfig(Coerce.toInt(config.findOrDefault(
7879
CredentialRequestHandler.DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY,
79-
CLOUD_4XX_ERROR_CACHE_TOPIC)), CLOUD_4XX_ERROR_CACHE_TOPIC,
80+
CREDENTIAL_RETRY_CONFIG_TOPIC, CLOUD_4XX_ERROR_CACHE_TOPIC)), CLOUD_4XX_ERROR_CACHE_TOPIC,
8081
CredentialRequestHandler.DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC);
8182
cloud5xxErrorCache = validateErrorCacheConfig(Coerce.toInt(config.findOrDefault(
8283
CredentialRequestHandler.DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY,
83-
CLOUD_5XX_ERROR_CACHE_TOPIC)), CLOUD_5XX_ERROR_CACHE_TOPIC,
84+
CREDENTIAL_RETRY_CONFIG_TOPIC, CLOUD_5XX_ERROR_CACHE_TOPIC)), CLOUD_5XX_ERROR_CACHE_TOPIC,
8485
CredentialRequestHandler.DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC);
8586
unknownErrorCache = validateErrorCacheConfig(Coerce.toInt(config.findOrDefault(
8687
CredentialRequestHandler.DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY,
87-
UNKNOWN_ERROR_CACHE_TOPIC)), UNKNOWN_ERROR_CACHE_TOPIC,
88+
CREDENTIAL_RETRY_CONFIG_TOPIC, UNKNOWN_ERROR_CACHE_TOPIC)), UNKNOWN_ERROR_CACHE_TOPIC,
8889
CredentialRequestHandler.DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC);
8990

9091
credentialRequestHandler.configureCacheSettings(cloud4xxErrorCache, cloud5xxErrorCache, unknownErrorCache);
@@ -94,21 +95,19 @@ public TokenExchangeService(Topics topics,
9495
if (why.equals(WhatHappened.timestampUpdated)) {
9596
return;
9697
}
97-
if (node != null && (node.childOf(CLOUD_4XX_ERROR_CACHE_TOPIC)
98-
|| node.childOf(CLOUD_5XX_ERROR_CACHE_TOPIC)
99-
|| node.childOf(UNKNOWN_ERROR_CACHE_TOPIC))) {
98+
if (node != null && node.childOf(CREDENTIAL_RETRY_CONFIG_TOPIC)) {
10099

101100
int newCloud4xxErrorCache = validateErrorCacheConfig(Coerce.toInt(config.findOrDefault(
102101
CredentialRequestHandler.DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY,
103-
CLOUD_4XX_ERROR_CACHE_TOPIC)), CLOUD_4XX_ERROR_CACHE_TOPIC,
102+
CREDENTIAL_RETRY_CONFIG_TOPIC, CLOUD_4XX_ERROR_CACHE_TOPIC)), CLOUD_4XX_ERROR_CACHE_TOPIC,
104103
CredentialRequestHandler.DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC);
105104
int newCloud5xxErrorCache = validateErrorCacheConfig(Coerce.toInt(config.findOrDefault(
106105
CredentialRequestHandler.DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY,
107-
CLOUD_5XX_ERROR_CACHE_TOPIC)), CLOUD_5XX_ERROR_CACHE_TOPIC,
106+
CREDENTIAL_RETRY_CONFIG_TOPIC, CLOUD_5XX_ERROR_CACHE_TOPIC)), CLOUD_5XX_ERROR_CACHE_TOPIC,
108107
CredentialRequestHandler.DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC);
109108
int newUnknownErrorCache = validateErrorCacheConfig(Coerce.toInt(config.findOrDefault(
110109
CredentialRequestHandler.DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY,
111-
UNKNOWN_ERROR_CACHE_TOPIC)), UNKNOWN_ERROR_CACHE_TOPIC,
110+
CREDENTIAL_RETRY_CONFIG_TOPIC, UNKNOWN_ERROR_CACHE_TOPIC)), UNKNOWN_ERROR_CACHE_TOPIC,
112111
CredentialRequestHandler.DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC);
113112

114113
if (cloud4xxErrorCache != newCloud4xxErrorCache
@@ -122,9 +121,9 @@ public TokenExchangeService(Topics topics,
122121
credentialRequestHandler.configureCacheSettings(
123122
newCloud4xxErrorCache, newCloud5xxErrorCache, newUnknownErrorCache);
124123

125-
logger.atInfo("tes-error-cache-config-change")
124+
logger.atInfo("tes-credential-retry-config-change")
126125
.kv("node", node).kv("why", why)
127-
.log("TES error cache configuration updated");
126+
.log("TES credential retry configuration updated");
128127
}
129128
}
130129
if (node != null && node.childOf(PORT_TOPIC)) {
@@ -196,8 +195,9 @@ private void validateConfig() {
196195
private int validateErrorCacheConfig(int newCacheValue, String topic, int defaultCacheValue) {
197196
if (newCacheValue < MINIMUM_ERROR_CACHE_IN_SEC || newCacheValue > MAXIMUM_ERROR_CACHE_IN_SEC) {
198197
logger.atError()
199-
.log("Error cache value must be between {} and {} seconds, setting {} to default value {}",
200-
MINIMUM_ERROR_CACHE_IN_SEC, MAXIMUM_ERROR_CACHE_IN_SEC, topic, defaultCacheValue);
198+
.log("Credential retry value must be between {} and {} seconds, setting {}.{} to default value {}",
199+
MINIMUM_ERROR_CACHE_IN_SEC, MAXIMUM_ERROR_CACHE_IN_SEC, CREDENTIAL_RETRY_CONFIG_TOPIC,
200+
topic, defaultCacheValue);
201201
return defaultCacheValue;
202202
}
203203
return newCacheValue;

src/test/java/com/aws/greengrass/tes/TokenExchangeServiceTest.java

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
import static com.aws.greengrass.tes.TokenExchangeService.ACTIVE_PORT_TOPIC;
5555
import static com.aws.greengrass.tes.TokenExchangeService.CLOUD_4XX_ERROR_CACHE_TOPIC;
5656
import static com.aws.greengrass.tes.TokenExchangeService.CLOUD_5XX_ERROR_CACHE_TOPIC;
57+
import static com.aws.greengrass.tes.TokenExchangeService.CREDENTIAL_RETRY_CONFIG_TOPIC;
5758
import static com.aws.greengrass.tes.TokenExchangeService.PORT_TOPIC;
5859
import static com.aws.greengrass.tes.TokenExchangeService.TES_URI_ENV_VARIABLE_NAME;
5960
import static com.aws.greengrass.tes.TokenExchangeService.TOKEN_EXCHANGE_SERVICE_TOPICS;
@@ -162,14 +163,14 @@ void GIVEN_token_exchange_service_WHEN_started_THEN_correct_env_set(int port) th
162163
return null;
163164
});
164165

165-
when(config.findOrDefault(DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, CLOUD_4XX_ERROR_CACHE_TOPIC))
166-
.thenReturn(DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC);
166+
when(config.findOrDefault(DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, CREDENTIAL_RETRY_CONFIG_TOPIC,
167+
CLOUD_4XX_ERROR_CACHE_TOPIC)).thenReturn(DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC);
167168

168-
when(config.findOrDefault(DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, CLOUD_5XX_ERROR_CACHE_TOPIC))
169-
.thenReturn(DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC);
169+
when(config.findOrDefault(DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, CREDENTIAL_RETRY_CONFIG_TOPIC,
170+
CLOUD_5XX_ERROR_CACHE_TOPIC)).thenReturn(DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC);
170171

171-
when(config.findOrDefault(DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, UNKNOWN_ERROR_CACHE_TOPIC))
172-
.thenReturn(DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC);
172+
when(config.findOrDefault(DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, CREDENTIAL_RETRY_CONFIG_TOPIC,
173+
UNKNOWN_ERROR_CACHE_TOPIC)).thenReturn(DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC);
173174

174175
TokenExchangeService tes = new TokenExchangeService(config,
175176
mockCredentialHandler,
@@ -219,14 +220,14 @@ void GIVEN_token_exchange_service_WHEN_started_with_empty_role_alias_THEN_server
219220
when(configuration.lookup(SERVICES_NAMESPACE_TOPIC, DEFAULT_NUCLEUS_COMPONENT_NAME, CONFIGURATION_CONFIG_KEY,
220221
IOT_ROLE_ALIAS_TOPIC)).thenReturn(roleTopic);
221222

222-
when(config.findOrDefault(DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, CLOUD_4XX_ERROR_CACHE_TOPIC))
223-
.thenReturn(DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC);
223+
when(config.findOrDefault(DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, CREDENTIAL_RETRY_CONFIG_TOPIC,
224+
CLOUD_4XX_ERROR_CACHE_TOPIC)).thenReturn(DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC);
224225

225-
when(config.findOrDefault(DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, CLOUD_5XX_ERROR_CACHE_TOPIC))
226-
.thenReturn(DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC);
226+
when(config.findOrDefault(DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, CREDENTIAL_RETRY_CONFIG_TOPIC,
227+
CLOUD_5XX_ERROR_CACHE_TOPIC)).thenReturn(DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC);
227228

228-
when(config.findOrDefault(DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, UNKNOWN_ERROR_CACHE_TOPIC))
229-
.thenReturn(DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC);
229+
when(config.findOrDefault(DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, CREDENTIAL_RETRY_CONFIG_TOPIC,
230+
UNKNOWN_ERROR_CACHE_TOPIC)).thenReturn(DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC);
230231

231232
TokenExchangeService tes = spy(new TokenExchangeService(config,
232233
mockCredentialHandler,
@@ -258,14 +259,14 @@ void GIVEN_token_exchange_service_WHEN_auth_errors_THEN_server_errors_out(Extens
258259
when(configuration.lookup(SERVICES_NAMESPACE_TOPIC, DEFAULT_NUCLEUS_COMPONENT_NAME, CONFIGURATION_CONFIG_KEY,
259260
IOT_ROLE_ALIAS_TOPIC)).thenReturn(roleTopic);
260261

261-
when(config.findOrDefault(DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, CLOUD_4XX_ERROR_CACHE_TOPIC))
262-
.thenReturn(DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC);
262+
when(config.findOrDefault(DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, CREDENTIAL_RETRY_CONFIG_TOPIC,
263+
CLOUD_4XX_ERROR_CACHE_TOPIC)).thenReturn(DEFAULT_CLOUD_4XX_ERROR_CACHE_IN_SEC);
263264

264-
when(config.findOrDefault(DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, CLOUD_5XX_ERROR_CACHE_TOPIC))
265-
.thenReturn(DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC);
265+
when(config.findOrDefault(DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, CREDENTIAL_RETRY_CONFIG_TOPIC,
266+
CLOUD_5XX_ERROR_CACHE_TOPIC)).thenReturn(DEFAULT_CLOUD_5XX_ERROR_CACHE_IN_SEC);
266267

267-
when(config.findOrDefault(DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, UNKNOWN_ERROR_CACHE_TOPIC))
268-
.thenReturn(DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC);
268+
when(config.findOrDefault(DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC, CONFIGURATION_CONFIG_KEY, CREDENTIAL_RETRY_CONFIG_TOPIC,
269+
UNKNOWN_ERROR_CACHE_TOPIC)).thenReturn(DEFAULT_UNKNOWN_ERROR_CACHE_IN_SEC);
269270

270271
TokenExchangeService tes = spy(new TokenExchangeService(config,
271272
mockCredentialHandler,

0 commit comments

Comments
 (0)