Add COntent
/**
*
*/
package com.braango.virtualdealer.supervisors;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import com.braango.client.ApiCallback;
import com.braango.client.ApiClient;
import com.braango.client.ApiException;
import com.braango.client.braangoapi.EmailsApi;
import com.braango.client.braangoapi.GroupsApi;
import com.braango.client.braangoapi.SupervisorsApi;
import com.braango.client.braangomodel.EmailOutputBodyData;
import com.braango.client.braangomodel.GroupInput;
import com.braango.client.braangomodel.GroupInputBody;
import com.braango.client.braangomodel.GroupOutput;
import com.braango.client.braangomodel.GroupOutputBodyData;
import com.braango.client.braangomodel.RequestHeader;
import com.braango.client.braangomodel.EmailInput;
import com.braango.client.braangomodel.EmailInputBody;
import com.braango.client.braangomodel.EmailOutput;
import com.braango.client.braangomodel.SupervisorInput;
import com.braango.client.braangomodel.SupervisorInputBody;
import com.braango.client.braangomodel.SupervisorOutput;
import com.braango.client.braangomodel.SupervisorOutputBodyData;
/**
* @author braango
*
* Sample code showing how to add supervisor
* for personnel for given group
*
* Note supervisor is another
* personnel within the system
*
* Both personnel i.e. supervisor
* and personnel to be supervised
* need to exist in the system
*
*/
public class AddSupervisor {
static String basePath = "https://testapi2.braango.com/v2/braango";
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
ApiClient braangoApiClient = new ApiClient();
// TEST auth token. Please contact
// sales@braango.com to have one
// created for you
String authToken = "ISNWF0P30WM0CMK";
braangoApiClient.setBasePath(basePath);
// Set the auth_token for api client to
// interact with Braango system
braangoApiClient.setApiKey(authToken);
// Api key is authorization to to access
// resources within braango system
//
// This key is different than auth_token
// that is used to validate the master account
String apiKey = "ISNfTMNOumV3xYNDd2g";
// Create personnel api. Personnel is hosted by subDealer
SupervisorsApi supervisorApi = new SupervisorsApi(braangoApiClient);
ApiCallback<SupervisorOutput> callBack = new ApiCallback<SupervisorOutput>() {
@Override
public void onUploadProgress(long bytesWritten,
long contentLength,
boolean done) {
System.out
.println("Place holder for tracking"
+ " request progress");
}
@Override
public void onSuccess(SupervisorOutput result, int statusCode,
Map<String, List<String>> responseHeaders) {
SupervisorOutputBodyData supervisorList = result.getBody()
.getData();
System.out.println("Group List : " + supervisorList);
}
@Override
public void onFailure(ApiException e, int statusCode,
Map<String, List<String>> responseHeaders) {
System.out.println("Error is " + statusCode + " "
+ e.getResponseBody());
}
@Override
public void onDownloadProgress(long bytesRead, long contentLength,
boolean done) {
}
};
// SupervisorInput wraps RequestHeader and SupervisorRequestBody
SupervisorInput supervisorInput = new SupervisorInput();
/*
* { "api_key": "ISNGvAzwuy4X7vAqrtV", "id": "any value",
* "account_type": "partner" }
*/
RequestHeader hdr = new RequestHeader();
// Set the account type to partner for
// virtual dealer and partner hosted
// accounts
hdr.setAccountType("partner");
// dealer_api_key returned
// when partner_dealer was created
hdr.setApiKey(apiKey);
// ID that will be reflected back
hdr.setId("group-create-s1002r1");
supervisorInput.setHeader(hdr);
SupervisorInputBody body = new SupervisorInputBody();
String supervisorPersonnelId = "0550c168-6117-45d5-a95f-e66593e6336b";
UUID supervisorId = UUID.fromString(supervisorPersonnelId);
body.setSupervisor(supervisorId);
supervisorInput.setBody(body);
try {
String subDealerId = "subdealers1002";
String salesPersonId = "b6520174-f4de-4ae6-b3e9-7f74174cb2d2";
String group = "DEFAULT";
supervisorApi.createSupervisorAsync(subDealerId, salesPersonId, group, supervisorInput, callBack);
} catch (ApiException e1) {
e1.printStackTrace();
}
}
}