package org.jboss.resteasy.springmvc.test.client; import org.jboss.resteasy.springmvc.test.jaxb.BasicJaxbObject; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.QueryParam; import javax.ws.rs.core.Response; @Path("/basic") public interface BasicResource { /** test basic setup -- implemented in BasicResourceImpl **/ @GET @Produces("text/plain") public String getBasicString(); @GET @Produces("application/xml") @Path("object") public BasicJaxbObject getBasicObject(); @GET @Produces("application/json") @Path("object") public Response getWrongContentTypeBasicObject(); /** test Spring MVC ModelAndView **/ @GET @Produces("application/custom") @Path("/custom-rep") public String getSpringMvcValue(); /** * test singleton with custom registration -- implemented in CounterResource, * with bean named singletonScopedResource **/ @GET @Produces("text/plain") @Path("/singleton/count") public Integer getSingletonCount(); /** * test prototype with custom registration -- implemented in CounterResource, * with bean named prototypeScopedResource **/ @GET @Produces("text/plain") @Path("/prototype/count") public Integer getPrototypeCount(); /** * test getting context header via setting of an @Context object in an @Autowired * constructor **/ @GET @Produces("text/plain") @Path("/header") public String getContentTypeHeader(); /** * test Spring @Context injection into a separate java object by spring - * This is extended functionality, not JAX-RS core **/ @GET @Produces("text/plain") @Path("/url") public String getURL(); /** * test Spring @Controllers along with **/ @GET @Produces("text/plain") @Path("interceptor-test") public Integer getSpringInterceptorCount(@QueryParam("type") String type); @GET @Produces("text/plain") @Path("bogus-rul-test") public Response testBogusUrl(); @GET @Produces("application/xml") @Path("spring/object/xml") public BasicJaxbObject testSpringXml(); }