Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: org/repoweb/model/util/ALU.java


1   /*
2    * REPOWEB, repository manager.
3    *
4    * Terms of license - http://opensource.org/licenses/apachepl.php
5    */
6   package org.repoweb.model.util;
7   import java.util.Iterator;
8   import javax.servlet.http.HttpServletRequest;
9   import org.repoweb.model.Artifact;
10  import org.repoweb.model.ArtifactList;
11  import org.repoweb.model.ArtifactListFilter;
12  import org.repoweb.model.Group;
13  /**
14   * Utilitary class for JSPs .
15   */
16  public final class ALU {
17      private static final String DO_MAVEN = "/do/maven/";
18  
19      private ALU() {}
20  
21      public static Iterator groups(final ArtifactList list) {
22          ArtifactListFilter filter = list.newPropertyFilter("groupId");
23          return filter.applyFilter();
24      }
25  
26  
27      public static Iterator versionByGroup(final Object groupId, final ArtifactList list) {
28          ArtifactListFilter filter = list.newPropertyFilter("version");
29          filter.setGroupId((String)groupId);
30          filter.setReverse(true);
31          return filter.applyFilter();
32      }
33  
34  
35      public static Iterator artifactByGroupAndVersion(final Object groupId,
36          final Object version, final ArtifactList list) {
37          ArtifactListFilter filter = list.newArtifactFilter();
38          filter.setGroupId((String)groupId);
39          filter.setVersion((String)version);
40          return filter.applyFilter();
41      }
42  
43  
44      // ------------------------------------------------------------------------
45      // For the second view
46      // ------------------------------------------------------------------------
47      public static Iterator typeByGroup(final Object groupId, final ArtifactList list) {
48          ArtifactListFilter filter = list.newPropertyFilter("type");
49          filter.setGroupId((String)groupId);
50          return filter.applyFilter();
51      }
52  
53  
54      public static Iterator artifactIdByGroupAndType(final Object groupId,
55          final Object type, final ArtifactList list) {
56          ArtifactListFilter filter = list.newPropertyFilter("artifactId");
57          filter.setGroupId((String)groupId);
58          filter.setType((String)type);
59          return filter.applyFilter();
60      }
61  
62  
63      public static Iterator artifactFor(final Object groupId, final Object type,
64          final Object artifactId, final ArtifactList list) {
65          ArtifactListFilter filter = list.newArtifactFilter();
66          filter.setGroupId((String)groupId);
67          filter.setType((String)type);
68          filter.setArtifactId((String)artifactId);
69          filter.setReverse(true);
70          return filter.applyFilter();
71      }
72  
73  
74      // ------------------------------------------------------------------------
75      // URL factory
76      // ------------------------------------------------------------------------
77      public static String groupURL(final HttpServletRequest request, final Object group) {
78          Object groupId = group;
79          if (group instanceof Group) {
80              groupId = ((Group)group).getGroupId();
81          }
82          return request.getContextPath() + DO_MAVEN + groupId;
83      }
84  
85  
86      public static String groupTypeURL(final HttpServletRequest request,
87          final Object groupId, final Object type) {
88          String typeWithS = (((String)type).endsWith("s")) ? (String)type : (type + "s");
89          return request.getContextPath() + DO_MAVEN + groupId + "/" + typeWithS;
90      }
91  
92  
93      public static String artifactURL(final HttpServletRequest request,
94          final Object artifact) {
95          Artifact art = (Artifact)artifact;
96          return request.getContextPath() + DO_MAVEN + art.getGroupId() + "/"
97          + art.getType() + "s/" + art.getFileName();
98      }
99  }