1   package com.atlassian.plugins.rest.test;
2   
3   import javax.ws.rs.Consumes;
4   import javax.ws.rs.GET;
5   import javax.ws.rs.Path;
6   import javax.ws.rs.PathParam;
7   import javax.ws.rs.Produces;
8   import javax.ws.rs.core.Context;
9   import static javax.ws.rs.core.MediaType.*;
10  import javax.ws.rs.core.UriInfo;
11  
12  @Path("/projects")
13  @Consumes({APPLICATION_XML, APPLICATION_JSON})
14  @Produces({APPLICATION_XML, APPLICATION_JSON})
15  public class ProjectsResource
16  {
17      private final Projects projects = new Projects();
18  
19      @GET
20      public Projects getAllProjects() throws Exception
21      {
22          return projects;
23      }
24  
25      @Path("{project}")
26      public ProjectSubResource getProject(@PathParam("project") String projectName, @Context UriInfo uriInfo)
27      {
28          return new ProjectSubResource(projects, projectName, uriInfo);
29      }
30  }