You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by br...@apache.org on 2006/12/23 08:16:53 UTC

svn commit: r489863 - in /maven/archiva/trunk/archiva-webapp/src/main: java/org/apache/maven/archiva/web/action/ java/org/apache/maven/archiva/web/mapper/ resources/ webapp/WEB-INF/jsp/ webapp/WEB-INF/jsp/include/

Author: brett
Date: Fri Dec 22 23:16:52 2006
New Revision: 489863

URL: http://svn.apache.org/viewvc?view=rev&rev=489863
Log:
[MRM-131] implement mailing lists tab

Added:
    maven/archiva/trunk/archiva-webapp/src/main/webapp/WEB-INF/jsp/include/mailingLists.jspf   (with props)
Modified:
    maven/archiva/trunk/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java
    maven/archiva/trunk/archiva-webapp/src/main/java/org/apache/maven/archiva/web/mapper/RepositoryActionMapper.java
    maven/archiva/trunk/archiva-webapp/src/main/resources/xwork.xml
    maven/archiva/trunk/archiva-webapp/src/main/webapp/WEB-INF/jsp/showArtifact.jsp

Modified: maven/archiva/trunk/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java?view=diff&rev=489863&r1=489862&r2=489863
==============================================================================
--- maven/archiva/trunk/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java (original)
+++ maven/archiva/trunk/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java Fri Dec 22 23:16:52 2006
@@ -135,6 +135,8 @@
 
     private String artifactPath;
 
+    private List mailingLists;
+
     public String artifact()
         throws ConfigurationStoreException, IOException, XmlPullParserException, ProjectBuildingException,
         ResourceDoesNotExistException, ProxyException, ArtifactResolutionException
@@ -189,6 +191,23 @@
         return SUCCESS;
     }
 
+    public String mailingLists()
+        throws ConfigurationStoreException, IOException, XmlPullParserException, ProjectBuildingException
+    {
+        if ( !checkParameters() )
+        {
+            return ERROR;
+        }
+
+        MavenProject project = readProject();
+
+        model = project.getModel();
+
+        this.mailingLists = project.getMailingLists();
+
+        return SUCCESS;
+    }
+
     public String dependees()
         throws ConfigurationStoreException, IOException, XmlPullParserException, ProjectBuildingException,
         RepositoryIndexException, RepositoryIndexSearchException
@@ -516,5 +535,10 @@
     public String getRepositoryId()
     {
         return repositoryId;
+    }
+
+    public List getMailingLists()
+    {
+        return mailingLists;
     }
 }

Modified: maven/archiva/trunk/archiva-webapp/src/main/java/org/apache/maven/archiva/web/mapper/RepositoryActionMapper.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-webapp/src/main/java/org/apache/maven/archiva/web/mapper/RepositoryActionMapper.java?view=diff&rev=489863&r1=489862&r2=489863
==============================================================================
--- maven/archiva/trunk/archiva-webapp/src/main/java/org/apache/maven/archiva/web/mapper/RepositoryActionMapper.java (original)
+++ maven/archiva/trunk/archiva-webapp/src/main/java/org/apache/maven/archiva/web/mapper/RepositoryActionMapper.java Fri Dec 22 23:16:52 2006
@@ -59,6 +59,11 @@
             return BROWSE_PREFIX + params.remove( "groupId" ) + "/" + params.remove( "artifactId" ) + "/" +
                 params.remove( "version" ) + "/dependencies";
         }
