[jboss-svn-commits] JBL Code SVN: r10681 - in labs/jbosslabs/trunk/portal-extensions: forge-ejb3/src/java/org/jboss/forge/ejb3/projects and 2 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Mar 31 06:32:42 EDT 2007
Author: wrzep
Date: 2007-03-31 06:32:41 -0400 (Sat, 31 Mar 2007)
New Revision: 10681
Modified:
labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/ejb3/ProjectFactoryService.java
labs/jbosslabs/trunk/portal-extensions/forge-ejb3/src/java/org/jboss/forge/ejb3/projects/ProjectFactoryServiceImpl.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminBean.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminConstants.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminTools.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/faces-config.xml
Log:
JBLAB-843
newPage
-Pawel
Modified: labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/ejb3/ProjectFactoryService.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/ejb3/ProjectFactoryService.java 2007-03-31 09:25:07 UTC (rev 10680)
+++ labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/ejb3/ProjectFactoryService.java 2007-03-31 10:32:41 UTC (rev 10681)
@@ -25,6 +25,7 @@
import java.util.Map;
import org.jboss.forge.common.projects.project.IssueTracker;
+import org.jboss.forge.common.projects.project.Page;
import org.jboss.forge.common.projects.project.Portlet;
import org.jboss.forge.common.projects.project.Preference;
@@ -46,6 +47,10 @@
public Preference createPreference(String name, String value);
+ public Page createPage();
+
+ public Page createPage(String name);
+
// Life cycle methods
public void start () throws Exception;
Modified: labs/jbosslabs/trunk/portal-extensions/forge-ejb3/src/java/org/jboss/forge/ejb3/projects/ProjectFactoryServiceImpl.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-ejb3/src/java/org/jboss/forge/ejb3/projects/ProjectFactoryServiceImpl.java 2007-03-31 09:25:07 UTC (rev 10680)
+++ labs/jbosslabs/trunk/portal-extensions/forge-ejb3/src/java/org/jboss/forge/ejb3/projects/ProjectFactoryServiceImpl.java 2007-03-31 10:32:41 UTC (rev 10681)
@@ -32,10 +32,12 @@
import org.jboss.forge.common.projects.project.IssueTracker;
+import org.jboss.forge.common.projects.project.Page;
import org.jboss.forge.common.projects.project.Portlet;
import org.jboss.forge.common.projects.project.Preference;
import org.jboss.forge.common.projects.project.Project;
import org.jboss.forge.common.projects.project.rw.IssueTrackerRW;
+import org.jboss.forge.common.projects.project.rw.PageRW;
import org.jboss.forge.common.projects.project.rw.PortletRW;
import org.jboss.forge.common.projects.project.rw.PreferenceRW;
import org.jboss.forge.common.projects.project.rw.ProjectRW;
@@ -115,6 +117,20 @@
return preference;
}
+
+ public Page createPage() {
+
+ return (Page) SyncProxy.newInstance(new PageRW());
+ }
+
+ public Page createPage(String name) {
+
+ Page page = createPage();
+ page.setName(name);
+
+ return page;
+ }
+
// Lifecycle methods
@@ -128,5 +144,6 @@
log.info("ProjectFactory service stopped");
}
+
}
Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminBean.java 2007-03-31 09:25:07 UTC (rev 10680)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminBean.java 2007-03-31 10:32:41 UTC (rev 10681)
@@ -23,20 +23,14 @@
import java.util.List;
-import javax.faces.event.AbortProcessingException;
-import javax.faces.event.ValueChangeEvent;
-import javax.faces.event.ValueChangeListener;
import javax.faces.model.SelectItem;
import javax.management.MalformedObjectNameException;
import org.jboss.forge.common.FacesTools;
import org.jboss.forge.common.ejb3.LabsServices;
-import org.jboss.forge.common.exceptions.ServiceRetrievalException;
-import org.jboss.forge.common.projects.portlets.ProjectsPortlet;
import org.jboss.forge.common.projects.project.Page;
import org.jboss.forge.common.projects.project.Pages;
import org.jboss.forge.common.projects.project.Portlet;
-import org.jboss.forge.common.projects.project.Preference;
import org.jboss.logging.Logger;
@@ -62,6 +56,7 @@
private Page page;
//TODO no pages defined => NPE
+ //TODO check if admin is logged!
//TODO reset session beans
public PagesAdminBean() {
@@ -102,9 +97,26 @@
System.out.println("ADD");
+ page = PagesAdminTools.newPage(pages);
+ selectedPage = page.getName();
+ clearSelections();
+
return "";
}
+ public String deletePage() {
+
+ System.out.println("DEL");
+
+ if (PagesAdminConstants.DEFAULT_PAGE.equals(selectedPage)) {
+
+ FacesTools.addMessage("Cannot delete page '" + selectedPage + "'.");
+ return "";
+ }
+
+ return PagesAdminConstants.EDIT_PAGES;
+ }
+
/* content */
public String addContent() {
Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminConstants.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminConstants.java 2007-03-31 09:25:07 UTC (rev 10680)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminConstants.java 2007-03-31 10:32:41 UTC (rev 10681)
@@ -28,5 +28,12 @@
public class PagesAdminConstants {
- public static final String DEFAULT_PAGE = "(default)";
+ public static final String DEFAULT_PAGE = "default";
+ public static final String NEW_PAGE_NAME = "NewPage";
+
+ public static final String CONFIRM_DELETE = "confirmDelete";
+
+ public static final String EDIT_PAGES = "edit-pages";
+
}
+
\ No newline at end of file
Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminTools.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminTools.java 2007-03-31 09:25:07 UTC (rev 10680)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminTools.java 2007-03-31 10:32:41 UTC (rev 10681)
@@ -275,4 +275,42 @@
return ret;
}
+
+ private static String newPageName(Pages pages) {
+
+ Set<String> pageNames = new HashSet<String>();
+ for (Page page : pages.getPages()) {
+ pageNames.add(page.getName());
+ }
+
+ String name = PagesAdminConstants.NEW_PAGE_NAME;
+ for (int i = 1; true; i++) {
+
+ if (!pageNames.contains(name)) {
+ return name;
+ }
+ name = PagesAdminConstants.NEW_PAGE_NAME.concat(Integer.toString(i));
+ }
+ }
+
+ public static Page newPage(Pages pages) {
+
+ String name = newPageName(pages);
+
+ ProjectFactoryService factory;
+
+ try {
+ factory = LabsServices.getProjectFactoryService();
+ } catch (Exception e) {
+ // do nothing
+ return null;
+ }
+
+ Page page = factory.createPage(name);
+
+ List<Page> pagesList = (List<Page>) pages.getPages();
+ pagesList.add(page);
+
+ return page;
+ }
}
Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/faces-config.xml
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/faces-config.xml 2007-03-31 09:25:07 UTC (rev 10680)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/faces-config.xml 2007-03-31 10:32:41 UTC (rev 10681)
@@ -16,7 +16,7 @@
<to-view-id>/repo-access/default/prj-admin/info-edit.jsp</to-view-id>
</navigation-case>
</navigation-rule>
- <navigation-rule>
+ <navigation-rule>
<from-view-id>*</from-view-id>
<navigation-case>
<from-outcome>edit-pages</from-outcome>
@@ -26,8 +26,8 @@
<navigation-rule>
<from-view-id>*</from-view-id>
<navigation-case>
- <from-outcome>edit-nav</from-outcome>
- <to-view-id>/repo-access/default/prj-admin/nav-edit.jsp</to-view-id>
+ <from-outcome>confirmDelete</from-outcome>
+ <to-view-id>/repo-access/default/prj-admin/confirmDelete.jsp</to-view-id>
</navigation-case>
</navigation-rule>
<navigation-rule>
More information about the jboss-svn-commits
mailing list