[jboss-svn-commits] JBL Code SVN: r35408 - in labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community: magnolia/services/ws and 1 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Oct 4 11:00:57 EDT 2010


Author: unibrew
Date: 2010-10-04 11:00:56 -0400 (Mon, 04 Oct 2010)
New Revision: 35408

Modified:
   labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/navigation/ProjectNavigation.java
   labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/navigation/ProjectNavigationBean.java
   labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/ws/MagnoliaWebService.java
   labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/ws/MagnoliaWebServiceBean.java
   labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/project/Project.java
Log:
[ORG-563] Another update of project navigation service and related.

Modified: labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/navigation/ProjectNavigation.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/navigation/ProjectNavigation.java	2010-10-04 14:48:47 UTC (rev 35407)
+++ labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/navigation/ProjectNavigation.java	2010-10-04 15:00:56 UTC (rev 35408)
@@ -15,12 +15,16 @@
     public final static String FOOTER_NAVIGATION = "projsubnav_footer";
     public final static String ABSOLUTE_URL_CONTEXT_PATH = "http://www.jboss.org";
     
-    public String getProjectNavigationHTML(String projectIdName,String currentURI) throws ProjectNavigationException;
+    public String getProjectNavigationHTML(String projectIdName,String parentIdName,String tabHightlight) throws ProjectNavigationException;
     
+    public String getProjectNavigationHTML(String projectIdName,String parentIdName) throws ProjectNavigationException;
+    
     public String getProjectNavigationHTML(String projectIdName) throws ProjectNavigationException;
     
     public String getFooterNavigationHTML(String projectIdName) throws ProjectNavigationException;
     
-    public String getProjectNavigationHTML(String projectIdName, boolean absoluteUrls, String contextPathPrefix , String navigationType , String currentURI) throws ProjectNavigationException;
+    public String getFooterNavigationHTML(String projectIdName,String parentProjectId) throws ProjectNavigationException;
     
+    public String getProjectNavigationHTML(String projectIdName, boolean absoluteUrls, String contextPathPrefix , String navigationType , String parentIdName, String tabHighlight, String currentURI ) throws ProjectNavigationException;
+    
 }

Modified: labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/navigation/ProjectNavigationBean.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/navigation/ProjectNavigationBean.java	2010-10-04 14:48:47 UTC (rev 35407)
+++ labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/navigation/ProjectNavigationBean.java	2010-10-04 15:00:56 UTC (rev 35408)
@@ -59,20 +59,28 @@
         freemarkerCfg=cfg;
     }
     