+        else if ( "showArtifactMailingLists".equals( actionMapping.getName() ) )
+        {
+            return BROWSE_PREFIX + params.remove( "groupId" ) + "/" + params.remove( "artifactId" ) + "/" +
+                params.remove( "version" ) + "/mailingLists";
+        }
         else if ( "showArtifactDependees".equals( actionMapping.getName() ) )
         {
             return BROWSE_PREFIX + params.remove( "groupId" ) + "/" + params.remove( "artifactId" ) + "/" +
@@ -121,6 +126,10 @@
                     if ( "dependencies".equals( parts[3] ) )
                     {
                         return new ActionMapping( "showArtifactDependencies", "/", "", params );
+                    }
+                    else if ( "mailingLists".equals( parts[3] ) )
+                    {
+                        return new ActionMapping( "showArtifactMailingLists", "/", "", params );
                     }
                     else if ( "usedby".equals( parts[3] ) )
                     {

Modified: maven/archiva/trunk/archiva-webapp/src/main/resources/xwork.xml
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-webapp/src/main/resources/xwork.xml?view=diff&rev=489863&r1=489862&r2=489863
==============================================================================
--- maven/archiva/trunk/archiva-webapp/src/main/resources/xwork.xml (original)
+++ maven/archiva/trunk/archiva-webapp/src/main/resources/xwork.xml Fri Dec 22 23:16:52 2006
@@ -165,6 +165,10 @@
       <result>/WEB-INF/jsp/showArtifact.jsp</result>
     </action>
 
+    <action name="showArtifactMailingLists" class="showArtifactAction" method="mailingLists">
+      <result>/WEB-INF/jsp/showArtifact.jsp</result>
+    </action>
+
     <action name="showArtifactDependencies" class="showArtifactAction" method="dependencies">
       <result>/WEB-INF/jsp/showArtifact.jsp</result>
     </action>

Added: maven/archiva/trunk/archiva-webapp/src/main/webapp/WEB-INF/jsp/include/mailingLists.jspf
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-webapp/src/main/webapp/WEB-INF/jsp/include/mailingLists.jspf?view=auto&rev=489863
==============================================================================
--- maven/archiva/trunk/archiva-webapp/src/main/webapp/WEB-INF/jsp/include/mailingLists.jspf (added)
+++ maven/archiva/trunk/archiva-webapp/src/main/webapp/WEB-INF/jsp/include/mailingLists.jspf Fri Dec 22 23:16:52 2006
@@ -0,0 +1,84 @@
+<%--
+  ~ 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.
+  --%>
+
+<%@ taglib prefix="ww" uri="/webwork" %>
+<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
+<%@ taglib prefix="my" tagdir="/WEB-INF/tags" %>
+
+<c:forEach items="${mailingLists}" var="mailingList">
+  <h3>
+      ${mailingList.name}
+  </h3>
+  <%-- TODO: description
+    <p>
+      Description blah blah blah
+    </p>
+  --%>
+  <ul>
+    <c:if test="${!empty(mailingList.subscribe)}">
+      <li>
+        <b>Subscribe:</b>
+        <a href="mailto:${mailingList.subscribe}">${mailingList.subscribe}</a>
+      </li>
+    </c:if>
+    <c:if test="${!empty(mailingList.post)}">
+      <li>
+        <b>Post:</b>
+        <a href="mailto:${mailingList.post}">${mailingList.post}</a>
+      </li>
+    </c:if>
+    <c:if test="${!empty(mailingList.unsubscribe)}">
+      <li>
+        <b>Unsubscribe:</b>
+        <a href="mailto:${mailingList.unsubscribe}">${mailingList.unsubscribe}</a>
+      </li>
+    </c:if>
+      <%-- TODO: not in the POM yet
+          <li>
+            <b>List owner:</b>
+            <a href="mailto:${mailingList.owner}">${mailingList.owner}</a>
+          </li>
+      --%>
+    <c:if test="${!empty(mailingList.archive)}">
+      <li>
+        <b>Archive:</b>
+        <ul>
+          <li>
+            <a href="${mailingList.archive}">${mailingList.archive}</a>
+          </li>
+        </ul>
+      </li>
+    </c:if>
+    <c:if test="${!empty(mailingList.otherArchives)}">
+      <li>
+        <b>Other Archives:</b>
+        <ul>
+          <c:forEach items="${mailingList.otherArchives}" var="archive">
+            <li>
+              <a href="${archive}">${archive}</a>
+            </li>
+          </c:forEach>
+        </ul>
+      </li>
+    </c:if>
+  </ul>
+</c:forEach>
+<c:if test="${empty(mailingLists)}">
+  <strong>No mailing lists</strong>
+</c:if>

Propchange: maven/archiva/trunk/archiva-webapp/src/main/webapp/WEB-INF/jsp/include/mailingLists.jspf
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: maven/archiva/trunk/archiva-webapp/src/main/webapp/WEB-INF/jsp/showArtifact.jsp
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-webapp/src/main/webapp/WEB-INF/jsp/showArtifact.jsp?view=diff&rev=489863&r1=489862&r2=489863
==============================================================================
--- maven/archiva/trunk/archiva-webapp/src/main/webapp/WEB-INF/jsp/showArtifact.jsp (original)
+++ maven/archiva/trunk/archiva-webapp/src/main/webapp/WEB-INF/jsp/showArtifact.jsp Fri Dec 22 23:16:52 2006
@@ -114,9 +114,14 @@
         </ww:url>
       </c:set>
       <my:currentWWUrl url="${url}">Used By</my:currentWWUrl>
-      <%-- TODO:
-          <a href="TODO">Mailing Lists</a>
-      --%>
+      <c:set var="url">
+        <ww:url action="showArtifactMailingLists">
+          <ww:param name="groupId" value="%{groupId}"/>
+          <ww:param name="artifactId" value="%{artifactId}"/>
+          <ww:param name="version" value="%{version}"/>
+        </ww:url>
+      </c:set>
+      <my:currentWWUrl url="${url}">Mailing Lists</my:currentWWUrl>
     </span>
   </div>
 
@@ -129,6 +134,9 @@
       </c:when>
       <c:when test="${dependencyTree != null}">
         <%@ include file="/WEB-INF/jsp/include/dependencyTree.jspf" %>
+      </c:when>
+      <c:when test="${mailingLists != null}">
+        <%@ include file="/WEB-INF/jsp/include/mailingLists.jspf" %>
       </c:when>
       <c:otherwise>
         <%@ include file="/WEB-INF/jsp/include/artifactInfo.jspf" %>