Retrieve Salesforce server instance
This task use java to retrieve Salesforce server instance
Retrieve Salesforce server instance
- Create getInstance() method as following
- Call getInstance() method as following
Call getInstance() method
getInstance() method
1 | String username = ""; |
2 | String password = ""; |
3 | |
4 | ConnectorConfig cc = new ConnectorConfig(); |
5 | cc.setAuthEndpoint("https://login.salesforce.com/services/Soap/u/19.0"); |
6 | cc.setServiceEndpoint("https://login.salesforce.com/services/Soap/u/19.0"); |
7 | cc.setManualLogin(true); |
8 | PartnerConnection conn = Connector.newConnection(cc); |
9 | |
10 | LoginResult loginResult = conn.login(username, password); |
11 | conn.setSessionHeader(loginResult.getSessionId()); |
12 | String serverUrl = loginResult.getServerUrl(); |
13 | cc.setServiceEndpoint(serverUrl); |
14 | |
15 | String instance = getInstance(loginResult); |
16 | logger.info(instance); |
String username = ""; String password = ""; ConnectorConfig cc = new ConnectorConfig(); cc.setAuthEndpoint("https://login.salesforce.com/services/Soap/u/19.0"); cc.setServiceEndpoint("https://login.salesforce.com/services/Soap/u/19.0"); cc.setManualLogin(true); PartnerConnection conn = Connector.newConnection(cc); LoginResult loginResult = conn.login(username, password); conn.setSessionHeader(loginResult.getSessionId()); String serverUrl = loginResult.getServerUrl(); cc.setServiceEndpoint(serverUrl); String instance = getInstance(loginResult); logger.info(instance);
1 | public static String getInstance(LoginResult loginResult) { |
2 | String url = loginResult.getServerUrl(); |
3 | String pat1 = "https://"; |
4 | String pat2 = "-api.salesforce.com"; |
5 | int pos1 = url.indexOf(pat1); |
6 | int pos2 = url.indexOf(pat2); |
7 | String instance = "ap1"; |
8 | if (pos1 >= 0 && pos2 >= 0 && pos1 + pat1.length() < pos2) { |
9 | instance = url.substring(pos1 + pat1.length(), pos2); |
10 | } |
11 | return instance; |
12 | } |
public static String getInstance(LoginResult loginResult) { String url = loginResult.getServerUrl(); String pat1 = "https://"; String pat2 = "-api.salesforce.com"; int pos1 = url.indexOf(pat1); int pos2 = url.indexOf(pat2); String instance = "ap1"; if (pos1 >= 0 && pos2 >= 0 && pos1 + pat1.length() < pos2) { instance = url.substring(pos1 + pat1.length(), pos2); } return instance; }
No comments:
Post a Comment