[jboss-svn-commits] JBL Code SVN: r10680 - in labs/jbosslabs/trunk/portal-extensions: forge-portlets/src/java/org/jboss/forge/projects/admin and 3 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Mar 31 05:25:07 EDT 2007
Author: wrzep
Date: 2007-03-31 05:25:07 -0400 (Sat, 31 Mar 2007)
New Revision: 10680
Added:
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/InfoAdminBean.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/InfoAdminConstants.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/InfoAdminTools.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/TypesBean.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/ContentBean.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/java/org/jboss/forge/projects/admin/pages/PortletsHeightComparator.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PreferenceBean.java
Removed:
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ContentBean.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PagesAdminConstants.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PagesAdminTools.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PortletsHeightComparator.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PreferenceBean.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectAdminConstants.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectAdminTools.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectInfoAdminBean.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectInfoTypesBean.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectPagesAdminBean.java
Modified:
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/ProjectAdminBean.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/faces-config.xml
Log:
JBLAB-843
refactoring
-Pawel
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:03:30 UTC (rev 10679)
+++ 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)
@@ -109,7 +109,7 @@
public Preference createPreference(String name, String value) {
- Preference preference= createPreference();
+ Preference preference = createPreference();
preference.setName(name);
preference.setValue(value);
Deleted: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ContentBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ContentBean.java 2007-03-31 09:03:30 UTC (rev 10679)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ContentBean.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -1,80 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.forge.projects.admin;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.faces.model.SelectItem;
-
-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.portlets.ProjectsPortlets;
-import org.jboss.logging.Logger;
-
-/**
- * @author Pawel Wrzeszcz (pawel . wrzeszcz [at] jboss . com)
- */
-
-public class ContentBean {
-
- private Logger log = Logger.getLogger(ContentBean.class);
-
- public List<SelectItem> getAvailableContent() {
-
- ProjectsPortlets portlets = null;
-
- try {
- portlets = LabsServices.getProjectsPortletsService().getProjectsPortlets();
-
- } catch (ServiceRetrievalException e) {
- log.warn("Unable to get ProjectsPortletsService");
- log.debug(e);
- }
-
- if ((portlets == null) || (portlets.getPortlets() == null)) {
- return null;
- }
-
- List<SelectItem> list = new ArrayList<SelectItem>();
-
- for (ProjectsPortlet portlet : portlets.getPortlets()) {
-
- list.add(new SelectItem(portlet.getName()));
- }
-
- return list;
- }
-
- public List<SelectItem> getAvailableLayout() {
-
- List<SelectItem> list = new ArrayList<SelectItem>();
-
- list.add(new SelectItem(1, "1 Column"));
- list.add(new SelectItem(2, "2 Column"));
- list.add(new SelectItem(3, "3 Column"));
-
- return list;
- }
-
-}
Deleted: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PagesAdminConstants.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PagesAdminConstants.java 2007-03-31 09:03:30 UTC (rev 10679)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PagesAdminConstants.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -1,35 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.forge.projects.admin;
-
-
-/**
- * @author Pawel Wrzeszcz (pawel . wrzeszcz [at] jboss . com)
- */
-
-public class PagesAdminConstants {
-
- public static final String DEFAULT_PAGE = "(default)";
-
-
-
-}
Deleted: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PagesAdminTools.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PagesAdminTools.java 2007-03-31 09:03:30 UTC (rev 10679)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PagesAdminTools.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -1,281 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.forge.projects.admin;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import javax.faces.model.SelectItem;
-import javax.management.MalformedObjectNameException;
-
-import org.jboss.forge.common.ejb3.LabsServices;
-import org.jboss.forge.common.ejb3.ProjectFactoryService;
-import org.jboss.forge.common.ejb3.ProjectsPortletsService;
-import org.jboss.forge.common.exceptions.ServiceRetrievalException;
-import org.jboss.forge.common.projects.portlets.ProjectsPortlet;
-import org.jboss.forge.common.projects.portlets.ProjectsPortletPreference;
-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.forge.common.projects.proxies.ObjectRWProxy;
-
-/**
- * @author Pawel Wrzeszcz (pawel . wrzeszcz [at] jboss . com)
- */
-
-public class PagesAdminTools {
-
- public static Page findPage(Pages pages, String selectedPage) {
-
- if (selectedPage.equals(PagesAdminConstants.DEFAULT_PAGE)) {
- selectedPage = "";
- }
-
- for (Page page : pages.getPages()) {
-
- if (page.getName().equals(selectedPage)) {
-
- return page;
- }
- }
-
- return null;
- }
-
- public static String convertCMSTitle(String title) {
-
- return "".equals(title) ? PagesAdminConstants.DEFAULT_PAGE : title;
- }
-
- public static String convertJSFTitle(String title) {
-
- return PagesAdminConstants.DEFAULT_PAGE.equals(title) ? "" : title;
- }
-
- public static List<SelectItem> getContent(Page page, String column) {
-
- List<SelectItem> contentList = new ArrayList<SelectItem>();
-
- List<Portlet> portlets = sortPortlets((List) page.getPortlets());
-
- int i = 1;
- for (Portlet portlet : portlets) {
-
- if (column.equals(portlet.getRegion())) {
- contentList.add(new SelectItem(Integer.toString(i), portlet.getName()));
- portlet.setHeight(Integer.toString(i));
- i++;
- }
- }
-
- return contentList;
- }
-
- @SuppressWarnings("unchecked")
- private static List<Portlet> sortPortlets(List portlets) {
-
- Comparator<Portlet> portletsComparator = new PortletsHeightComparator();
- // Create new list since CopyOnWriteArrayList iterator
- // doesn't support set operation
- // DO NOT use ArrayList(portlets) here. It will NOT work.
- List<Portlet> ret = new ArrayList();
- for (Object p : portlets) {
- ret.add((Portlet) p);
- }
-
- Collections.sort(ret, portletsComparator);
-
- return ret;
- }
-
- public static List<SelectItem> getPages(Pages pages) {
-
- List<SelectItem> projectPages = new ArrayList<SelectItem>();
-
- if ((pages != null) && (pages.getPages() != null)) {
-
- projectPages = new ArrayList<SelectItem>();
-
- for (Page page : pages.getPages()) {
-
- String name = "".equals(page.getName()) ?
- PagesAdminConstants.DEFAULT_PAGE : page.getName();
-
- projectPages.add(new SelectItem(name));
- }
- }
- return projectPages;
- }
-
- public static void addContent(Page page, String portletName, String region, int height) {
-
- Portlet portlet;
-
- try {
- portlet = LabsServices.getProjectFactoryService().createPortlet(portletName, region, height, null);
-
- } catch (MalformedObjectNameException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- return;
- }
-
- List<Portlet> portletsList = (List<Portlet>) page.getPortlets();
-
- portletsList.add(portlet);
- }
-
- public static void removeContent(Page page, String contentToRemove, String column) {
-
- if ((contentToRemove == null) || (contentToRemove.length() == 0)) {
- return;
- }
-
- int n = Integer.parseInt(contentToRemove);
-
- List<Portlet> portlets = sortPortlets(page.getPortlets());
-
- int i = 1;
- for (Portlet portlet : portlets) {
-
- if (column.equals(portlet.getRegion())) {
-
- if (n == i) {
-
- page.getPortlets().remove(portlet);
- n = -1;
- } else {
-
- portlet.setHeight(Integer.toString(i));
- i++;
- }
- }
- }
- }
-
- public static void moveContentUp(Page page, int n, String column) {
-
- if (n <= 1) {
- return;
- }
-
- List<Portlet> portlets = choosePortlets(page.getPortlets(), column);
- if (n > portlets.size()) {
- return;
- }
-
- Portlet portletToMoveUp = portlets.get(n - 1);
- Portlet portletToMoveDown = portlets.get(n - 2);
-
- portletToMoveUp.setHeight(Integer.toString(n - 1));
- portletToMoveDown.setHeight(Integer.toString(n));
- }
-
- private static List<Portlet> choosePortlets(List<? extends Portlet> portlets, String column) {
-
- List<? extends Portlet> list = sortPortlets(portlets);
- List<Portlet> ret = new ArrayList<Portlet>();
-
- for (Portlet portlet : list) {
-
- if (column.equals(portlet.getRegion())) {
- ret.add(portlet);
- }
- }
-
- return ret;
- }
-
- public static Portlet findPortlet(Page page, String contentPosition, String column) {
-
- if ((contentPosition == null) || (contentPosition.length() == 0)) {
- return null;
- }
-
- int n = Integer.parseInt(contentPosition);
-
- List<Portlet> portlets = choosePortlets(page.getPortlets(), column);
- if ((n > portlets.size()) || (n < 1)) {
- return null;
- }
-
- return portlets.get(n-1);
- }
-
- @SuppressWarnings("unchecked")
- public static List<PreferenceBean> getPreferences(Portlet portlet) {
-
- if (portlet == null) {
- return null;
- }
-
- List<Preference> preferences = (List<Preference>) portlet.getPreferences();
-
- Set<String> preferencesSet = new HashSet<String>();
- for (Preference preference : preferences) {
- preferencesSet.add(preference.getName());
- }
-
- ProjectsPortletsService projectsPortletsService;
- ProjectFactoryService factory;
-
- try {
- projectsPortletsService = LabsServices.getProjectsPortletsService();
- factory = LabsServices.getProjectFactoryService();
- } catch (Exception e) {
- // do nothing
- return null;
- }
-
- ProjectsPortlet projectsPortlet = projectsPortletsService.getProjectsProtlet(portlet.getName());
- Map<String,ProjectsPortletPreference> preferencesMap = new HashMap<String, ProjectsPortletPreference>();
-
- for (ProjectsPortletPreference pref : projectsPortlet.getPreferences()) {
-
- System.out.println("PREF: " + pref.getName());
-
- if (!preferencesSet.contains(pref.getName())) {
- System.out.println("ADDED");
- preferences.add(factory.createPreference(pref.getName(),null));
- }
-
- preferencesMap.put(pref.getName(), pref);
- }
-
- List<PreferenceBean> ret = new ArrayList<PreferenceBean>();
- for (Preference pref : preferences) {
-
- if (preferencesMap.containsKey(pref.getName())) {
- ret.add(new PreferenceBean(pref, preferencesMap.get(pref.getName())));
- }
- }
-
- return ret;
- }
-}
Deleted: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PortletsHeightComparator.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PortletsHeightComparator.java 2007-03-31 09:03:30 UTC (rev 10679)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PortletsHeightComparator.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -1,48 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-package org.jboss.forge.projects.admin;
-
-import java.util.Comparator;
-
-import org.jboss.forge.common.projects.project.Portlet;
-
-public class PortletsHeightComparator implements Comparator<Portlet> {
-
- public int compare(Portlet p1, Portlet p2) {
-
- Integer h1 = getHeight(p1);
- Integer h2 = getHeight(p2);
-
- return h1.compareTo(h2);
- }
-
- private Integer getHeight(Portlet p) {
-
- if ((p == null) || (p.getHeight() == null)) {
- return 0;
- } else {
- return Integer.parseInt(p.getHeight());
- }
- }
-
-}
Deleted: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PreferenceBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PreferenceBean.java 2007-03-31 09:03:30 UTC (rev 10679)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PreferenceBean.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -1,79 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.forge.projects.admin;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.faces.model.SelectItem;
-
-import org.jboss.forge.common.projects.portlets.ProjectsPortletPreference;
-import org.jboss.forge.common.projects.project.Preference;
-
-/**
- * @author Pawel Wrzeszcz (pawel . wrzeszcz [at] jboss . com)
- */
-
-public class PreferenceBean {
-
- private Preference portletPreference;
- private ProjectsPortletPreference preference;
-
- public PreferenceBean() {}
-
- public PreferenceBean(Preference portletProperty,
- ProjectsPortletPreference property) {
-
- this.portletPreference = portletProperty;
- this.preference = property;
-
- if (portletProperty.getValue() == null) {
-
- portletProperty.setValue(preference.getDefault());
- }
- }
-
- /* getters */
-
- public List<SelectItem> getFixedValues() {
-
- List<SelectItem> list = new ArrayList<SelectItem>();
-
- if ((preference.getValues() == null) || (preference.getValues().size() == 0)) {
- return list;
- }
-
- for (String value : preference.getValues()) {
- list.add(new SelectItem(value));
- }
-
- return list;
- }
-
- public Preference getPortletPreference() {
- return portletPreference;
- }
-
- public ProjectsPortletPreference getPreference() {
- return preference;
- }
-}
Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectAdminBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectAdminBean.java 2007-03-31 09:03:30 UTC (rev 10679)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectAdminBean.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -27,14 +27,16 @@
import org.jboss.forge.common.ejb3.LabsServices;
import org.jboss.forge.common.projects.project.Pages;
+import org.jboss.forge.projects.admin.info.InfoAdminBean;
+import org.jboss.forge.projects.admin.pages.PagesAdminBean;
public class ProjectAdminBean implements Serializable {
private static final long serialVersionUID = -9175216257231542L;
- private ProjectInfoAdminBean info;
- private ProjectPagesAdminBean pages;
+ private InfoAdminBean info;
+ private PagesAdminBean pages;
public String save() {
@@ -68,16 +70,16 @@
/* getters and setters */
- public ProjectInfoAdminBean getInfo() {
+ public InfoAdminBean getInfo() {
return info;
}
- public void setInfo(ProjectInfoAdminBean infoBean) {
+ public void setInfo(InfoAdminBean infoBean) {
this.info = infoBean;
}
- public ProjectPagesAdminBean getPages() {
+ public PagesAdminBean getPages() {
return pages;
}
- public void setPages(ProjectPagesAdminBean pagesBean) {
+ public void setPages(PagesAdminBean pagesBean) {
this.pages = pagesBean;
}
Deleted: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectAdminConstants.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectAdminConstants.java 2007-03-31 09:03:30 UTC (rev 10679)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectAdminConstants.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -1,65 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.forge.projects.admin;
-
-import org.jboss.forge.common.projects.project.BuildType;
-import org.jboss.forge.common.projects.project.DocumentationType;
-import org.jboss.forge.common.projects.project.IssueTrackerType;
-import org.jboss.forge.common.projects.project.MonitorType;
-import org.jboss.forge.common.projects.project.RepoType;
-import org.jboss.forge.common.projects.project.rw.BuildTypeRW;
-import org.jboss.forge.common.projects.project.rw.DocumentationTypeRW;
-import org.jboss.forge.common.projects.project.rw.IssueTrackerTypeRW;
-import org.jboss.forge.common.projects.project.rw.MonitorTypeRW;
-import org.jboss.forge.common.projects.project.rw.RepoTypeRW;
-
-/**
- * @author Pawel Wrzeszcz (pawel . wrzeszcz [at] jboss . com)
- */
-
-public class ProjectAdminConstants {
-
- public static final String EDIT_ACTION = "edit";
- public static final String APPLY_ACTION = "back";
- public static final String BACK_ACTION = "back";
- public static final String ERR_ACTION = "";
- public static final String ADD_REMOVE_ACTION = "";
-
- public static final RepoType DEFAULT_REPO_TYPE = RepoTypeRW.SVN;
- public static final MonitorType DEFAULT_REPO_MONITOR_TYPE
- = MonitorTypeRW.FISHEYE;
- public static final IssueTrackerType DEFAULT_ISSUE_TRACKER_TYPE
- = IssueTrackerTypeRW.JIRA;
- public static final BuildType DEFAULT_BUILD_TYPE = BuildTypeRW.CRUISE_CONTROL;
- public static final DocumentationType DEFAULT_DOCUMENTATION_TYPE
- = DocumentationTypeRW.MANUAL;
-
- public static final String DEL_REPO_PARAM = "delRepoId";
- public static final String DEL_REPO_MONITOR_PARAM = "delRepoMonitorId";
- public static final String DEL_ISSUE_TRACKER_PARAM = "delIssueTrackerId";
- public static final String DEL_BUILD_RESULTS_PARAM = "delBuildResultsId";
- public static final String DEL_FORUM_PARAM = "delForumId";
- public static final String DEL_DOC_PARAM = "delDocumentationId";
-
-
- private ProjectAdminConstants() {};
-}
Deleted: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectAdminTools.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectAdminTools.java 2007-03-31 09:03:30 UTC (rev 10679)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectAdminTools.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -1,115 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.forge.projects.admin;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.List;
-
-import javax.faces.model.SelectItem;
-import javax.management.MalformedObjectNameException;
-
-import org.jboss.forge.common.ejb3.LabsServices;
-import org.jboss.forge.common.ejb3.ProjectsService;
-import org.jboss.forge.common.ejb3.ProjectsServiceRW;
-import org.jboss.forge.common.projects.project.DocumentationType;
-import org.jboss.forge.common.projects.project.Page;
-import org.jboss.forge.common.projects.project.Project;
-import org.jboss.forge.common.projects.project.rw.DocumentationTypeRW;
-import org.jboss.forge.common.exceptions.ServiceRetrievalException;
-
-import org.jboss.logging.Logger;
-
-
-public class ProjectAdminTools {
-
- private static Logger log = Logger.getLogger(ProjectAdminTools.class);
-
- private static ProjectsService projectsService = null;
- private static ProjectsServiceRW projectsServiceRW = null;
-
- static {
- try {
- projectsServiceRW = LabsServices.getProjectsServiceRW();
- projectsService = LabsServices.getProjectsService();
- } catch (MalformedObjectNameException e) {
- log.warn("Cannot get ProjectsServiceRW");
- } catch (ServiceRetrievalException e) {
- log.warn("Cannot get ProjectsServiceRW");
- }
- }
-
- public static Project getProjectByName(String projectId) {
-
- return projectsServiceRW.getProjectByNameRW(projectId);
- }
-
- public static Project getProjectRWByName(String projectId) {
-
- return projectsServiceRW.getProjectByNameRW(projectId);
- }
-
- public static Collection<?> getAllProjectIds() {
-
- return projectsService.getProjectsIds();
- }
-
- public static List<SelectItem> getAllProjects() {
-
- List<SelectItem> projects = new ArrayList<SelectItem>();
-
- List<String> ids = new ArrayList<String>(projectsService.getProjectsIds());
- ids.remove("default");
- ids.add("(none)");
-
- Collections.sort(ids);
-
- for (String projectId : ids) {
-
- projects.add(new SelectItem(projectId,projectId));
- }
-
- return projects;
- }
-
- public static void saveProject(Project project) {
-
- projectsServiceRW.persistProject(project);
- }
-
- public static List<DocumentationType> getDocumentationTypes() {
-
- List<DocumentationType> list = new ArrayList<DocumentationType>();
-
- list.add(DocumentationTypeRW.FAQ);
- list.add(DocumentationTypeRW.INSTALLATION);
- list.add(DocumentationTypeRW.JAVADOC);
- list.add(DocumentationTypeRW.MANUAL);
- list.add(DocumentationTypeRW.QUICK_START);
- list.add(DocumentationTypeRW.WIKI);
-
- return list;
- }
-
- private ProjectAdminTools() {}
-}
Deleted: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectInfoAdminBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectInfoAdminBean.java 2007-03-31 09:03:30 UTC (rev 10679)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectInfoAdminBean.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -1,149 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.forge.projects.admin;
-
-import java.io.Serializable;
-import java.util.List;
-
-import org.jboss.forge.common.FacesTools;
-import org.jboss.forge.common.projects.project.Project;
-
-
-public class ProjectInfoAdminBean implements Serializable {
-
- private static final long serialVersionUID = 6261935821363811158L;
-
- private Project project;
-
- private List<String> jems;
- //private List<Documentation> documentation;
-
- //private String newBuildResultsURL;
- //private BuildType newBuildResultsType =
- // ProjectInfoConstants.DEFAULT_BUILD_TYPE;
-
-
- public ProjectInfoAdminBean() {
-
- project = ProjectAdminTools.getProjectByName(FacesTools.getSelectedProjectId());
- //TODO get projectId by parameter
-
- jems = project.getJems();
- }
-
- /* Business methods */
-
- public String applyChanges() {
-
- List<String> projectJems = project.getJems();
- projectJems.removeAll(ProjectAdminTools.getAllProjectIds());
-
- jems.remove("(none)");
- projectJems.addAll(jems);
-
- ProjectAdminTools.saveProject(project);
-
- FacesTools.addMessage("Your changes have been saved");
-
- return ProjectAdminConstants.APPLY_ACTION;
- }
-
- /*
- public String addBuildResults() {
-
- if ((newBuildResultsURL == null) || (newBuildResultsURL == "")) {
- FacesTools.addMessage("Please provide Continuous Integration Tool URL.");
- return ProjectInfoConstants.ERR_ACTION;
- }
-
- BuildResult rm = new BuildResult();
- rm.setType(newBuildResultsType);
- rm.setValue(newBuildResultsURL);
-
- project.getBuildResults().add(rm);
- newBuildResultsURL = "";
- newBuildResultsType = ProjectInfoConstants.DEFAULT_BUILD_TYPE;
-
- return ProjectInfoConstants.ADD_REMOVE_ACTION;
- }
-
- public String delBuildResults() {
-
- String delBuildResultId = FacesTools.getRequestParameter(
- ProjectInfoConstants.DEL_BUILD_RESULTS_PARAM);
-
- List<? extends BuildResult> buildResults = project.getBuildResults();
- for (BuildResult br : buildResults) {
-
- if (delBuildResultId.equals(br.getValue())) {
- buildResults.remove(br);
- return ProjectInfoConstants.ADD_REMOVE_ACTION;
- }
- }
-
- FacesTools.addMessage("Unknown error");
- return ProjectInfoConstants.ERR_ACTION;
- }*/
-
- /* Getters and setters */
-
- public Project getProject() {
- return project;
- }
-
- public void setProject(Project project) {
- this.project = project;
- }
-
- public List<String> getJems() {
- return jems;
- }
-
- public void setJems(List<String> jems) {
- this.jems = jems;
- }
-
- /*
- public List<Documentation> getDocumentation() {
- return documentation;
- }
-
- public void setDocumentation(List<Documentation> documentation) {
- this.documentation = documentation;
- }
-
- public String getNewBuildResultsURL() {
- return newBuildResultsURL;
- }
-
- public void setNewBuildResultsURL(String newBuildResultsURL) {
- this.newBuildResultsURL = newBuildResultsURL;
- }
-
- public BuildType getNewBuildResultsType() {
- return newBuildResultsType;
- }
-
- public void setNewBuildResultsType(BuildType newBuildType) {
- this.newBuildResultsType = newBuildType;
- } */
-}
Deleted: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectInfoTypesBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectInfoTypesBean.java 2007-03-31 09:03:30 UTC (rev 10679)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectInfoTypesBean.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -1,96 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.forge.projects.admin;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.faces.model.SelectItem;
-
-import org.jboss.forge.common.projects.project.rw.BuildTypeRW;
-import org.jboss.forge.common.projects.project.rw.IssueTrackerTypeRW;
-import org.jboss.forge.common.projects.project.rw.MonitorTypeRW;
-import org.jboss.forge.common.projects.project.rw.RepoTypeRW;
-
-/**
- * @author Pawel Wrzeszcz (pawel . wrzeszcz [at] jboss . com)
- */
-
-public class ProjectInfoTypesBean {
-
- public List<SelectItem> getAllProjects() {
-
- return ProjectAdminTools.getAllProjects();
- }
-
- public List<SelectItem> getIssueTrackerTypes() {
-
- List<SelectItem> list = new ArrayList<SelectItem>();
-
- list.add(new SelectItem(IssueTrackerTypeRW.JIRA,
- IssueTrackerTypeRW.JIRA.toString()));
- list.add(new SelectItem(IssueTrackerTypeRW.BUGZILLA,
- IssueTrackerTypeRW.BUGZILLA.toString()));
-
- return list;
- }
-
- public List<SelectItem> getRepoTypes() {
-
- List<SelectItem> list = new ArrayList<SelectItem>();
-
- list.add(new SelectItem(RepoTypeRW.SVN,
- RepoTypeRW.SVN.toString()));
- list.add(new SelectItem(RepoTypeRW.CVS,
- RepoTypeRW.CVS.toString()));
-
- return list;
- }
-
- public List<SelectItem> getRepoMonitorTypes() {
-
- List<SelectItem> list = new ArrayList<SelectItem>();
-
- list.add(new SelectItem(MonitorTypeRW.VIEWVC,
- MonitorTypeRW.VIEWVC.toString()));
- list.add(new SelectItem(MonitorTypeRW.FISHEYE,
- MonitorTypeRW.FISHEYE.toString()));
-
- return list;
- }
-
- public List<SelectItem> getBuildResultsTypes() {
-
- List<SelectItem> list = new ArrayList<SelectItem>();
-
- list.add(new SelectItem(BuildTypeRW.CRUISE_CONTROL,
- BuildTypeRW.CRUISE_CONTROL.toString()));
- list.add(new SelectItem(BuildTypeRW.CONTINUUM,
- BuildTypeRW.CONTINUUM.toString()));
-
- return list;
- }
-
-
-
-
-}
Deleted: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectPagesAdminBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectPagesAdminBean.java 2007-03-31 09:03:30 UTC (rev 10679)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectPagesAdminBean.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -1,266 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.forge.projects.admin;
-
-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;
-
-
-public class ProjectPagesAdminBean {
-
-
- private Logger log = Logger.getLogger(ProjectPagesAdminBean.class);
-
- private Pages pages;
-
- private String selectedPage;
- private int selectedLayout;
- private List<String> selectedContent;
-
- private String selectedLeftContent;
- private String selectedMiddleContent;
- private String selectedRightContent;
-
- private String selectedColumn;
- private String selectedColumnContent;
-
- List<PreferenceBean> preferences;
-
- private Page page;
-
- //TODO no pages defined => NPE
- //TODO reset session beans
-
- public ProjectPagesAdminBean() {
-
- String projectId = FacesTools.getSelectedProjectId();
-
- try {
- pages = LabsServices.getProjectsServiceRW().getProjectPagesRW(projectId);
-
- } catch (MalformedObjectNameException e) {
- log.debug("Unable to get ProjectsServiceRW", e);
- }
-
- selectedLayout = 3;
-
- if (selectedPage == null) {
- selectedPage = PagesAdminConstants.DEFAULT_PAGE;
- }
- editPage();
- }
-
- /* actions */
-
- /* page*/
-
- public String editPage() {
-
- page = PagesAdminTools.findPage(pages, selectedPage);
-
- selectedColumn = null;
- selectedColumnContent = null;
- clearSelections();
-
- return "";
- }
-
- public String addPage() {
-
- System.out.println("ADD");
-
- return "";
- }
-
- /* content */
-
- public String addContent() {
-
- String column = FacesTools.getRequestParameter("column");
-
- int height = PagesAdminTools.getContent(page, column).size() + 1; // Append to the end.
-
- for (String portletName : selectedContent) {
- PagesAdminTools.addContent(page, portletName, column, height);
- }
- clearSelections();
- return "";
- }
-
- public String removeContent() {
-
- PagesAdminTools.removeContent(page, selectedColumnContent, selectedColumn);
- clearSelections();
-
- return "";
- }
-
- private String selectedColumnContent(String column) {
-
- if (column.equals("left")) { return selectedLeftContent; }
- else if (column.equals("center")) { return selectedMiddleContent; }
- return selectedRightContent;
- }
-
- public String moveContentUp() {
-
- int n = Integer.parseInt(selectedColumnContent);
- PagesAdminTools.moveContentUp(page, n, selectedColumn);
- clearSelections();
- return "";
- }
-
- public String moveContentDown() {
-
- int n = Integer.parseInt(selectedColumnContent);
- PagesAdminTools.moveContentUp(page, n + 1, selectedColumn);
- clearSelections();
- return "";
- }
-
- public void clearSelections() {
-
- if (!"left".equals(selectedColumn)) { selectedLeftContent = null; }
- if (!"center".equals(selectedColumn)) { selectedMiddleContent = null; }
- if (!"right".equals(selectedColumn)) { selectedRightContent = null; }
- setPreferences();
- }
-
- public String selectColumnContent() {
-
- selectedColumn = FacesTools.getRequestParameter("column");
- selectedColumnContent = selectedColumnContent(selectedColumn);
- clearSelections();
- return "";
- }
-
- private void setPreferences() {
-
- if ((selectedColumn == null) || (selectedColumnContent == null)) {
- return;
- }
- Portlet portlet = PagesAdminTools.findPortlet(page, selectedColumnContent, selectedColumn);
-
- preferences = PagesAdminTools.getPreferences(portlet);
- }
-
- /* getters and setters */
-
- public String getTitle() {
- return PagesAdminTools.convertCMSTitle(page.getName());
- }
-
- public void setTitle(String title) {
- page.setName(PagesAdminTools.convertJSFTitle(title));
- }
-
- public List<SelectItem> getProjectPages() {
-
- return PagesAdminTools.getPages(pages);
- }
-
- public List<SelectItem> getLeftContent() {
- return PagesAdminTools.getContent(page, "left");
- }
-
- public List<SelectItem> getMiddleContent() {
- return PagesAdminTools.getContent(page, "center");
- }
-
- public List<SelectItem> getRightContent() {
- return PagesAdminTools.getContent(page, "right");
- }
-
- /******************************/
-
- public List<PreferenceBean> getPreferences() {
-
- return preferences;
- }
-
- public List<String> getSelectedContent() {
- return selectedContent;
- }
-
- public void setSelectedContent(List<String> selectedContent) {
- this.selectedContent = selectedContent;
- }
-
- public String getSelectedPage() {
- return selectedPage;
- }
-
- public void setSelectedPage(String selectedPage) {
- this.selectedPage = selectedPage;
- }
-
- public int getSelectedLayout() {
- return selectedLayout;
- }
-
- public void setSelectedLayout(int selectedLayout) {
- this.selectedLayout = selectedLayout;
- }
-
- public String getSelectedLeftContent() {
- return selectedLeftContent;
- }
-
- public void setSelectedLeftContent(String selectedLeftContent) {
- this.selectedLeftContent = selectedLeftContent;
- }
-
- public String getSelectedMiddleContent() {
- return selectedMiddleContent;
- }
-
- public void setSelectedMiddleContent(String selectedMiddleContent) {
- this.selectedMiddleContent = selectedMiddleContent;
- }
-
- public String getSelectedRightContent() {
- return selectedRightContent;
- }
-
- public void setSelectedRightContent(String selectedRightContent) {
- this.selectedRightContent = selectedRightContent;
- }
-
- public Pages getPages() {
- return pages;
- }
-}
Added: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/InfoAdminBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/InfoAdminBean.java (rev 0)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/InfoAdminBean.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -0,0 +1,149 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.forge.projects.admin.info;
+
+import java.io.Serializable;
+import java.util.List;
+
+import org.jboss.forge.common.FacesTools;
+import org.jboss.forge.common.projects.project.Project;
+
+
+public class InfoAdminBean implements Serializable {
+
+ private static final long serialVersionUID = 6261935821363811158L;
+
+ private Project project;
+
+ private List<String> jems;
+ //private List<Documentation> documentation;
+
+ //private String newBuildResultsURL;
+ //private BuildType newBuildResultsType =
+ // ProjectInfoConstants.DEFAULT_BUILD_TYPE;
+
+
+ public InfoAdminBean() {
+
+ project = InfoAdminTools.getProjectByName(FacesTools.getSelectedProjectId());
+ //TODO get projectId by parameter
+
+ jems = project.getJems();
+ }
+
+ /* Business methods */
+
+ public String applyChanges() {
+
+ List<String> projectJems = project.getJems();
+ projectJems.removeAll(InfoAdminTools.getAllProjectIds());
+
+ jems.remove("(none)");
+ projectJems.addAll(jems);
+
+ InfoAdminTools.saveProject(project);
+
+ FacesTools.addMessage("Your changes have been saved");
+
+ return InfoAdminConstants.APPLY_ACTION;
+ }
+
+ /*
+ public String addBuildResults() {
+
+ if ((newBuildResultsURL == null) || (newBuildResultsURL == "")) {
+ FacesTools.addMessage("Please provide Continuous Integration Tool URL.");
+ return ProjectInfoConstants.ERR_ACTION;
+ }
+
+ BuildResult rm = new BuildResult();
+ rm.setType(newBuildResultsType);
+ rm.setValue(newBuildResultsURL);
+
+ project.getBuildResults().add(rm);
+ newBuildResultsURL = "";
+ newBuildResultsType = ProjectInfoConstants.DEFAULT_BUILD_TYPE;
+
+ return ProjectInfoConstants.ADD_REMOVE_ACTION;
+ }
+
+ public String delBuildResults() {
+
+ String delBuildResultId = FacesTools.getRequestParameter(
+ ProjectInfoConstants.DEL_BUILD_RESULTS_PARAM);
+
+ List<? extends BuildResult> buildResults = project.getBuildResults();
+ for (BuildResult br : buildResults) {
+
+ if (delBuildResultId.equals(br.getValue())) {
+ buildResults.remove(br);
+ return ProjectInfoConstants.ADD_REMOVE_ACTION;
+ }
+ }
+
+ FacesTools.addMessage("Unknown error");
+ return ProjectInfoConstants.ERR_ACTION;
+ }*/
+
+ /* Getters and setters */
+
+ public Project getProject() {
+ return project;
+ }
+
+ public void setProject(Project project) {
+ this.project = project;
+ }
+
+ public List<String> getJems() {
+ return jems;
+ }
+
+ public void setJems(List<String> jems) {
+ this.jems = jems;
+ }
+
+ /*
+ public List<Documentation> getDocumentation() {
+ return documentation;
+ }
+
+ public void setDocumentation(List<Documentation> documentation) {
+ this.documentation = documentation;
+ }
+
+ public String getNewBuildResultsURL() {
+ return newBuildResultsURL;
+ }
+
+ public void setNewBuildResultsURL(String newBuildResultsURL) {
+ this.newBuildResultsURL = newBuildResultsURL;
+ }
+
+ public BuildType getNewBuildResultsType() {
+ return newBuildResultsType;
+ }
+
+ public void setNewBuildResultsType(BuildType newBuildType) {
+ this.newBuildResultsType = newBuildType;
+ } */
+}
Added: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/InfoAdminConstants.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/InfoAdminConstants.java (rev 0)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/InfoAdminConstants.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -0,0 +1,65 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.forge.projects.admin.info;
+
+import org.jboss.forge.common.projects.project.BuildType;
+import org.jboss.forge.common.projects.project.DocumentationType;
+import org.jboss.forge.common.projects.project.IssueTrackerType;
+import org.jboss.forge.common.projects.project.MonitorType;
+import org.jboss.forge.common.projects.project.RepoType;
+import org.jboss.forge.common.projects.project.rw.BuildTypeRW;
+import org.jboss.forge.common.projects.project.rw.DocumentationTypeRW;
+import org.jboss.forge.common.projects.project.rw.IssueTrackerTypeRW;
+import org.jboss.forge.common.projects.project.rw.MonitorTypeRW;
+import org.jboss.forge.common.projects.project.rw.RepoTypeRW;
+
+/**
+ * @author Pawel Wrzeszcz (pawel . wrzeszcz [at] jboss . com)
+ */
+
+public class InfoAdminConstants {
+
+ public static final String EDIT_ACTION = "edit";
+ public static final String APPLY_ACTION = "back";
+ public static final String BACK_ACTION = "back";
+ public static final String ERR_ACTION = "";
+ public static final String ADD_REMOVE_ACTION = "";
+
+ public static final RepoType DEFAULT_REPO_TYPE = RepoTypeRW.SVN;
+ public static final MonitorType DEFAULT_REPO_MONITOR_TYPE
+ = MonitorTypeRW.FISHEYE;
+ public static final IssueTrackerType DEFAULT_ISSUE_TRACKER_TYPE
+ = IssueTrackerTypeRW.JIRA;
+ public static final BuildType DEFAULT_BUILD_TYPE = BuildTypeRW.CRUISE_CONTROL;
+ public static final DocumentationType DEFAULT_DOCUMENTATION_TYPE
+ = DocumentationTypeRW.MANUAL;
+
+ public static final String DEL_REPO_PARAM = "delRepoId";
+ public static final String DEL_REPO_MONITOR_PARAM = "delRepoMonitorId";
+ public static final String DEL_ISSUE_TRACKER_PARAM = "delIssueTrackerId";
+ public static final String DEL_BUILD_RESULTS_PARAM = "delBuildResultsId";
+ public static final String DEL_FORUM_PARAM = "delForumId";
+ public static final String DEL_DOC_PARAM = "delDocumentationId";
+
+
+ private InfoAdminConstants() {};
+}
Added: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/InfoAdminTools.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/InfoAdminTools.java (rev 0)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/InfoAdminTools.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -0,0 +1,115 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.forge.projects.admin.info;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+
+import javax.faces.model.SelectItem;
+import javax.management.MalformedObjectNameException;
+
+import org.jboss.forge.common.ejb3.LabsServices;
+import org.jboss.forge.common.ejb3.ProjectsService;
+import org.jboss.forge.common.ejb3.ProjectsServiceRW;
+import org.jboss.forge.common.projects.project.DocumentationType;
+import org.jboss.forge.common.projects.project.Page;
+import org.jboss.forge.common.projects.project.Project;
+import org.jboss.forge.common.projects.project.rw.DocumentationTypeRW;
+import org.jboss.forge.common.exceptions.ServiceRetrievalException;
+
+import org.jboss.logging.Logger;
+
+
+public class InfoAdminTools {
+
+ private static Logger log = Logger.getLogger(InfoAdminTools.class);
+
+ private static ProjectsService projectsService = null;
+ private static ProjectsServiceRW projectsServiceRW = null;
+
+ static {
+ try {
+ projectsServiceRW = LabsServices.getProjectsServiceRW();
+ projectsService = LabsServices.getProjectsService();
+ } catch (MalformedObjectNameException e) {
+ log.warn("Cannot get ProjectsServiceRW");
+ } catch (ServiceRetrievalException e) {
+ log.warn("Cannot get ProjectsServiceRW");
+ }
+ }
+
+ public static Project getProjectByName(String projectId) {
+
+ return projectsServiceRW.getProjectByNameRW(projectId);
+ }
+
+ public static Project getProjectRWByName(String projectId) {
+
+ return projectsServiceRW.getProjectByNameRW(projectId);
+ }
+
+ public static Collection<?> getAllProjectIds() {
+
+ return projectsService.getProjectsIds();
+ }
+
+ public static List<SelectItem> getAllProjects() {
+
+ List<SelectItem> projects = new ArrayList<SelectItem>();
+
+ List<String> ids = new ArrayList<String>(projectsService.getProjectsIds());
+ ids.remove("default");
+ ids.add("(none)");
+
+ Collections.sort(ids);
+
+ for (String projectId : ids) {
+
+ projects.add(new SelectItem(projectId,projectId));
+ }
+
+ return projects;
+ }
+
+ public static void saveProject(Project project) {
+
+ projectsServiceRW.persistProject(project);
+ }
+
+ public static List<DocumentationType> getDocumentationTypes() {
+
+ List<DocumentationType> list = new ArrayList<DocumentationType>();
+
+ list.add(DocumentationTypeRW.FAQ);
+ list.add(DocumentationTypeRW.INSTALLATION);
+ list.add(DocumentationTypeRW.JAVADOC);
+ list.add(DocumentationTypeRW.MANUAL);
+ list.add(DocumentationTypeRW.QUICK_START);
+ list.add(DocumentationTypeRW.WIKI);
+
+ return list;
+ }
+
+ private InfoAdminTools() {}
+}
Added: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/TypesBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/TypesBean.java (rev 0)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/info/TypesBean.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -0,0 +1,96 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.forge.projects.admin.info;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.faces.model.SelectItem;
+
+import org.jboss.forge.common.projects.project.rw.BuildTypeRW;
+import org.jboss.forge.common.projects.project.rw.IssueTrackerTypeRW;
+import org.jboss.forge.common.projects.project.rw.MonitorTypeRW;
+import org.jboss.forge.common.projects.project.rw.RepoTypeRW;
+
+/**
+ * @author Pawel Wrzeszcz (pawel . wrzeszcz [at] jboss . com)
+ */
+
+public class TypesBean {
+
+ public List<SelectItem> getAllProjects() {
+
+ return InfoAdminTools.getAllProjects();
+ }
+
+ public List<SelectItem> getIssueTrackerTypes() {
+
+ List<SelectItem> list = new ArrayList<SelectItem>();
+
+ list.add(new SelectItem(IssueTrackerTypeRW.JIRA,
+ IssueTrackerTypeRW.JIRA.toString()));
+ list.add(new SelectItem(IssueTrackerTypeRW.BUGZILLA,
+ IssueTrackerTypeRW.BUGZILLA.toString()));
+
+ return list;
+ }
+
+ public List<SelectItem> getRepoTypes() {
+
+ List<SelectItem> list = new ArrayList<SelectItem>();
+
+ list.add(new SelectItem(RepoTypeRW.SVN,
+ RepoTypeRW.SVN.toString()));
+ list.add(new SelectItem(RepoTypeRW.CVS,
+ RepoTypeRW.CVS.toString()));
+
+ return list;
+ }
+
+ public List<SelectItem> getRepoMonitorTypes() {
+
+ List<SelectItem> list = new ArrayList<SelectItem>();
+
+ list.add(new SelectItem(MonitorTypeRW.VIEWVC,
+ MonitorTypeRW.VIEWVC.toString()));
+ list.add(new SelectItem(MonitorTypeRW.FISHEYE,
+ MonitorTypeRW.FISHEYE.toString()));
+
+ return list;
+ }
+
+ public List<SelectItem> getBuildResultsTypes() {
+
+ List<SelectItem> list = new ArrayList<SelectItem>();
+
+ list.add(new SelectItem(BuildTypeRW.CRUISE_CONTROL,
+ BuildTypeRW.CRUISE_CONTROL.toString()));
+ list.add(new SelectItem(BuildTypeRW.CONTINUUM,
+ BuildTypeRW.CONTINUUM.toString()));
+
+ return list;
+ }
+
+
+
+
+}
Added: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/ContentBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/ContentBean.java (rev 0)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/ContentBean.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -0,0 +1,80 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.forge.projects.admin.pages;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.faces.model.SelectItem;
+
+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.portlets.ProjectsPortlets;
+import org.jboss.logging.Logger;
+
+/**
+ * @author Pawel Wrzeszcz (pawel . wrzeszcz [at] jboss . com)
+ */
+
+public class ContentBean {
+
+ private Logger log = Logger.getLogger(ContentBean.class);
+
+ public List<SelectItem> getAvailableContent() {
+
+ ProjectsPortlets portlets = null;
+
+ try {
+ portlets = LabsServices.getProjectsPortletsService().getProjectsPortlets();
+
+ } catch (ServiceRetrievalException e) {
+ log.warn("Unable to get ProjectsPortletsService");
+ log.debug(e);
+ }
+
+ if ((portlets == null) || (portlets.getPortlets() == null)) {
+ return null;
+ }
+
+ List<SelectItem> list = new ArrayList<SelectItem>();
+
+ for (ProjectsPortlet portlet : portlets.getPortlets()) {
+
+ list.add(new SelectItem(portlet.getName()));
+ }
+
+ return list;
+ }
+
+ public List<SelectItem> getAvailableLayout() {
+
+ List<SelectItem> list = new ArrayList<SelectItem>();
+
+ list.add(new SelectItem(1, "1 Column"));
+ list.add(new SelectItem(2, "2 Column"));
+ list.add(new SelectItem(3, "3 Column"));
+
+ return list;
+ }
+
+}
Added: 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 (rev 0)
+++ 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)
@@ -0,0 +1,265 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.forge.projects.admin.pages;
+
+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;
+
+
+public class PagesAdminBean {
+
+ private Logger log = Logger.getLogger(PagesAdminBean.class);
+
+ private Pages pages;
+
+ private String selectedPage;
+ private int selectedLayout;
+ private List<String> selectedContent;
+
+ private String selectedLeftContent;
+ private String selectedMiddleContent;
+ private String selectedRightContent;
+
+ private String selectedColumn;
+ private String selectedColumnContent;
+
+ List<PreferenceBean> preferences;
+
+ private Page page;
+
+ //TODO no pages defined => NPE
+ //TODO reset session beans
+
+ public PagesAdminBean() {
+
+ String projectId = FacesTools.getSelectedProjectId();
+
+ try {
+ pages = LabsServices.getProjectsServiceRW().getProjectPagesRW(projectId);
+
+ } catch (MalformedObjectNameException e) {
+ log.debug("Unable to get ProjectsServiceRW", e);
+ }
+
+ selectedLayout = 3;
+
+ if (selectedPage == null) {
+ selectedPage = PagesAdminConstants.DEFAULT_PAGE;
+ }
+ editPage();
+ }
+
+ /* actions */
+
+ /* page*/
+
+ public String editPage() {
+
+ page = PagesAdminTools.findPage(pages, selectedPage);
+
+ selectedColumn = null;
+ selectedColumnContent = null;
+ clearSelections();
+
+ return "";
+ }
+
+ public String addPage() {
+
+ System.out.println("ADD");
+
+ return "";
+ }
+
+ /* content */
+
+ public String addContent() {
+
+ String column = FacesTools.getRequestParameter("column");
+
+ int height = PagesAdminTools.getContent(page, column).size() + 1; // Append to the end.
+
+ for (String portletName : selectedContent) {
+ PagesAdminTools.addContent(page, portletName, column, height);
+ }
+ clearSelections();
+ return "";
+ }
+
+ public String removeContent() {
+
+ PagesAdminTools.removeContent(page, selectedColumnContent, selectedColumn);
+ clearSelections();
+
+ return "";
+ }
+
+ private String selectedColumnContent(String column) {
+
+ if (column.equals("left")) { return selectedLeftContent; }
+ else if (column.equals("center")) { return selectedMiddleContent; }
+ return selectedRightContent;
+ }
+
+ public String moveContentUp() {
+
+ int n = Integer.parseInt(selectedColumnContent);
+ PagesAdminTools.moveContentUp(page, n, selectedColumn);
+ clearSelections();
+ return "";
+ }
+
+ public String moveContentDown() {
+
+ int n = Integer.parseInt(selectedColumnContent);
+ PagesAdminTools.moveContentUp(page, n + 1, selectedColumn);
+ clearSelections();
+ return "";
+ }
+
+ public void clearSelections() {
+
+ if (!"left".equals(selectedColumn)) { selectedLeftContent = null; }
+ if (!"center".equals(selectedColumn)) { selectedMiddleContent = null; }
+ if (!"right".equals(selectedColumn)) { selectedRightContent = null; }
+ setPreferences();
+ }
+
+ public String selectColumnContent() {
+
+ selectedColumn = FacesTools.getRequestParameter("column");
+ selectedColumnContent = selectedColumnContent(selectedColumn);
+ clearSelections();
+ return "";
+ }
+
+ private void setPreferences() {
+
+ if ((selectedColumn == null) || (selectedColumnContent == null)) {
+ return;
+ }
+ Portlet portlet = PagesAdminTools.findPortlet(page, selectedColumnContent, selectedColumn);
+
+ preferences = PagesAdminTools.getPreferences(portlet);
+ }
+
+ /* getters and setters */
+
+ public String getTitle() {
+ return PagesAdminTools.convertCMSTitle(page.getName());
+ }
+
+ public void setTitle(String title) {
+ page.setName(PagesAdminTools.convertJSFTitle(title));
+ }
+
+ public List<SelectItem> getProjectPages() {
+
+ return PagesAdminTools.getPages(pages);
+ }
+
+ public List<SelectItem> getLeftContent() {
+ return PagesAdminTools.getContent(page, "left");
+ }
+
+ public List<SelectItem> getMiddleContent() {
+ return PagesAdminTools.getContent(page, "center");
+ }
+
+ public List<SelectItem> getRightContent() {
+ return PagesAdminTools.getContent(page, "right");
+ }
+
+ /******************************/
+
+ public List<PreferenceBean> getPreferences() {
+
+ return preferences;
+ }
+
+ public List<String> getSelectedContent() {
+ return selectedContent;
+ }
+
+ public void setSelectedContent(List<String> selectedContent) {
+ this.selectedContent = selectedContent;
+ }
+
+ public String getSelectedPage() {
+ return selectedPage;
+ }
+
+ public void setSelectedPage(String selectedPage) {
+ this.selectedPage = selectedPage;
+ }
+
+ public int getSelectedLayout() {
+ return selectedLayout;
+ }
+
+ public void setSelectedLayout(int selectedLayout) {
+ this.selectedLayout = selectedLayout;
+ }
+
+ public String getSelectedLeftContent() {
+ return selectedLeftContent;
+ }
+
+ public void setSelectedLeftContent(String selectedLeftContent) {
+ this.selectedLeftContent = selectedLeftContent;
+ }
+
+ public String getSelectedMiddleContent() {
+ return selectedMiddleContent;
+ }
+
+ public void setSelectedMiddleContent(String selectedMiddleContent) {
+ this.selectedMiddleContent = selectedMiddleContent;
+ }
+
+ public String getSelectedRightContent() {
+ return selectedRightContent;
+ }
+
+ public void setSelectedRightContent(String selectedRightContent) {
+ this.selectedRightContent = selectedRightContent;
+ }
+
+ public Pages getPages() {
+ return pages;
+ }
+}
Added: 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 (rev 0)
+++ 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)
@@ -0,0 +1,32 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.forge.projects.admin.pages;
+
+
+/**
+ * @author Pawel Wrzeszcz (pawel . wrzeszcz [at] jboss . com)
+ */
+
+public class PagesAdminConstants {
+
+ public static final String DEFAULT_PAGE = "(default)";
+}
Added: 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 (rev 0)
+++ 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)
@@ -0,0 +1,278 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.forge.projects.admin.pages;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import javax.faces.model.SelectItem;
+import javax.management.MalformedObjectNameException;
+
+import org.jboss.forge.common.ejb3.LabsServices;
+import org.jboss.forge.common.ejb3.ProjectFactoryService;
+import org.jboss.forge.common.ejb3.ProjectsPortletsService;
+import org.jboss.forge.common.exceptions.ServiceRetrievalException;
+import org.jboss.forge.common.projects.portlets.ProjectsPortlet;
+import org.jboss.forge.common.projects.portlets.ProjectsPortletPreference;
+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.forge.common.projects.proxies.ObjectRWProxy;
+
+/**
+ * @author Pawel Wrzeszcz (pawel . wrzeszcz [at] jboss . com)
+ */
+
+public class PagesAdminTools {
+
+ public static Page findPage(Pages pages, String selectedPage) {
+
+ if (selectedPage.equals(PagesAdminConstants.DEFAULT_PAGE)) {
+ selectedPage = "";
+ }
+
+ for (Page page : pages.getPages()) {
+
+ if (page.getName().equals(selectedPage)) {
+
+ return page;
+ }
+ }
+
+ return null;
+ }
+
+ public static String convertCMSTitle(String title) {
+
+ return "".equals(title) ? PagesAdminConstants.DEFAULT_PAGE : title;
+ }
+
+ public static String convertJSFTitle(String title) {
+
+ return PagesAdminConstants.DEFAULT_PAGE.equals(title) ? "" : title;
+ }
+
+ public static List<SelectItem> getContent(Page page, String column) {
+
+ List<SelectItem> contentList = new ArrayList<SelectItem>();
+
+ List<Portlet> portlets = sortPortlets((List) page.getPortlets());
+
+ int i = 1;
+ for (Portlet portlet : portlets) {
+
+ if (column.equals(portlet.getRegion())) {
+ contentList.add(new SelectItem(Integer.toString(i), portlet.getName()));
+ portlet.setHeight(Integer.toString(i));
+ i++;
+ }
+ }
+
+ return contentList;
+ }
+
+ @SuppressWarnings("unchecked")
+ private static List<Portlet> sortPortlets(List portlets) {
+
+ Comparator<Portlet> portletsComparator = new PortletsHeightComparator();
+ // Create new list since CopyOnWriteArrayList iterator
+ // doesn't support set operation
+ // DO NOT use ArrayList(portlets) here. It will NOT work.
+ List<Portlet> ret = new ArrayList();
+ for (Object p : portlets) {
+ ret.add((Portlet) p);
+ }
+
+ Collections.sort(ret, portletsComparator);
+
+ return ret;
+ }
+
+ public static List<SelectItem> getPages(Pages pages) {
+
+ List<SelectItem> projectPages = new ArrayList<SelectItem>();
+
+ if ((pages != null) && (pages.getPages() != null)) {
+
+ projectPages = new ArrayList<SelectItem>();
+
+ for (Page page : pages.getPages()) {
+
+ String name = "".equals(page.getName()) ?
+ PagesAdminConstants.DEFAULT_PAGE : page.getName();
+
+ projectPages.add(new SelectItem(name));
+ }
+ }
+ return projectPages;
+ }
+
+ public static void addContent(Page page, String portletName, String region, int height) {
+
+ Portlet portlet;
+
+ try {
+ portlet = LabsServices.getProjectFactoryService().createPortlet(portletName, region, height, null);
+
+ } catch (MalformedObjectNameException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return;
+ }
+
+ List<Portlet> portletsList = (List<Portlet>) page.getPortlets();
+
+ portletsList.add(portlet);
+ }
+
+ public static void removeContent(Page page, String contentToRemove, String column) {
+
+ if ((contentToRemove == null) || (contentToRemove.length() == 0)) {
+ return;
+ }
+
+ int n = Integer.parseInt(contentToRemove);
+
+ List<Portlet> portlets = sortPortlets(page.getPortlets());
+
+ int i = 1;
+ for (Portlet portlet : portlets) {
+
+ if (column.equals(portlet.getRegion())) {
+
+ if (n == i) {
+
+ page.getPortlets().remove(portlet);
+ n = -1;
+ } else {
+
+ portlet.setHeight(Integer.toString(i));
+ i++;
+ }
+ }
+ }
+ }
+
+ public static void moveContentUp(Page page, int n, String column) {
+
+ if (n <= 1) {
+ return;
+ }
+
+ List<Portlet> portlets = choosePortlets(page.getPortlets(), column);
+ if (n > portlets.size()) {
+ return;
+ }
+
+ Portlet portletToMoveUp = portlets.get(n - 1);
+ Portlet portletToMoveDown = portlets.get(n - 2);
+
+ portletToMoveUp.setHeight(Integer.toString(n - 1));
+ portletToMoveDown.setHeight(Integer.toString(n));
+ }
+
+ private static List<Portlet> choosePortlets(List<? extends Portlet> portlets, String column) {
+
+ List<? extends Portlet> list = sortPortlets(portlets);
+ List<Portlet> ret = new ArrayList<Portlet>();
+
+ for (Portlet portlet : list) {
+
+ if (column.equals(portlet.getRegion())) {
+ ret.add(portlet);
+ }
+ }
+
+ return ret;
+ }
+
+ public static Portlet findPortlet(Page page, String contentPosition, String column) {
+
+ if ((contentPosition == null) || (contentPosition.length() == 0)) {
+ return null;
+ }
+
+ int n = Integer.parseInt(contentPosition);
+
+ List<Portlet> portlets = choosePortlets(page.getPortlets(), column);
+ if ((n > portlets.size()) || (n < 1)) {
+ return null;
+ }
+
+ return portlets.get(n-1);
+ }
+
+ @SuppressWarnings("unchecked")
+ public static List<PreferenceBean> getPreferences(Portlet portlet) {
+
+ if (portlet == null) {
+ return null;
+ }
+
+ List<Preference> preferences = (List<Preference>) portlet.getPreferences();
+
+ Set<String> preferencesSet = new HashSet<String>();
+ for (Preference preference : preferences) {
+ preferencesSet.add(preference.getName());
+ }
+
+ ProjectsPortletsService projectsPortletsService;
+ ProjectFactoryService factory;
+
+ try {
+ projectsPortletsService = LabsServices.getProjectsPortletsService();
+ factory = LabsServices.getProjectFactoryService();
+ } catch (Exception e) {
+ // do nothing
+ return null;
+ }
+
+ ProjectsPortlet projectsPortlet = projectsPortletsService.getProjectsProtlet(portlet.getName());
+ Map<String,ProjectsPortletPreference> preferencesMap = new HashMap<String, ProjectsPortletPreference>();
+
+ for (ProjectsPortletPreference pref : projectsPortlet.getPreferences()) {
+
+ if (!preferencesSet.contains(pref.getName())) {
+ preferences.add(factory.createPreference(pref.getName(),null));
+ }
+
+ preferencesMap.put(pref.getName(), pref);
+ }
+
+ List<PreferenceBean> ret = new ArrayList<PreferenceBean>();
+ for (Preference pref : preferences) {
+
+ if (preferencesMap.containsKey(pref.getName())) {
+ ret.add(new PreferenceBean(pref, preferencesMap.get(pref.getName())));
+ }
+ }
+
+ return ret;
+ }
+}
Added: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PortletsHeightComparator.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PortletsHeightComparator.java (rev 0)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PortletsHeightComparator.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -0,0 +1,48 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.jboss.forge.projects.admin.pages;
+
+import java.util.Comparator;
+
+import org.jboss.forge.common.projects.project.Portlet;
+
+public class PortletsHeightComparator implements Comparator<Portlet> {
+
+ public int compare(Portlet p1, Portlet p2) {
+
+ Integer h1 = getHeight(p1);
+ Integer h2 = getHeight(p2);
+
+ return h1.compareTo(h2);
+ }
+
+ private Integer getHeight(Portlet p) {
+
+ if ((p == null) || (p.getHeight() == null)) {
+ return 0;
+ } else {
+ return Integer.parseInt(p.getHeight());
+ }
+ }
+
+}
Added: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PreferenceBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PreferenceBean.java (rev 0)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PreferenceBean.java 2007-03-31 09:25:07 UTC (rev 10680)
@@ -0,0 +1,79 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.forge.projects.admin.pages;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.faces.model.SelectItem;
+
+import org.jboss.forge.common.projects.portlets.ProjectsPortletPreference;
+import org.jboss.forge.common.projects.project.Preference;
+
+/**
+ * @author Pawel Wrzeszcz (pawel . wrzeszcz [at] jboss . com)
+ */
+
+public class PreferenceBean {
+
+ private Preference portletPreference;
+ private ProjectsPortletPreference preference;
+
+ public PreferenceBean() {}
+
+ public PreferenceBean(Preference portletProperty,
+ ProjectsPortletPreference property) {
+
+ this.portletPreference = portletProperty;
+ this.preference = property;
+
+ if (portletProperty.getValue() == null) {
+
+ portletProperty.setValue(preference.getDefault());
+ }
+ }
+
+ /* getters */
+
+ public List<SelectItem> getFixedValues() {
+
+ List<SelectItem> list = new ArrayList<SelectItem>();
+
+ if ((preference.getValues() == null) || (preference.getValues().size() == 0)) {
+ return list;
+ }
+
+ for (String value : preference.getValues()) {
+ list.add(new SelectItem(value));
+ }
+
+ return list;
+ }
+
+ public Preference getPortletPreference() {
+ return portletPreference;
+ }
+
+ public ProjectsPortletPreference getPreference() {
+ return preference;
+ }
+}
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:03:30 UTC (rev 10679)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/faces-config.xml 2007-03-31 09:25:07 UTC (rev 10680)
@@ -40,12 +40,12 @@
<managed-bean>
<managed-bean-name>pedit</managed-bean-name>
- <managed-bean-class>org.jboss.forge.projects.admin.ProjectInfoAdminBean</managed-bean-class>
+ <managed-bean-class>org.jboss.forge.projects.admin.info.InfoAdminBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
<managed-bean>
<managed-bean-name>pages</managed-bean-name>
- <managed-bean-class>org.jboss.forge.projects.admin.ProjectPagesAdminBean</managed-bean-class>
+ <managed-bean-class>org.jboss.forge.projects.admin.pages.PagesAdminBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
<managed-bean>
@@ -63,12 +63,12 @@
</managed-bean>
<managed-bean>
<managed-bean-name>types</managed-bean-name>
- <managed-bean-class>org.jboss.forge.projects.admin.ProjectInfoTypesBean</managed-bean-class>
+ <managed-bean-class>org.jboss.forge.projects.admin.info.TypesBean</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
</managed-bean>
<managed-bean>
<managed-bean-name>content</managed-bean-name>
- <managed-bean-class> org.jboss.forge.projects.admin.ContentBean</managed-bean-class>
+ <managed-bean-class>org.jboss.forge.projects.admin.pages.ContentBean</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
</managed-bean>
More information about the jboss-svn-commits
mailing list