Skip to content

Commit 257111f

Browse files
Refactor Azure and GCP getSecret Methods to Use Common getResource Logic (#122)
* Utilizes the common getResource method for parameter parsing and resource requests * respect indentation * Refactor GCP Secret Manager secret retrieval with getGcpSecret method
1 parent a2946e7 commit 257111f

File tree

2 files changed

+23
-24
lines changed

2 files changed

+23
-24
lines changed

ojdbc-provider-azure/src/main/java/oracle/jdbc/provider/azure/resource/KeyVaultSecretProvider.java

+13-15
Original file line numberDiff line numberDiff line change
@@ -72,27 +72,25 @@ public KeyVaultSecretProvider(String valueType, ResourceParameter[] additionalPa
7272

7373
/**
7474
* <p>
75-
* Returns a secret identified by a parameter named "vaultUrl" which
76-
* configures {@link KeyVaultSecretFactory#VAULT_URL}, and "secretName" which
77-
* configure {@link KeyVaultSecretFactory#SECRET_NAME}. This method parses
78-
* these parameters from text values.
75+
* Retrieves a secret from Azure Key Vault based on parameters provided
76+
* in {@code parameterValues}. This method centralizes secret retrieval
77+
* logic and can be used by subclasses implementing
78+
* the {@link oracle.jdbc.spi.OracleResourceProvider} SPI.
7979
* </p><p>
80-
* This method is designed to be called from subclasses which implement an
81-
* {@link oracle.jdbc.spi.OracleResourceProvider} SPI.
80+
* The method uses the {@code getResource} method to parse the
81+
* {@code parameterValues} and request the secret from Azure Key Vault via
82+
* the {@link KeyVaultSecretFactory} instance.
83+
* The secret value is returned as a {@code String}.
8284
* </p>
8385
*
84-
* @param parameterValues Text values of parameters. Not null.
85-
* @return The identified secret. Not null.
86+
* @param parameterValues A map of parameter names and their corresponding
87+
* values required for secret retrieval. Must not be null.
88+
* @return The secret value as a {@code String}. Not null.
8689
*/
8790
protected final String getSecret(
8891
Map<Parameter, CharSequence> parameterValues) {
89-
90-
ParameterSet parameterSet = parseParameterValues(parameterValues);
91-
92-
return KeyVaultSecretFactory.getInstance()
93-
.request(parameterSet)
94-
.getContent()
95-
.getValue();
92+
return getResource(KeyVaultSecretFactory.getInstance(), parameterValues)
93+
.getValue();
9694
}
9795

9896
}

ojdbc-provider-gcp/src/main/java/oracle/jdbc/provider/gcp/resource/GcpSecretManagerProvider.java

+10-9
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,14 @@ public GcpSecretManagerProvider(String valueType, ResourceParameter[] additional
6767

6868
/**
6969
* <p>
70-
* Returns a secret identified by a parameter named "secretVersionName" which
71-
* configures {@link GcpSecretManagerFactory#SECRET_VERSION_NAME}. This method
72-
* parses these parameters from text values.
70+
* Retrieves a secret from GCP Secret Manager based on parameters provided
71+
* in {@code parameterValues}. This method centralizes secret retrieval logic
72+
* </p>
73+
* <p>
74+
* The method uses the {@code getResource} method to parse the
75+
* {@code parameterValues} and request the secret from GCP Secret Manager
76+
* via the {@link GcpSecretManagerFactory} instance.
77+
* The secret is returned as a {@code ByteString}.
7378
* </p>
7479
* <p>
7580
* This method is designed to be called from subclasses which implement an
@@ -82,12 +87,8 @@ public GcpSecretManagerProvider(String valueType, ResourceParameter[] additional
8287
protected final ByteString getSecret(
8388
Map<Parameter, CharSequence> parameterValues) {
8489

85-
ParameterSet parameterSet = parseParameterValues(parameterValues);
86-
87-
return GcpSecretManagerFactory.getInstance()
88-
.request(parameterSet)
89-
.getContent()
90-
.getData();
90+
return getResource(GcpSecretManagerFactory.getInstance(), parameterValues)
91+
.getData();
9192
}
9293

9394
}

0 commit comments

Comments
 (0)