-    public String getProjectNavigationHTML(String projectIdName, String currentURI) throws ProjectNavigationException {
-        return getProjectNavigationHTML(projectIdName,true,ABSOLUTE_URL_CONTEXT_PATH,HEADER_NAVIGATION,currentURI);
+    public String getProjectNavigationHTML(String projectIdName, String parrentIdName, String tabHighlight ) throws ProjectNavigationException {
+        return getProjectNavigationHTML(projectIdName,true,ABSOLUTE_URL_CONTEXT_PATH,HEADER_NAVIGATION,parrentIdName,tabHighlight,null);
     }
     
+    public String getProjectNavigationHTML(String projectIdName, String parrentIdName) throws ProjectNavigationException {
+        return getProjectNavigationHTML(projectIdName,true,ABSOLUTE_URL_CONTEXT_PATH,HEADER_NAVIGATION,parrentIdName,null,null);
+    }
+    
     public String getProjectNavigationHTML(String projectIdName) throws ProjectNavigationException {
-        return getProjectNavigationHTML(projectIdName,true,ABSOLUTE_URL_CONTEXT_PATH,HEADER_NAVIGATION,null);
+        return getProjectNavigationHTML(projectIdName,true,ABSOLUTE_URL_CONTEXT_PATH,HEADER_NAVIGATION,null,null,null);
     }
     
     public String getFooterNavigationHTML(String projectIdName ) throws ProjectNavigationException {
-        return getProjectNavigationHTML(projectIdName,true,ABSOLUTE_URL_CONTEXT_PATH,FOOTER_NAVIGATION,null);
+        return getProjectNavigationHTML(projectIdName,true,ABSOLUTE_URL_CONTEXT_PATH,FOOTER_NAVIGATION,null,null,null);
     }
+    
+    public String getFooterNavigationHTML(String projectIdName , String parentProjectId ) throws ProjectNavigationException {
+        return getProjectNavigationHTML(projectIdName,true,ABSOLUTE_URL_CONTEXT_PATH,FOOTER_NAVIGATION,parentProjectId,null,null);
+    }
 
     public String getProjectNavigationHTML(String projectIdName,
-            boolean absoluteUrls, String contextPathPrefix, String navigationType , String currentURI ) throws ProjectNavigationException {
+            boolean absoluteUrls, String contextPathPrefix, String navigationType , String parentIdName, String tabHighlight, String currentURI ) throws ProjectNavigationException {
         
         Writer html = new StringWriter();
         
@@ -99,6 +107,8 @@
             root.put("integerValue",new Integer(0));
             root.put("navigationType", navigationType);
             root.put("contextPath", contextPathPrefix);
+            root.put("parentProjectId", parentIdName==null?"":parentIdName);
+            root.put("tabHighlight", tabHighlight==null?"":tabHighlight);
             root.put("currentURI", currentURI==null?"":currentURI );
             template.process(root, html);
             html.flush();

Modified: labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/ws/MagnoliaWebService.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/ws/MagnoliaWebService.java	2010-10-04 14:48:47 UTC (rev 35407)
+++ labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/ws/MagnoliaWebService.java	2010-10-04 15:00:56 UTC (rev 35408)
@@ -7,7 +7,10 @@
 import javax.jws.WebParam;
 import javax.jws.WebService;
 
+import org.jboss.community.magnolia.services.exceptions.ProjectServiceException;
+import org.jboss.community.project.Project;
 
+
 /**
  * @author Ryszard Kozmik <rkozmik at redhat.com>
  *
@@ -15,13 +18,25 @@
 @WebService
 public interface MagnoliaWebService {
     
-    @WebMethod(operationName="ProjectNavigationWithHighLighting")
-    public String getProjectNavigationHTML( @WebParam(name="projectId") String projectIdName,String currentURI);
-    
     @WebMethod(operationName="ProjectNavigation")
     public String getProjectNavigationHTML( @WebParam(name="projectId") String projectIdName);
     
+    @WebMethod(operationName="ProjectNavigationWithParent")
+    public String getProjectNavigationHTMLWithParent( @WebParam(name="projectId") String projectIdName, @WebParam(name="parentProjectId") String parentProjectId);
+    
+    @WebMethod(operationName="ProjectNavigationWithParentAndHighlighting")
+    public String getProjectNavigationHTMLWithParentAndHighlighting( @WebParam(name="projectId") String projectIdName, @WebParam(name="parentProjectId") String parentProjectId, @WebParam(name="tabHighlight") String tabHighlight);
+    
     @WebMethod(operationName="ProjectFooterNavigation")
-    public String getFooterNavigationHTML( @WebParam(name="projectId") String projectIdName);
-
+    public String getFooterNavigationHTML( @WebParam(name="projectId") String projectId);
+    
+    @WebMethod(operationName="ProjectFooterNavigationWithParent")
+    public String getFooterNavigationHTMLWithParent( @WebParam(name="projectId") String projectId , @WebParam(name="parentProjectId") String parentProjectId);
+    
+    @WebMethod(operationName="ProjectById")
+    public Project getProjectById( @WebParam(name="projectId") String projectId);
+    
+    @WebMethod(operationName="ProjectByIdAndParentId")
+    public Project getProjectByIdAndParentId( @WebParam(name="projectId") String projectId, @WebParam(name="parentProjectId") String parentProjectId);
+    
 }

Modified: labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/ws/MagnoliaWebServiceBean.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/ws/MagnoliaWebServiceBean.java	2010-10-04 14:48:47 UTC (rev 35407)
+++ labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/magnolia/services/ws/MagnoliaWebServiceBean.java	2010-10-04 15:00:56 UTC (rev 35408)
@@ -7,7 +7,11 @@
 import javax.ejb.Stateless;
 import javax.jws.WebService;
 
+import org.jboss.community.magnolia.services.exceptions.ProjectNavigationException;
+import org.jboss.community.magnolia.services.exceptions.ProjectServiceException;
 import org.jboss.community.magnolia.services.navigation.ProjectNavigation;
+import org.jboss.community.magnolia.services.project.ProjectsService;
+import org.jboss.community.project.Project;
 
 /**
  * @author Ryszard Kozmik <rkozmik at redhat.com>
@@ -20,26 +24,50 @@
     @EJB(mappedName="magnoliaAuthor/ProjectNavigationService/local")
     ProjectNavigation pn;
     
-    public String getFooterNavigationHTML(String  projectIdName) {
+    @EJB(mappedName="magnoliaAuthor/ProjectsService/local")
+    ProjectsService ps;
+    
+    public String getFooterNavigationHTMLWithParent(String  projectIdName,String parentProjectId) {
         try {
-            return pn.getFooterNavigationHTML(projectIdName);
+            return pn.getFooterNavigationHTML(projectIdName,parentProjectId);
         } catch (Exception e) {
             // Nothing to do, the exception was for sure already logged but WS+JAXB cannot handle it.
         }
         return "";
     }
     
+    public String getFooterNavigationHTML(String projectIdName) {
+        return getFooterNavigationHTMLWithParent(projectIdName,null);
+    }
+    
     public String getProjectNavigationHTML(String projectIdName) {
-        return getProjectNavigationHTML(projectIdName,null);
+        return getProjectNavigationHTMLWithParentAndHighlighting(projectIdName,null,null);
     }
     
-    public String getProjectNavigationHTML(String projectIdName,String currentURI) {
+    public String getProjectNavigationHTMLWithParent(String projectIdName,String parentProjectId) {
+        return getProjectNavigationHTMLWithParentAndHighlighting(projectIdName,parentProjectId,null);
+    }
+    
+    public String getProjectNavigationHTMLWithParentAndHighlighting(String projectIdName,String parentProjectId,String tabHighlight) {
         try {
-            return pn.getProjectNavigationHTML(projectIdName,currentURI);
-        } catch (Exception e) {
+            return pn.getProjectNavigationHTML(projectIdName,parentProjectId,tabHighlight);
+        } catch (ProjectNavigationException e) {
             // Nothing to do, the exception was for sure already logged but WS+JAXB cannot handle it.
         }
         return "";
     }
+    
+    public Project getProjectById(String projectId) {
+        return getProjectByIdAndParentId(projectId, null);
+    }
+    
+    public Project getProjectByIdAndParentId(String projectId,String parentProjectId) {
+        try {
+            return ps.getProject(projectId);
+        } catch (ProjectServiceException e) {
+           // Nothing to do, the exception was for sure already logged but WS+JAXB cannot handle it.
+        }
+        return null;
+    }
 
 }

Modified: labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/project/Project.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/project/Project.java	2010-10-04 14:48:47 UTC (rev 35407)
+++ labs/jbosslabs/labs-3.0-build/integration/mgnl-services/projects/src/main/java/org/jboss/community/project/Project.java	2010-10-04 15:00:56 UTC (rev 35408)
@@ -21,6 +21,8 @@
     
     private HashMap<ProjectProperty,String> properties;
     
+    Project() {}
+    
     public Project(HashMap<ProjectProperty,String> properties) {
         this.properties=properties;
     }



More information about the jboss-svn-commits mailing list