infobip.api.client.GetReceivedMessages 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.mo.reports.MOReportResponse;
/**
* This is a generated class and is not intended for modification!
*/
public class GetReceivedMessages {
private final Configuration configuration;
public GetReceivedMessages(Configuration configuration) {
this.configuration = configuration;
}
interface GetReceivedMessagesService {
@GET("/sms/1/inbox/reports")
MOReportResponse execute(@Query("limit") Integer limit);
}
public MOReportResponse execute(Integer limit) {
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();
GetReceivedMessagesService service = restAdapter.create(GetReceivedMessagesService.class);
return service.execute(limit);
}
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");
}
}
};
}
}