Skip to content

Commit bb6435d

Browse files
refactor EvernoteApi getting rid of duplicate code
1 parent 32c37cd commit bb6435d

1 file changed

Lines changed: 16 additions & 39 deletions

File tree

src/main/java/org/scribe/builder/api/EvernoteApi.java

Lines changed: 16 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -5,74 +5,51 @@
55
/**
66
* OAuth API for Evernote
77
*
8-
* @author Pablo Fernandez
98
* @author Norbert Potocki
109
*/
1110
public class EvernoteApi extends DefaultApi10a
1211
{
13-
private static final String AUTHORIZATION_URL = "https://www.evernote.com/OAuth.action?oauth_token=%s";
12+
protected String serviceUrl() {
13+
return "https://www.evernote.com";
14+
}
1415

1516
@Override
1617
public String getRequestTokenEndpoint()
1718
{
18-
return "https://www.evernote.com/oauth";
19+
return serviceUrl() + "/oauth";
1920
}
2021

2122
@Override
2223
public String getAccessTokenEndpoint()
2324
{
24-
return "https://www.evernote.com/oauth";
25+
return serviceUrl() + "/oauth";
2526
}
2627

2728
@Override
2829
public String getAuthorizationUrl(Token requestToken)
2930
{
30-
return String.format(AUTHORIZATION_URL, requestToken.getToken());
31+
return String.format(serviceUrl() + "/OAuth.action?oauth_token=%s", requestToken.getToken());
3132
}
3233

34+
/**
35+
* Sandbox endpoint
36+
*/
3337
public static class Sandbox extends EvernoteApi
3438
{
35-
private static final String SANDBOX_URL = "https://sandbox.evernote.com";
36-
37-
@Override
38-
public String getRequestTokenEndpoint()
39-
{
40-
return SANDBOX_URL + "/oauth";
41-
}
42-
43-
@Override
44-
public String getAccessTokenEndpoint()
45-
{
46-
return SANDBOX_URL + "/oauth";
47-
}
48-
4939
@Override
50-
public String getAuthorizationUrl(Token requestToken)
51-
{
52-
return String.format(SANDBOX_URL + "/OAuth.action?oauth_token=%s", requestToken.getToken());
40+
protected String serviceUrl() {
41+
return "https://sandbox.evernote.com";
5342
}
5443
}
5544

45+
/**
46+
* Yinxiang Biji endpoint
47+
*/
5648
public static class Yinxiang extends EvernoteApi
5749
{
58-
private static final String SANDBOX_URL = "https://app.yinxiang.com";
59-
60-
@Override
61-
public String getRequestTokenEndpoint()
62-
{
63-
return SANDBOX_URL + "/oauth";
64-
}
65-
66-
@Override
67-
public String getAccessTokenEndpoint()
68-
{
69-
return SANDBOX_URL + "/oauth";
70-
}
71-
7250
@Override
73-
public String getAuthorizationUrl(Token requestToken)
74-
{
75-
return String.format(SANDBOX_URL + "/OAuth.action?oauth_token=%s", requestToken.getToken());
51+
protected String serviceUrl() {
52+
return "https://app.yinxiang.com";
7653
}
7754
}
7855
}

0 commit comments

Comments
 (0)