Skip to content

Commit 303bf6d

Browse files
authored
chore: Reuse twiliorestclient for orgs api (#900)
* removed bearer token files used for Orgs API and reusing twiliorestclient
1 parent 15ca860 commit 303bf6d

36 files changed

+257
-1772
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -221,8 +221,8 @@ public class Example {
221221
We are introducing Client Credentials Flow-based OAuth 2.0 authentication.
222222
This feature is currently in `beta` and its implementation is subject to change.
223223

224-
- API examples [here](https://github.com/twilio/twilio-java/blob/main/examples/FetchMessageUsingOAuth.md)
225-
- Organisation API examples [here](https://github.com/twilio/twilio-java/blob/main/examples/BearerTokenAuthentication.md)
224+
- API examples [here](https://github.com/twilio/twilio-java/blob/main/examples/PublicOAuthExample.md)
225+
- Organisation API examples [here](https://github.com/twilio/twilio-java/blob/main/examples/OrgsAPIExample.md)
226226

227227
### Iterate through records
228228

examples/BearerTokenAuthentication.md

Lines changed: 0 additions & 26 deletions
This file was deleted.

examples/FetchMessageUsingOAuth.md

Lines changed: 0 additions & 21 deletions
This file was deleted.

examples/OrgsAPIExample.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
class OrgsAPIExample {
2+
public static void main {
3+
4+
private static final String GRANT_TYPE = "grant_type_to_be_used";
5+
private static final String CLIENT_SID =
6+
"client_id_of_the_organization";
7+
private static final String CLIENT_SECRET = "client_secret_of_organization";
8+
private static final String ORGANISATION_ID = "id_of_the_organization";
9+
10+
//Getting access token - Method #1
11+
Twilio.init(new OrgsClientCredentialProvider(CLIENT_SID, CLIENT_SECRET));
12+
fetchAccountDetails();
13+
14+
15+
//Scenario: 2 If in case one doesn't want to change the existing stored credential
16+
// Pass Custom TwilioRestClient
17+
// TokenManager tokenManager = new OrgsTokenManager(GRANT_TYPE, CLIENT_SID, CLIENT_SECRET);
18+
// TokenAuthStrategy tokenAuthStrategy = new TokenAuthStrategy(tokenManager);
19+
// TwilioRestClient client = new TwilioRestClient.Builder(tokenAuthStrategy).build();
20+
// fetchAccountDetailsWithClient(client);
21+
}
22+
23+
private static void fetchAccountDetails() {
24+
ResourceSet<Account> accountSet = Account.reader(ORGANISATION_ID).read();
25+
String accountSid = accountSet.iterator().next().getAccountSid();
26+
System.out.println(accountSid);
27+
}
28+
29+
private static void fetchAccountDetailsWithClient(TwilioRestClient client) {
30+
ResourceSet<Account> accountSet = Account.reader(ORGANISATION_ID).read(client);
31+
String accountSid = accountSet.iterator().next().getAccountSid();
32+
System.out.println(accountSid);
33+
}
34+
}

examples/PublicOAuthExample.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
```
2+
class PublicOAuthExample {
3+
public static void main {
4+
5+
private static final String GRANT_TYPE = "grant_type_to_be_used";
6+
private static final String OAUTH_CLIENT_SID = "client_id";
7+
private static final String OAUTH_CLIENT_SECRET = "client_secret";
8+
private static final String ACCOUNT_SID = "account_sid";
9+
private static final String MESSAGE_SID = "message_sid";
10+
11+
//Getting access token - Method #1
12+
Twilio.init(new ClientCredentialProvider(OAUTH_CLIENT_SID, OAUTH_CLIENT_SECRET), ACCOUNT_SID);
13+
fetchMessage(MESSAGE_SID);
14+
15+
16+
//Scenario: 2 If in case one doesn't want to change the existing stored credential
17+
// Pass Custom TwilioRestClient
18+
// TokenManager tokenManager = new ApiTokenManager(GRANT_TYPE, OAUTH_CLIENT_SID, OAUTH_CLIENT_SECRET);
19+
// TokenAuthStrategy tokenAuthStrategy = new TokenAuthStrategy(tokenManager);
20+
// TwilioRestClient client = new TwilioRestClient.Builder(tokenAuthStrategy).accountSid(ACCOUNT_SID).build();
21+
// fetchMessageWithClient(MESSAGE_SID, client);
22+
}
23+
24+
public static void fetchMessage(String sid) {
25+
Message message = Message.fetcher(sid).fetch();
26+
System.out.println("Fetched Message SID: " + message.getSid());
27+
}
28+
29+
public static void fetchMessageWithClient(String sid, TwilioRestClient client) {
30+
Message message = Message.fetcher(sid).fetch(client);
31+
System.out.println("Fetched Message SID: " + message.getSid());
32+
}
33+
}
34+
```
35+

src/main/java/com/twilio/TwilioOrgsTokenAuth.java

Lines changed: 0 additions & 106 deletions
This file was deleted.

src/main/java/com/twilio/base/Page.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -169,8 +169,9 @@ private static <T> Page<T> buildPage(JsonNode root, List<T> results) {
169169

170170
private static <T> Page<T> buildNextGenPage(JsonNode root, List<T> results) {
171171
JsonNode meta = root.get("meta");
172-
Builder<T> builder = new Builder<T>().url(meta.get("url").asText());
173-
172+
Builder<T> builder = new Builder<>();
173+
if(meta != null && meta.get("url") != null) {
174+
builder = builder.url(meta.get("url").asText());
174175
JsonNode nextPageNode = meta.get("next_page_url");
175176
if (!nextPageNode.isNull()) {
176177
builder.nextPageUrl(nextPageNode.asText());
@@ -192,6 +193,7 @@ private static <T> Page<T> buildNextGenPage(JsonNode root, List<T> results) {
192193
} else {
193194
builder.pageSize(results.size());
194195
}
196+
}
195197

196198
return builder.records(results).build();
197199
}

src/main/java/com/twilio/base/bearertoken/Creator.java

Lines changed: 0 additions & 50 deletions
This file was deleted.

src/main/java/com/twilio/base/bearertoken/Deleter.java

Lines changed: 0 additions & 51 deletions
This file was deleted.

0 commit comments

Comments
 (0)