1 package org.apache.archiva.rest.api.services;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 import org.apache.archiva.metadata.model.facets.RepositoryProblemFacet;
22 import org.apache.archiva.metadata.repository.stats.RepositoryStatistics;
23 import org.apache.archiva.redback.authorization.RedbackAuthorization;
24 import org.apache.archiva.security.common.ArchivaRoleConstants;
25
26 import javax.ws.rs.GET;
27 import javax.ws.rs.Path;
28 import javax.ws.rs.PathParam;
29 import javax.ws.rs.Produces;
30 import javax.ws.rs.QueryParam;
31 import javax.ws.rs.core.MediaType;
32 import java.util.Date;
33 import java.util.List;
34
35
36
37
38
39
40
41 @Path( "/reportServices/" )
42 public interface ReportRepositoriesService
43 {
44
45 @Path( "getStatisticsReport" )
46 @GET
47 @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )
48 @RedbackAuthorization( permissions = ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
49 List<RepositoryStatistics> getStatisticsReport( @QueryParam( "repository" ) List<String> repositoriesId,
50 @QueryParam( "rowCount" ) int rowCount,
51 @QueryParam( "startDate" ) Date startDate,
52 @QueryParam( "endDate" ) Date endDate )
53 throws ArchivaRestServiceException;
54
55 @Path( "getHealthReports/{repository}/{rowCount}" )
56 @GET
57 @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )
58 @RedbackAuthorization( permissions = ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )
59 List<RepositoryProblemFacet> getHealthReport( @PathParam( "repository" ) String repository,
60 @QueryParam( "groupId" ) String groupId,
61 @PathParam( "rowCount" ) int rowCount )
62 throws ArchivaRestServiceException;
63
64 }