You need to sign in to do that
Don't have an account?
Is it possible to send an http request (...httpResponse = http.send(httpRequest) ...) when in custom REST API I am using RestContext?
public class ScannedBusinessCardRESTResource {
public static void doGet() {
RestContext.response.addHeader('Content-Type', 'application/json');
String userId = RestContext.request.params.get('creatorId');
String status = RestContext.request.params.get('status');
String cardId = RestContext.request.params.get('id');
if(userId != null && status != null && cardId == null) {
RestContext.response.responseBody =
Blob.valueOf(JSON.serialize(
new DTOScannedBusinessCard.CardsList( ScannedBusinessCardDAO.getBusinessCardByCreatedByIdAndStatus(userId, status) )));
}
else if(cardId == null){
RestContext.response.responseBody
= Blob.valueOf(JSON.serialize( new DTOScannedBusinessCard.StatusMessage( 'errorMessage_string', '400' ) ));
}
if(userId == null && status == null && cardId != null) {
RestContext.response.responseBody =
Blob.valueOf(JSON.serialize(
new DTOScannedBusinessCard.CardsList_2( ScannedBusinessCardDAO.getCardByCardId(cardId))));
}
else if(userId == null && status == null){
RestContext.response.responseBody
= Blob.valueOf(JSON.serialize( new DTOScannedBusinessCard.StatusMessage( 'errorMessage_string', '400' ) ));
}
}
public static void doPost() {
System.debug('doPost()');
Scanned_Business_Cards__c result = new Scanned_Business_Cards__c();
RestRequest req = RestContext.request;
RestResponse res = RestContext.response;
ScannedBusinessCardDTO data = (ScannedBusinessCardDTO) JSON.deserialize(
RestContext.request.requestBody.toString(),
ScannedBusinessCardDTO.class
);
if(data.cardId != null) {
result = [SELECT Salutation__c,
First_Name__c, Last_Name__c,
Full_Name__c, Account_Name__c,
Title__c, Phone__c,
Mobile__c, Fax__c,
Email__c, Website__c,
Street1__c, Street2__c,
City__c, State_Country__c,
Country__c, Postcode__c, Address__c
FROM Scanned_Business_Cards__c WHERE Id = :data.cardId];
if(data.salutation != null) {
result.Salutation__c = data.salutation;
}
if(data.firstName != null) {
result.First_Name__c = data.firstName;
}
if(data.lastName != null) {
result.Last_Name__c = data.lastName;
}
if(data.accountName != null) {
result.Account_Name__c = data.accountName;
}
if(data.title != null) {
result.Title__c = data.title;
}
if(data.phone != null) {
result.Phone__c = data.phone;
}
if(data.mobile != null) {
result.Mobile__c = data.mobile;
}
if(data.fax != null) {
result.Fax__c = data.fax;
}
if(data.email != null) {
result.Email__c = data.email;
}
if(data.website != null) {
result.Website__c = data.website;
}
if(data.street1 != null) {
result.Street1__c = data.street1;
}
if(data.street2 != null) {
result.Street2__c = data.street2;
}
if(data.city != null) {
result.City__c = data.city;
}
if(data.stateCountry != null) {
result.State_Country__c = data.stateCountry;
}
if(data.country != null) {
result.Country__c = data.country;
}
if(data.postcode != null) {
result.Postcode__c = data.postcode;
}
if(data.notes != null) {
result.Notes__c = data.notes;
}
if(data.createdById != null) {
result.Created_By_Id__c = data.createdById;
}
if(data.status != null) {
result.Status__c = data.status;
}
if(data.accountId != null) {
result.Account__c = data.accountId;
}
if(data.contactId != null) {
result.Contact__c = data.contactId;
}
}
else {
result.Salutation__c = data.salutation;
result.First_Name__c = data.firstName;
result.Last_Name__c = data.lastName;
result.Account_Name__c = data.accountName;
result.Title__c = data.title;
result.Phone__c = data.phone;
result.Mobile__c = data.mobile;
result.Fax__c = data.fax;
result.Email__c = data.email;
result.Website__c = data.website;
result.Street1__c = data.street1;
result.Street2__c = data.street2;
result.City__c = data.city;
result.State_Country__c = data.stateCountry;
result.Country__c = data.country;
result.Postcode__c = data.postcode;
result.Notes__c = data.notes;
result.Created_By_Id__c = data.createdById;
result.Status__c = data.status;
result.Account__c = data.accountId;
result.Contact__c = data.contactId;
}
try{
upsert result;
RestContext.response.responseBody =
Blob.valueOf(JSON.serialize(
new DTOScannedBusinessCard.Status_CardsIsCreated( '200', result.Id)));
System.debug('170 RestContext.response.responseBody = ' + RestContext.response.responseBody);
} catch(DMLException e) {
RestContext.response.responseBody
= Blob.valueOf(JSON.serialize( new DTOScannedBusinessCard.StatusMessage( 'errorMessage', e.getMessage() ) ));
}
}
}
public static void doGet() {
RestContext.response.addHeader('Content-Type', 'application/json');
String userId = RestContext.request.params.get('creatorId');
String status = RestContext.request.params.get('status');
String cardId = RestContext.request.params.get('id');
if(userId != null && status != null && cardId == null) {
RestContext.response.responseBody =
Blob.valueOf(JSON.serialize(
new DTOScannedBusinessCard.CardsList( ScannedBusinessCardDAO.getBusinessCardByCreatedByIdAndStatus(userId, status) )));
}
else if(cardId == null){
RestContext.response.responseBody
= Blob.valueOf(JSON.serialize( new DTOScannedBusinessCard.StatusMessage( 'errorMessage_string', '400' ) ));
}
if(userId == null && status == null && cardId != null) {
RestContext.response.responseBody =
Blob.valueOf(JSON.serialize(
new DTOScannedBusinessCard.CardsList_2( ScannedBusinessCardDAO.getCardByCardId(cardId))));
}
else if(userId == null && status == null){
RestContext.response.responseBody
= Blob.valueOf(JSON.serialize( new DTOScannedBusinessCard.StatusMessage( 'errorMessage_string', '400' ) ));
}
}
public static void doPost() {
System.debug('doPost()');
Scanned_Business_Cards__c result = new Scanned_Business_Cards__c();
RestRequest req = RestContext.request;
RestResponse res = RestContext.response;
ScannedBusinessCardDTO data = (ScannedBusinessCardDTO) JSON.deserialize(
RestContext.request.requestBody.toString(),
ScannedBusinessCardDTO.class
);
if(data.cardId != null) {
result = [SELECT Salutation__c,
First_Name__c, Last_Name__c,
Full_Name__c, Account_Name__c,
Title__c, Phone__c,
Mobile__c, Fax__c,
Email__c, Website__c,
Street1__c, Street2__c,
City__c, State_Country__c,
Country__c, Postcode__c, Address__c
FROM Scanned_Business_Cards__c WHERE Id = :data.cardId];
if(data.salutation != null) {
result.Salutation__c = data.salutation;
}
if(data.firstName != null) {
result.First_Name__c = data.firstName;
}
if(data.lastName != null) {
result.Last_Name__c = data.lastName;
}
if(data.accountName != null) {
result.Account_Name__c = data.accountName;
}
if(data.title != null) {
result.Title__c = data.title;
}
if(data.phone != null) {
result.Phone__c = data.phone;
}
if(data.mobile != null) {
result.Mobile__c = data.mobile;
}
if(data.fax != null) {
result.Fax__c = data.fax;
}
if(data.email != null) {
result.Email__c = data.email;
}
if(data.website != null) {
result.Website__c = data.website;
}
if(data.street1 != null) {
result.Street1__c = data.street1;
}
if(data.street2 != null) {
result.Street2__c = data.street2;
}
if(data.city != null) {
result.City__c = data.city;
}
if(data.stateCountry != null) {
result.State_Country__c = data.stateCountry;
}
if(data.country != null) {
result.Country__c = data.country;
}
if(data.postcode != null) {
result.Postcode__c = data.postcode;
}
if(data.notes != null) {
result.Notes__c = data.notes;
}
if(data.createdById != null) {
result.Created_By_Id__c = data.createdById;
}
if(data.status != null) {
result.Status__c = data.status;
}
if(data.accountId != null) {
result.Account__c = data.accountId;
}
if(data.contactId != null) {
result.Contact__c = data.contactId;
}
}
else {
result.Salutation__c = data.salutation;
result.First_Name__c = data.firstName;
result.Last_Name__c = data.lastName;
result.Account_Name__c = data.accountName;
result.Title__c = data.title;
result.Phone__c = data.phone;
result.Mobile__c = data.mobile;
result.Fax__c = data.fax;
result.Email__c = data.email;
result.Website__c = data.website;
result.Street1__c = data.street1;
result.Street2__c = data.street2;
result.City__c = data.city;
result.State_Country__c = data.stateCountry;
result.Country__c = data.country;
result.Postcode__c = data.postcode;
result.Notes__c = data.notes;
result.Created_By_Id__c = data.createdById;
result.Status__c = data.status;
result.Account__c = data.accountId;
result.Contact__c = data.contactId;
}
try{
upsert result;
RestContext.response.responseBody =
Blob.valueOf(JSON.serialize(
new DTOScannedBusinessCard.Status_CardsIsCreated( '200', result.Id)));
System.debug('170 RestContext.response.responseBody = ' + RestContext.response.responseBody);
} catch(DMLException e) {
RestContext.response.responseBody
= Blob.valueOf(JSON.serialize( new DTOScannedBusinessCard.StatusMessage( 'errorMessage', e.getMessage() ) ));
}
}
}