Skip to content

Commit ba5dae7

Browse files
author
Radon Rosborough
committed
Fix PLAID_ENV handling for java and go examples
1 parent 2831bb1 commit ba5dae7

File tree

4 files changed

+36
-5
lines changed

4 files changed

+36
-5
lines changed

go/server.go

+11-1
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,16 @@ func init() {
1818
if PLAID_COUNTRY_CODES == "" {
1919
PLAID_COUNTRY_CODES = "US"
2020
}
21+
if PLAID_ENV == "" {
22+
PLAID_ENV = "sandbox"
23+
}
2124
}
2225

2326
// Fill with your Plaid API keys - https://dashboard.plaid.com/account/keys
2427
var (
2528
PLAID_CLIENT_ID = os.Getenv("PLAID_CLIENT_ID")
2629
PLAID_SECRET = os.Getenv("PLAID_SECRET")
30+
PLAID_ENV = os.Getenv("PLAID_ENV")
2731
PLAID_PRODUCTS = os.Getenv("PLAID_PRODUCTS")
2832
PLAID_COUNTRY_CODES = os.Getenv("PLAID_COUNTRY_CODES")
2933
// Parameters used for the OAuth redirect Link flow.
@@ -41,11 +45,17 @@ var (
4145
APP_PORT = os.Getenv("APP_PORT")
4246
)
4347

48+
var environments = map[string]plaid.Environment{
49+
"sandbox": plaid.Sandbox,
50+
"development": plaid.Development,
51+
"production": plaid.Production,
52+
}
53+
4454
var client = func() *plaid.Client {
4555
client, err := plaid.NewClient(plaid.ClientOptions{
4656
PLAID_CLIENT_ID,
4757
PLAID_SECRET,
48-
plaid.Sandbox, // Available environments are Sandbox, Development, and Production
58+
environments[PLAID_ENV],
4959
&http.Client{},
5060
})
5161
if err != nil {

java/config.yml

+1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ plaid_secret: ${PLAID_SECRET}
88
plaid_products: ${PLAID_PRODUCTS}
99
plaid_country_codes: ${PLAID_COUNTRY_CODES}
1010
plaid_redirect_uri: ${PLAID_REDIRECT_URI:-""}
11+
plaid_env: ${PLAID_ENV:-sandbox}
1112

1213
server:
1314
application_connectors:

java/src/main/java/com/plaid/quickstart/QuickstartApplication.java

+16-4
Original file line numberDiff line numberDiff line change
@@ -64,10 +64,22 @@ public void initialize(final Bootstrap<QuickstartConfiguration> bootstrap) {
6464
public void run(final QuickstartConfiguration configuration,
6565
final Environment environment) {
6666
// or equivalent, depending on which environment you're calling into
67-
PlaidClient plaidClient = PlaidClient.newBuilder()
68-
.clientIdAndSecret(configuration.getPlaidClientID(), configuration.getPlaidSecret())
69-
.sandboxBaseUrl() // or equivalent, depending on which environment you're calling into
70-
.build();
67+
PlaidClient.Builder builder = PlaidClient.newBuilder()
68+
.clientIdAndSecret(configuration.getPlaidClientID(), configuration.getPlaidSecret());
69+
switch (configuration.getPlaidEnv()) {
70+
case "sandbox":
71+
builder = builder.sandboxBaseUrl();
72+
break;
73+
case "development":
74+
builder = builder.developmentBaseUrl();
75+
break;
76+
case "production":
77+
builder = builder.productionBaseUrl();
78+
break;
79+
default:
80+
throw new IllegalArgumentException("unknown environment: " + configuration.getPlaidEnv());
81+
}
82+
PlaidClient plaidClient = builder.build();
7183
List<String> plaidProducts = Arrays.asList(configuration.getPlaidProducts().split(","));
7284
List<String> countryCodes = Arrays.asList(configuration.getPlaidCountryCodes().split(","));
7385
String redirectUri = null;

java/src/main/java/com/plaid/quickstart/QuickstartConfiguration.java

+8
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ public class QuickstartConfiguration extends Configuration {
1111
@NotEmpty
1212
private String plaidSecret;
1313

14+
@NotEmpty
15+
private String plaidEnv;
16+
1417
@NotEmpty
1518
private String plaidProducts;
1619

@@ -36,6 +39,11 @@ public String getPlaidSecret() {
3639
return plaidSecret;
3740
}
3841

42+
@JsonProperty
43+
public String getPlaidEnv() {
44+
return plaidEnv;
45+
}
46+
3947
@JsonProperty
4048
public String getPlaidProducts() {
4149
return plaidProducts;

0 commit comments

Comments
 (0)