diff options
author | Olivier Lamy <olamy@apache.org> | 2012-04-04 09:57:50 +0000 |
---|---|---|
committer | Olivier Lamy <olamy@apache.org> | 2012-04-04 09:57:50 +0000 |
commit | 5a770cf0b6c2166fa46c1588b0535eebf2a2ca48 (patch) | |
tree | d7423b203a68724a31b8b7214e414a28a9b75ddd /archiva-modules/archiva-web/archiva-rest/archiva-rest-api | |
parent | 016ae930af8a832632facccad8d514f6eb561cd5 (diff) | |
download | archiva-5a770cf0b6c2166fa46c1588b0535eebf2a2ca48.tar.gz archiva-5a770cf0b6c2166fa46c1588b0535eebf2a2ca48.zip |
[MRM-1620] add a tab to browse artifact content in artifact detail view
add rest api design.
git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1309312 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'archiva-modules/archiva-web/archiva-rest/archiva-rest-api')
2 files changed, 83 insertions, 0 deletions
diff --git a/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/ArtifactContentEntry.java b/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/ArtifactContentEntry.java new file mode 100644 index 000000000..fac87f2ca --- /dev/null +++ b/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/ArtifactContentEntry.java @@ -0,0 +1,75 @@ +package org.apache.archiva.rest.api.model; +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import javax.xml.bind.annotation.XmlRootElement; + +/** + * @author Olivier Lamy + * @since 1.4-M3 + */ +@XmlRootElement( name = "artifactContentEntry" ) +public class ArtifactContentEntry +{ + private String name; + + private boolean file; + + public ArtifactContentEntry() + { + // no op + } + + public ArtifactContentEntry( String name, boolean file ) + { + this.name = name; + this.file = file; + } + + public String getName() + { + return name; + } + + public void setName( String name ) + { + this.name = name; + } + + public boolean isFile() + { + return file; + } + + public void setFile( boolean file ) + { + this.file = file; + } + + @Override + public String toString() + { + final StringBuilder sb = new StringBuilder(); + sb.append( "ArtifactContentEntry" ); + sb.append( "{name='" ).append( name ).append( '\'' ); + sb.append( ", file=" ).append( file ); + sb.append( '}' ); + return sb.toString(); + } +} diff --git a/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/BrowseService.java b/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/BrowseService.java index 332892b79..ff628931b 100644 --- a/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/BrowseService.java +++ b/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/BrowseService.java @@ -21,6 +21,7 @@ package org.apache.archiva.rest.api.services; import org.apache.archiva.admin.model.beans.ManagedRepository; import org.apache.archiva.metadata.model.ProjectVersionMetadata; import org.apache.archiva.rest.api.model.Artifact; +import org.apache.archiva.rest.api.model.ArtifactContentEntry; import org.apache.archiva.rest.api.model.BrowseResult; import org.apache.archiva.rest.api.model.Entry; import org.apache.archiva.rest.api.model.TreeEntry; @@ -144,4 +145,11 @@ public interface BrowseService @PathParam( "v" ) String version, @PathParam( "key" ) String key, @QueryParam( "repositoryId" ) String repositoryId ) throws ArchivaRestServiceException; + + List<ArtifactContentEntry> getArtifactContentEntries( @PathParam( "g" ) String groupId, + @PathParam( "a" ) String artifactId, + @PathParam( "v" ) String version, + @PathParam( "" ) String path, + @QueryParam( "repositoryId" ) String repositoryId ) + throws ArchivaRestServiceException; } |