@Retention(value=CLASS) @Target(value={FIELD,METHOD,PARAMETER}) public @interface RestService
Apply @Rest on an interface to create a RestService class that will
contain implementation of rest calls related to the methods you define in the
interface.
You should then inject your RestService class by using RestService
annotation in any enhanced classes.
Note: Implementation is based on Spring Android Rest-template library. So you MUST have the library in your classpath and we highly recommend you to take some time to read this document and understand how the library works.
Example :
@Rest(rootUrl = "http://myserver", converters = MappingJacksonHttpMessageConverter.class)
public interface MyRestClient {
@Get("/events/{id}")
Event getEvent(long id);
@Post("/events/new")
void newEvent(@Body Event event);
}
@EBean
public class MyBean {
@RestService
MyRestClient myRestClient;
@RestService
void singleInjection2(MyRestClient myRestClient) {
// do stuff
}
void multiInjection(@RestService MyRestClient myRestClient, @RestService AnotherRestClient anotherRestClient) {
// do stuff
}
public void getEvent(long id) {
return myRestClient.getEvent(id);
}
}
RestCopyright © 2010–2020 simpligility technologies inc.. All rights reserved.