Skip to content

Commit 7332533

Browse files
jeet1995Copilot
andcommitted
Replace all inline ImplementationBridgeHelpers accessor calls with static getters
Unify every consuming class to use the same private static getter pattern. Eliminates all direct ImplementationBridgeHelpers.XxxHelper .getXxxAccessor() inline calls — every accessor is now accessed via a short static getter method (e.g., diagAccessor(), feedResponseAccessor()). 67 files changed. Exceptions documented: - HttpClient.java: Java 8 interface, cannot have private static methods - Utils.java: special CAS caching pattern preserved - BridgeInternal/ModelBridgeInternal/UtilBridgeInternal: exempt (accessor sources) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 5509cf0 commit 7332533

File tree

68 files changed

+517
-432
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

68 files changed

+517
-432
lines changed

sdk/cosmos/azure-cosmos-tests/src/test/java/com/azure/cosmos/implementation/ImplementationBridgeHelpersTest.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -511,6 +511,7 @@ public void noStaticOrInstanceAccessorFieldsInConsumingClasses() throws Exceptio
511511

512512
java.nio.file.Files.walk(cosmosRoot)
513513
.filter(p -> p.toString().endsWith(".java"))
514+
.filter(p -> !p.getFileName().toString().equals("module-info.java"))
514515
.forEach(p -> {
515516
// Convert file path to class name
516517
String relative = javaRoot.relativize(p).toString();

sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/CosmosAsyncClient.java

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,14 @@
7979
builder = CosmosClientBuilder.class,
8080
isAsync = true)
8181
public final class CosmosAsyncClient implements Closeable {
82+
private static ImplementationBridgeHelpers.CosmosClientTelemetryConfigHelper.CosmosClientTelemetryConfigAccessor clientTelemetryConfigAccessor() {
83+
return ImplementationBridgeHelpers.CosmosClientTelemetryConfigHelper.getCosmosClientTelemetryConfigAccessor();
84+
}
85+
86+
private static ImplementationBridgeHelpers.ReadConsistencyStrategyHelper.ReadConsistencyStrategyAccessor readConsistencyStrategyAccessor() {
87+
return ImplementationBridgeHelpers.ReadConsistencyStrategyHelper.getReadConsistencyStrategyAccessor();
88+
}
89+
8290
private static ImplementationBridgeHelpers.CosmosQueryRequestOptionsHelper.CosmosQueryRequestOptionsAccessor queryOptionsAccessor() {
8391
return ImplementationBridgeHelpers.CosmosQueryRequestOptionsHelper.getCosmosQueryRequestOptionsAccessor();
8492
}
@@ -143,7 +151,7 @@ private static ImplementationBridgeHelpers.FeedResponseHelper.FeedResponseAccess
143151
this.clientTelemetryConfig = effectiveTelemetryConfig;
144152
boolean contentResponseOnWriteEnabled = builder.isContentResponseOnWriteEnabled();
145153
ApiType apiType = builder.apiType();
146-
String clientCorrelationId = ImplementationBridgeHelpers.CosmosClientTelemetryConfigHelper.getCosmosClientTelemetryConfigAccessor()
154+
String clientCorrelationId = clientTelemetryConfigAccessor()
147155
.getClientCorrelationId(effectiveTelemetryConfig);
148156

149157
List<Permission> permissionList = new ArrayList<>();
@@ -202,12 +210,12 @@ private static ImplementationBridgeHelpers.FeedResponseHelper.FeedResponseAccess
202210
TagName.ClientCorrelationId.toString(),
203211
ClientTelemetryMetrics.escape(effectiveClientCorrelationId));
204212

205-
this.clientMetricRegistrySnapshot = ImplementationBridgeHelpers.CosmosClientTelemetryConfigHelper.getCosmosClientTelemetryConfigAccessor()
213+
this.clientMetricRegistrySnapshot = clientTelemetryConfigAccessor()
206214
.getClientMetricRegistry(effectiveTelemetryConfig);
207215

208-
CosmosMeterOptions cpuMeterOptions = ImplementationBridgeHelpers.CosmosClientTelemetryConfigHelper.getCosmosClientTelemetryConfigAccessor()
216+
CosmosMeterOptions cpuMeterOptions = clientTelemetryConfigAccessor()
209217
.getMeterOptions(effectiveTelemetryConfig, CosmosMetricName.SYSTEM_CPU);
210-
CosmosMeterOptions memoryMeterOptions = ImplementationBridgeHelpers.CosmosClientTelemetryConfigHelper.getCosmosClientTelemetryConfigAccessor()
218+
CosmosMeterOptions memoryMeterOptions = clientTelemetryConfigAccessor()
211219
.getMeterOptions(effectiveTelemetryConfig, CosmosMetricName.SYSTEM_MEMORY_FREE);
212220

213221
if (clientMetricRegistrySnapshot != null) {
@@ -218,15 +226,15 @@ private static ImplementationBridgeHelpers.FeedResponseHelper.FeedResponseAccess
218226
);
219227

220228
if (this.clientMetricRegistrySnapshot != null) {
221-
ImplementationBridgeHelpers.CosmosClientTelemetryConfigHelper.getCosmosClientTelemetryConfigAccessor().setClientCorrelationTag(
229+
clientTelemetryConfigAccessor().setClientCorrelationTag(
222230
effectiveTelemetryConfig,
223231
this.clientCorrelationTag );
224-
ImplementationBridgeHelpers.CosmosClientTelemetryConfigHelper.getCosmosClientTelemetryConfigAccessor().setAccountName(
232+
clientTelemetryConfigAccessor().setAccountName(
225233
effectiveTelemetryConfig,
226234
this.accountTagValue
227235
);
228236

229-
ImplementationBridgeHelpers.CosmosClientTelemetryConfigHelper.getCosmosClientTelemetryConfigAccessor().addDiagnosticsHandler(
237+
clientTelemetryConfigAccessor().addDiagnosticsHandler(
230238
effectiveTelemetryConfig,
231239
new ClientMetricsDiagnosticsHandler(this)
232240
);
@@ -757,7 +765,7 @@ ReadConsistencyStrategy getEffectiveReadConsistencyStrategy(
757765
OperationType operationType,
758766
ReadConsistencyStrategy desiredReadConsistencyStrategyOfOperation) {
759767

760-
return ImplementationBridgeHelpers.ReadConsistencyStrategyHelper.getReadConsistencyStrategyAccessor().getEffectiveReadConsistencyStrategy(
768+
return readConsistencyStrategyAccessor().getEffectiveReadConsistencyStrategy(
761769
resourceType,
762770
operationType,
763771
desiredReadConsistencyStrategyOfOperation,
@@ -777,7 +785,7 @@ CosmosDiagnosticsThresholds getEffectiveDiagnosticsThresholds(
777785
}
778786

779787
CosmosDiagnosticsThresholds clientLevelThresholds =
780-
ImplementationBridgeHelpers.CosmosClientTelemetryConfigHelper.getCosmosClientTelemetryConfigAccessor().getDiagnosticsThresholds(this.clientTelemetryConfig);
788+
clientTelemetryConfigAccessor().getDiagnosticsThresholds(this.clientTelemetryConfig);
781789

782790
return clientLevelThresholds != null ? clientLevelThresholds : new CosmosDiagnosticsThresholds();
783791
}
@@ -796,15 +804,15 @@ boolean isTransportLevelTracingEnabled() {
796804
this.clientTelemetryConfig
797805
: DEFAULT_TELEMETRY_CONFIG;
798806

799-
if (ImplementationBridgeHelpers.CosmosClientTelemetryConfigHelper.getCosmosClientTelemetryConfigAccessor().isLegacyTracingEnabled(effectiveConfig)) {
807+
if (clientTelemetryConfigAccessor().isLegacyTracingEnabled(effectiveConfig)) {
800808
return false;
801809
}
802810

803811
if (this.getConnectionPolicy().getConnectionMode() != ConnectionMode.DIRECT) {
804812
return false;
805813
}
806814

807-
return ImplementationBridgeHelpers.CosmosClientTelemetryConfigHelper.getCosmosClientTelemetryConfigAccessor().isTransportLevelTracingEnabled(effectiveConfig);
815+
return clientTelemetryConfigAccessor().isTransportLevelTracingEnabled(effectiveConfig);
808816
}
809817

810818
void recordOpenConnectionsAndInitCachesCompleted(List<CosmosContainerIdentity> cosmosContainerIdentities) {
@@ -850,13 +858,13 @@ public String getAccountTagValue(CosmosAsyncClient client) {
850858

851859
@Override
852860
public EnumSet<TagName> getMetricTagNames(CosmosAsyncClient client) {
853-
return ImplementationBridgeHelpers.CosmosClientTelemetryConfigHelper.getCosmosClientTelemetryConfigAccessor()
861+
return clientTelemetryConfigAccessor()
854862
.getMetricTagNames(client.clientTelemetryConfig);
855863
}
856864

857865
@Override
858866
public EnumSet<MetricCategory> getMetricCategories(CosmosAsyncClient client) {
859-
return ImplementationBridgeHelpers.CosmosClientTelemetryConfigHelper.getCosmosClientTelemetryConfigAccessor()
867+
return clientTelemetryConfigAccessor()
860868
.getMetricCategories(client.clientTelemetryConfig);
861869
}
862870

@@ -887,7 +895,7 @@ public String getUserAgent(CosmosAsyncClient client) {
887895

888896
@Override
889897
public CosmosMeterOptions getMeterOptions(CosmosAsyncClient client, CosmosMetricName name) {
890-
return ImplementationBridgeHelpers.CosmosClientTelemetryConfigHelper.getCosmosClientTelemetryConfigAccessor()
898+
return clientTelemetryConfigAccessor()
891899
.getMeterOptions(client.clientTelemetryConfig, name);
892900
}
893901

sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/CosmosAsyncContainer.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,10 @@
9898
* Provides methods for interacting with child resources (Items, Scripts, Conflicts)
9999
*/
100100
public class CosmosAsyncContainer {
101+
private static ImplementationBridgeHelpers.PartitionKeyHelper.PartitionKeyAccessor partitionKeyAccessor() {
102+
return ImplementationBridgeHelpers.PartitionKeyHelper.getPartitionKeyAccessor();
103+
}
104+
101105
private static ImplementationBridgeHelpers.CosmosAsyncClientHelper.CosmosAsyncClientAccessor clientAccessor() {
102106
return ImplementationBridgeHelpers.CosmosAsyncClientHelper.getCosmosAsyncClientAccessor();
103107
}
@@ -509,9 +513,7 @@ private <T> Mono<CosmosItemResponse<T>> createItemWithTrackingId(
509513
PartitionKeyDefinition pkDef = collection.getPartitionKey();
510514
PartitionKeyInternal partitionKeyInternal = PartitionKeyHelper
511515
.extractPartitionKeyValueFromDocument(internalObjectNode, pkDef);
512-
PartitionKey partitionKey = ImplementationBridgeHelpers
513-
.PartitionKeyHelper
514-
.getPartitionKeyAccessor()
516+
PartitionKey partitionKey = partitionKeyAccessor()
515517
.toPartitionKey(partitionKeyInternal);
516518
readRequestOptions.setPartitionKey(partitionKey);
517519

sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/CosmosAsyncDatabase.java

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@ private static ImplementationBridgeHelpers.FeedResponseHelper.FeedResponseAccess
5252
return ImplementationBridgeHelpers.FeedResponseHelper.getFeedResponseAccessor();
5353
}
5454

55-
5655
private final CosmosAsyncClient client;
5756
private final String id;
5857
private final String link;
@@ -639,9 +638,7 @@ public CosmosPagedFlux<CosmosContainerProperties> readAllContainers(CosmosQueryR
639638
return UtilBridgeInternal.createCosmosPagedFlux(pagedFluxOptions -> {
640639
String spanName = "readAllContainers." + this.getId();
641640
CosmosAsyncClient client = this.getClient();
642-
String operationId = ImplementationBridgeHelpers
643-
.CosmosQueryRequestOptionsHelper
644-
.getCosmosQueryRequestOptionsAccessor()
641+
String operationId = queryOptionsAccessor()
645642
.getQueryNameOrDefault(requestOptions, spanName);
646643

647644
QueryFeedOperationState state = new QueryFeedOperationState(
@@ -1593,9 +1590,7 @@ private Mono<ThroughputResponse> readThroughputInternal(Context context) {
15931590
null,
15941591
OperationType.Read,
15951592
ResourceType.Offer,
1596-
ImplementationBridgeHelpers
1597-
.CosmosQueryRequestOptionsHelper
1598-
.getCosmosQueryRequestOptionsAccessor()
1593+
queryOptionsAccessor()
15991594
.toRequestOptions(qryOptions));
16001595
}
16011596

sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/CosmosAsyncScripts.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@ private static ImplementationBridgeHelpers.FeedResponseHelper.FeedResponseAccess
4040
return ImplementationBridgeHelpers.FeedResponseHelper.getFeedResponseAccessor();
4141
}
4242

43-
4443
private final CosmosAsyncContainer container;
4544
private final CosmosAsyncDatabase database;
4645

sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/CosmosAsyncUser.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@ private static ImplementationBridgeHelpers.FeedResponseHelper.FeedResponseAccess
3535
return ImplementationBridgeHelpers.FeedResponseHelper.getFeedResponseAccessor();
3636
}
3737

38-
3938
private final CosmosAsyncDatabase database;
4039

4140
@SuppressWarnings("EnforceFinalFields")

sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/CosmosContainerProactiveInitConfig.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,10 @@
1818
* Encapsulates the list of container identities and no. of proactive connection regions.
1919
* */
2020
public final class CosmosContainerProactiveInitConfig {
21+
private static ImplementationBridgeHelpers.CosmosContainerIdentityHelper.CosmosContainerIdentityAccessor containerIdentityAccessor() {
22+
return ImplementationBridgeHelpers.CosmosContainerIdentityHelper.getCosmosContainerIdentityAccessor();
23+
}
24+
2125
private final List<CosmosContainerIdentity> cosmosContainerIdentities;
2226
private final Map<CosmosContainerIdentity, ContainerDirectConnectionMetadata> containerDirectConnectionMetadataMap;
2327
private final int numProactiveConnectionRegions;
@@ -101,7 +105,7 @@ public String toString() {
101105
.stream()
102106
.map(ci -> String.join(
103107
".",
104-
ImplementationBridgeHelpers.CosmosContainerIdentityHelper.getCosmosContainerIdentityAccessor().getContainerLink(ci)))
108+
containerIdentityAccessor().getContainerLink(ci)))
105109
.collect(Collectors.joining(";")),
106110
numProactiveConnectionRegions,
107111
aggressiveWarmupDuration);

sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/CosmosDiagnosticsContext.java

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -993,12 +993,8 @@ void setRequestOptions(
993993
// the following helper/accessor only helps to access this class outside of this package.//
994994
///////////////////////////////////////////////////////////////////////////////////////////
995995
static void initialize() {
996-
ImplementationBridgeHelpers
997-
.CosmosDiagnosticsContextHelper
998-
.setCosmosDiagnosticsContextAccessor(
999-
new ImplementationBridgeHelpers
1000-
.CosmosDiagnosticsContextHelper
1001-
.CosmosDiagnosticsContextAccessor() {
996+
ImplementationBridgeHelpers.CosmosDiagnosticsContextHelper.setCosmosDiagnosticsContextAccessor(
997+
new ImplementationBridgeHelpers.CosmosDiagnosticsContextHelper.CosmosDiagnosticsContextAccessor() {
1002998

1003999
@Override
10041000
public CosmosDiagnosticsContext create(String spanName, String account, String endpoint,

sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/implementation/ChangeFeedOperationState.java

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,10 @@
1010
import static com.azure.cosmos.implementation.guava25.base.Preconditions.checkNotNull;
1111

1212
public class ChangeFeedOperationState extends FeedOperationState {
13-
private static final ImplementationBridgeHelpers
14-
.CosmosChangeFeedRequestOptionsHelper
15-
.CosmosChangeFeedRequestOptionsAccessor cfOptAccessor = ImplementationBridgeHelpers
16-
.CosmosChangeFeedRequestOptionsHelper
17-
.getCosmosChangeFeedRequestOptionsAccessor();
13+
14+
private static ImplementationBridgeHelpers.CosmosChangeFeedRequestOptionsHelper.CosmosChangeFeedRequestOptionsAccessor changeFeedOptionsAccessor() {
15+
return ImplementationBridgeHelpers.CosmosChangeFeedRequestOptionsHelper.getCosmosChangeFeedRequestOptionsAccessor();
16+
}
1817

1918
private final CosmosChangeFeedRequestOptions options;
2019

@@ -37,17 +36,17 @@ public ChangeFeedOperationState(
3736
resourceType,
3837
checkNotNull(operationType, "Argument 'operationType' must not be null."),
3938
operationId,
40-
clientAccessor.getEffectiveConsistencyLevel(
39+
clientAccessor().getEffectiveConsistencyLevel(
4140
cosmosAsyncClient,
4241
operationType,
4342
null),
44-
clientAccessor.getEffectiveDiagnosticsThresholds(
43+
clientAccessor().getEffectiveDiagnosticsThresholds(
4544
cosmosAsyncClient,
46-
cfOptAccessor.getDiagnosticsThresholds(
45+
changeFeedOptionsAccessor().getDiagnosticsThresholds(
4746
checkNotNull(changeFeedRequestOptions, "Argument 'changeFeedRequestOptions' must not be null."))),
4847
fluxOptions,
4948
getEffectiveMaxItemCount(fluxOptions, changeFeedRequestOptions),
50-
cfOptAccessor.getImpl(checkNotNull(changeFeedRequestOptions, "Argument 'changeFeedRequestOptions' must not be null."))
49+
changeFeedOptionsAccessor().getImpl(checkNotNull(changeFeedRequestOptions, "Argument 'changeFeedRequestOptions' must not be null."))
5150
);
5251

5352
this.options = ModelBridgeInternal

0 commit comments

Comments
 (0)