infobip.api.client.SendSingleTextualSms Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of infobip-api-java-client Show documentation
Show all versions of infobip-api-java-client Show documentation
API client in Java for Infobip's API (http://dev.infobip.com/).
package infobip.api.client;
import infobip.api.config.Configuration;
import retrofit.*;
import retrofit.http.*;
import com.google.gson.GsonBuilder;
import retrofit.converter.GsonConverter;
import infobip.api.config.TimeoutClientProvider;
import infobip.api.model.sms.mt.send.SMSResponse;
import infobip.api.model.sms.mt.send.textual.SMSTextualRequest;
/**
* This is a generated class and is not intended for modification!
*/
public class SendSingleTextualSms {
private final Configuration configuration;
public SendSingleTextualSms(Configuration configuration) {
this.configuration = configuration;
}
interface SendSingleTextualSmsService {
@POST("/sms/1/text/single")
SMSResponse execute( @Body SMSTextualRequest bodyObject);
}
public SMSResponse execute(SMSTextualRequest bodyObject) {
RestAdapter restAdapter = new RestAdapter.Builder()
.setEndpoint(configuration.getBaseUrl())
.setRequestInterceptor(getRequestInterceptor())
.setConverter(new GsonConverter(new GsonBuilder()
.setDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ")
.create()))
.setClient(new TimeoutClientProvider(configuration))
.build();
SendSingleTextualSmsService service = restAdapter.create(SendSingleTextualSmsService.class);
return service.execute(bodyObject);
}
private RequestInterceptor getRequestInterceptor() {
return new RequestInterceptor() {
@Override
public void intercept(RequestFacade request) {
if (configuration != null && configuration.getAuthorizationHeader() != null) {
request.addHeader("Authorization", configuration.getAuthorizationHeader());
request.addHeader("User-Agent", "Java-Client-Library");
}
}
};
}
}