Skip to content

Commit 678e04e

Browse files
committed
minor refactoring of use of autocloseablelock in try with resources
Signed-off-by: jarebudev <[email protected]>
1 parent 53fbb2c commit 678e04e

File tree

2 files changed

+40
-22
lines changed

2 files changed

+40
-22
lines changed

src/main/java/dev/openfeature/sdk/OpenFeatureAPI.java

+32-17
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package dev.openfeature.sdk;
22

33
import dev.openfeature.sdk.exceptions.OpenFeatureError;
4-
import dev.openfeature.sdk.internal.AutoCloseableLock;
54
import dev.openfeature.sdk.internal.AutoCloseableReentrantReadWriteLock;
65
import java.util.ArrayList;
76
import java.util.Arrays;
@@ -115,7 +114,8 @@ public Client getClient(String domain, String version) {
115114
* @return api instance
116115
*/
117116
public OpenFeatureAPI setEvaluationContext(EvaluationContext evaluationContext) {
118-
try (AutoCloseableLock __ = lock.writeLockAutoCloseable()) {
117+
var autoCloseableLock = lock.writeLockAutoCloseable();
118+
try (autoCloseableLock) {
119119
this.evaluationContext = evaluationContext;
120120
}
121121
return this;
@@ -127,7 +127,8 @@ public OpenFeatureAPI setEvaluationContext(EvaluationContext evaluationContext)
127127
* @return evaluation context
128128
*/
129129
public EvaluationContext getEvaluationContext() {
130-
try (AutoCloseableLock __ = lock.readLockAutoCloseable()) {
130+
var autoCloseableLock = lock.readLockAutoCloseable();
131+
try (autoCloseableLock) {
131132
return this.evaluationContext;
132133
}
133134
}
@@ -136,7 +137,8 @@ public EvaluationContext getEvaluationContext() {
136137
* Return the transaction context propagator.
137138
*/
138139
public TransactionContextPropagator getTransactionContextPropagator() {
139-
try (AutoCloseableLock __ = lock.readLockAutoCloseable()) {
140+
var autoCloseableLock = lock.readLockAutoCloseable();
141+
try (autoCloseableLock) {
140142
return this.transactionContextPropagator;
141143
}
142144
}
@@ -150,7 +152,8 @@ public void setTransactionContextPropagator(TransactionContextPropagator transac
150152
if (transactionContextPropagator == null) {
151153
throw new IllegalArgumentException("Transaction context propagator cannot be null");
152154
}
153-
try (AutoCloseableLock __ = lock.writeLockAutoCloseable()) {
155+
var autoCloseableLock = lock.writeLockAutoCloseable();
156+
try (autoCloseableLock) {
154157
this.transactionContextPropagator = transactionContextPropagator;
155158
}
156159
}
@@ -176,7 +179,8 @@ public void setTransactionContext(EvaluationContext evaluationContext) {
176179
* Set the default provider.
177180
*/
178181
public void setProvider(FeatureProvider provider) {
179-
try (AutoCloseableLock __ = lock.writeLockAutoCloseable()) {
182+
var autoCloseableLock = lock.writeLockAutoCloseable();
183+
try (autoCloseableLock) {
180184
providerRepository.setProvider(
181185
provider,
182186
this::attachEventProvider,
@@ -194,7 +198,8 @@ public void setProvider(FeatureProvider provider) {
194198
* @param provider The provider to set.
195199
*/
196200
public void setProvider(String domain, FeatureProvider provider) {
197-
try (AutoCloseableLock __ = lock.writeLockAutoCloseable()) {
201+
var autoCloseableLock = lock.writeLockAutoCloseable();
202+
try (autoCloseableLock) {
198203
providerRepository.setProvider(
199204
domain,
200205
provider,
@@ -210,7 +215,8 @@ public void setProvider(String domain, FeatureProvider provider) {
210215
* Set the default provider and wait for initialization to finish.
211216
*/
212217
public void setProviderAndWait(FeatureProvider provider) throws OpenFeatureError {
213-
try (AutoCloseableLock __ = lock.writeLockAutoCloseable()) {
218+
var autoCloseableLock = lock.writeLockAutoCloseable();
219+
try (autoCloseableLock) {
214220
providerRepository.setProvider(
215221
provider,
216222
this::attachEventProvider,
@@ -228,7 +234,8 @@ public void setProviderAndWait(FeatureProvider provider) throws OpenFeatureError
228234
* @param provider The provider to set.
229235
*/
230236
public void setProviderAndWait(String domain, FeatureProvider provider) throws OpenFeatureError {
231-
try (AutoCloseableLock __ = lock.writeLockAutoCloseable()) {
237+
var autoCloseableLock = lock.writeLockAutoCloseable();
238+
try (autoCloseableLock) {
232239
providerRepository.setProvider(
233240
domain,
234241
provider,
@@ -297,7 +304,8 @@ public FeatureProvider getProvider(String domain) {
297304
* @param hooks The hook to add.
298305
*/
299306
public void addHooks(Hook... hooks) {
300-
try (AutoCloseableLock __ = lock.writeLockAutoCloseable()) {
307+
var autoCloseableLock = lock.writeLockAutoCloseable();
308+
try (autoCloseableLock) {
301309
this.apiHooks.addAll(Arrays.asList(hooks));
302310
}
303311
}
@@ -308,7 +316,8 @@ public void addHooks(Hook... hooks) {
308316
* @return A list of {@link Hook}s.
309317
*/
310318
public List<Hook> getHooks() {
311-
try (AutoCloseableLock __ = lock.readLockAutoCloseable()) {
319+
var autoCloseableLock = lock.readLockAutoCloseable();
320+
try (autoCloseableLock) {
312321
return this.apiHooks;
313322
}
314323
}
@@ -317,7 +326,8 @@ public List<Hook> getHooks() {
317326
* Removes all hooks.
318327
*/
319328
public void clearHooks() {
320-
try (AutoCloseableLock __ = lock.writeLockAutoCloseable()) {
329+
var autoCloseableLock = lock.writeLockAutoCloseable();
330+
try (autoCloseableLock) {
321331
this.apiHooks.clear();
322332
}
323333
}
@@ -329,7 +339,8 @@ public void clearHooks() {
329339
* Once shut down is complete, API is reset and ready to use again.
330340
*/
331341
public void shutdown() {
332-
try (AutoCloseableLock __ = lock.writeLockAutoCloseable()) {
342+
var autoCloseableLock = lock.writeLockAutoCloseable();
343+
try (autoCloseableLock) {
333344
providerRepository.shutdown();
334345
eventSupport.shutdown();
335346

@@ -375,7 +386,8 @@ public OpenFeatureAPI onProviderError(Consumer<EventDetails> handler) {
375386
*/
376387
@Override
377388
public OpenFeatureAPI on(ProviderEvent event, Consumer<EventDetails> handler) {
378-
try (AutoCloseableLock __ = lock.writeLockAutoCloseable()) {
389+
var autoCloseableLock = lock.writeLockAutoCloseable();
390+
try (autoCloseableLock) {
379391
this.eventSupport.addGlobalHandler(event, handler);
380392
return this;
381393
}
@@ -391,13 +403,15 @@ public OpenFeatureAPI removeHandler(ProviderEvent event, Consumer<EventDetails>
391403
}
392404

393405
void removeHandler(String domain, ProviderEvent event, Consumer<EventDetails> handler) {
394-
try (AutoCloseableLock __ = lock.writeLockAutoCloseable()) {
406+
var autoCloseableLock = lock.writeLockAutoCloseable();
407+
try (autoCloseableLock) {
395408
eventSupport.removeClientHandler(domain, event, handler);
396409
}
397410
}
398411

399412
void addHandler(String domain, ProviderEvent event, Consumer<EventDetails> handler) {
400-
try (AutoCloseableLock __ = lock.writeLockAutoCloseable()) {
413+
var autoCloseableLock = lock.writeLockAutoCloseable();
414+
try (autoCloseableLock) {
401415
// if the provider is in the state associated with event, run immediately
402416
if (Optional.ofNullable(this.providerRepository.getProviderState(domain))
403417
.orElse(ProviderState.READY)
@@ -421,7 +435,8 @@ FeatureProviderStateManager getFeatureProviderStateManager(String domain) {
421435
* @param details the event details
422436
*/
423437
private void runHandlersForProvider(FeatureProvider provider, ProviderEvent event, ProviderEventDetails details) {
424-
try (AutoCloseableLock __ = lock.readLockAutoCloseable()) {
438+
var autoCloseableLock = lock.readLockAutoCloseable();
439+
try (autoCloseableLock) {
425440

426441
List<String> domainsForProvider = providerRepository.getDomainsForProvider(provider);
427442

src/main/java/dev/openfeature/sdk/OpenFeatureClient.java

+8-5
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
import dev.openfeature.sdk.exceptions.GeneralError;
66
import dev.openfeature.sdk.exceptions.OpenFeatureError;
77
import dev.openfeature.sdk.exceptions.ProviderNotReadyError;
8-
import dev.openfeature.sdk.internal.AutoCloseableLock;
98
import dev.openfeature.sdk.internal.AutoCloseableReentrantReadWriteLock;
109
import dev.openfeature.sdk.internal.ObjectUtils;
1110
import java.util.ArrayList;
@@ -125,7 +124,8 @@ public void track(String trackingEventName, EvaluationContext context, TrackingE
125124
*/
126125
@Override
127126
public OpenFeatureClient addHooks(Hook... hooks) {
128-
try (AutoCloseableLock __ = this.hooksLock.writeLockAutoCloseable()) {
127+
var autoCloseableLock = this.hooksLock.writeLockAutoCloseable();
128+
try (autoCloseableLock) {
129129
this.clientHooks.addAll(Arrays.asList(hooks));
130130
}
131131
return this;
@@ -136,7 +136,8 @@ public OpenFeatureClient addHooks(Hook... hooks) {
136136
*/
137137
@Override
138138
public List<Hook> getHooks() {
139-
try (AutoCloseableLock __ = this.hooksLock.readLockAutoCloseable()) {
139+
var autoCloseableLock = this.hooksLock.readLockAutoCloseable();
140+
try (autoCloseableLock) {
140141
return this.clientHooks;
141142
}
142143
}
@@ -146,7 +147,8 @@ public List<Hook> getHooks() {
146147
*/
147148
@Override
148149
public OpenFeatureClient setEvaluationContext(EvaluationContext evaluationContext) {
149-
try (AutoCloseableLock __ = contextLock.writeLockAutoCloseable()) {
150+
var autoCloseableLock = contextLock.writeLockAutoCloseable();
151+
try (autoCloseableLock) {
150152
this.evaluationContext = evaluationContext;
151153
}
152154
return this;
@@ -157,7 +159,8 @@ public OpenFeatureClient setEvaluationContext(EvaluationContext evaluationContex
157159
*/
158160
@Override
159161
public EvaluationContext getEvaluationContext() {
160-
try (AutoCloseableLock __ = contextLock.readLockAutoCloseable()) {
162+
var autoCloseableLock = contextLock.readLockAutoCloseable();
163+
try (autoCloseableLock) {
161164
return this.evaluationContext;
162165
}
163166
}

0 commit comments

Comments
 (0)