[jboss-svn-commits] JBL Code SVN: r9425 - labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/info.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Feb 10 10:58:48 EST 2007
Author: wrzep
Date: 2007-02-10 10:58:48 -0500 (Sat, 10 Feb 2007)
New Revision: 9425
Modified:
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/info/ProjectInfoConstants.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/info/ProjectInfoEditBean.java
Log:
JBLAB-780
Edit implementation for fields like "repositories", "issueTrackers", "forums", etc.
Pawel
Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/info/ProjectInfoConstants.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/info/ProjectInfoConstants.java 2007-02-10 13:16:38 UTC (rev 9424)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/info/ProjectInfoConstants.java 2007-02-10 15:58:48 UTC (rev 9425)
@@ -21,7 +21,13 @@
*/
package org.jboss.forge.projects.info;
+import org.jboss.forge.common.projects.project.BuildType;
+import org.jboss.forge.common.projects.project.DocumentationType;
+import org.jboss.forge.common.projects.project.ForumType;
+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.SupportType;
/**
* @author Pawel Wrzeszcz (pawel . wrzeszcz [at] jboss . com)
@@ -35,7 +41,24 @@
public static final String ERR_ACTION = "";
public static final String ADD_REMOVE_ACTION = "";
- public static final RepoType DEFAULT_REPO_TYPE = RepoType.SVN;
+ public static final RepoType DEFAULT_REPO_TYPE = RepoType.SVN;
+ public static final MonitorType DEFAULT_REPO_MONITOR_TYPE
+ = MonitorType.FISHEYE;
+ public static final IssueTrackerType DEFAULT_ISSUE_TRACKER_TYPE
+ = IssueTrackerType.JIRA;
+ public static final BuildType DEFAULT_BUILD_TYPE = BuildType.CRUISE_CONTROL;
+ public static final SupportType DEFAULT_SUPPORT_TYPE = SupportType.SUPPORT;
+ public static final ForumType DEFAULT_FORUM_TYPE = ForumType.USER;
+ public static final DocumentationType DEFAULT_DOCUMENTATION_TYPE
+ = DocumentationType.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 ProjectInfoConstants() {};
}
Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/info/ProjectInfoEditBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/info/ProjectInfoEditBean.java 2007-02-10 13:16:38 UTC (rev 9424)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/info/ProjectInfoEditBean.java 2007-02-10 15:58:48 UTC (rev 9425)
@@ -30,9 +30,21 @@
import org.jboss.forge.common.FacesTools;
import org.jboss.forge.common.projects.ProjectsHelper;
+import org.jboss.forge.common.projects.project.BuildResult;
+import org.jboss.forge.common.projects.project.BuildType;
+import org.jboss.forge.common.projects.project.Documentation;
+import org.jboss.forge.common.projects.project.DocumentationType;
+import org.jboss.forge.common.projects.project.Forum;
+import org.jboss.forge.common.projects.project.ForumType;
+import org.jboss.forge.common.projects.project.IssueTracker;
+import org.jboss.forge.common.projects.project.IssueTrackerType;
+import org.jboss.forge.common.projects.project.MonitorType;
import org.jboss.forge.common.projects.project.Project;
+import org.jboss.forge.common.projects.project.RepoMonitor;
import org.jboss.forge.common.projects.project.RepoType;
import org.jboss.forge.common.projects.project.Repository;
+import org.jboss.forge.common.projects.project.SupportService;
+import org.jboss.forge.common.projects.project.SupportType;
import org.jboss.forge.common.ejb3.ProjectsService;
public class ProjectInfoEditBean {
@@ -43,6 +55,29 @@
private String newRepoURL;
private RepoType newRepoType = ProjectInfoConstants.DEFAULT_REPO_TYPE;
+ private String newRepoMonitorURL;
+ private MonitorType newRepoMonitorType =
+ ProjectInfoConstants.DEFAULT_REPO_MONITOR_TYPE;
+
+ private String newIssueTrackerURL;
+ private IssueTrackerType newIssueTrackerType =
+ ProjectInfoConstants.DEFAULT_ISSUE_TRACKER_TYPE;
+
+ private String newBuildResultsURL;
+ private BuildType newBuildResultsType =
+ ProjectInfoConstants.DEFAULT_BUILD_TYPE;
+
+ private String newSupportServiceURL;
+ private SupportType newSupportServiceType =
+ ProjectInfoConstants.DEFAULT_SUPPORT_TYPE;
+
+ private String newForumURL;
+ private ForumType newForumType = ProjectInfoConstants.DEFAULT_FORUM_TYPE;
+
+ private String newDocumentationURL;
+ private DocumentationType newDocumentationType =
+ ProjectInfoConstants.DEFAULT_DOCUMENTATION_TYPE;
+
public ProjectInfoEditBean() {
projectsService = ProjectsHelper.getProjectsService();
@@ -82,7 +117,8 @@
public String delRepo() {
- String delRepoId = FacesTools.getRequestParameter("delRepoId");
+ String delRepoId = FacesTools.getRequestParameter(
+ ProjectInfoConstants.DEL_REPO_PARAM);
List<Repository> repositories = project.getRepositories();
for (Repository repo : repositories) {
@@ -97,6 +133,222 @@
return ProjectInfoConstants.ERR_ACTION;
}
+ public String addRepoMonitor() {
+
+ if ((newRepoMonitorURL == null) || (newRepoMonitorURL == "")) {
+ FacesTools.addMessage("Please provide repository monitor URL.");
+ return ProjectInfoConstants.ERR_ACTION;
+ }
+
+ RepoMonitor rm = new RepoMonitor();
+ rm.setType(newRepoMonitorType);
+ rm.setValue(newRepoMonitorURL);
+
+ project.getRepoMonitors().add(rm);
+ newRepoMonitorURL = "";
+ newRepoMonitorType = ProjectInfoConstants.DEFAULT_REPO_MONITOR_TYPE;
+
+ return ProjectInfoConstants.ADD_REMOVE_ACTION;
+ }
+
+ public String delRepoMonitor() {
+
+ String delRepoMonitorId = FacesTools.getRequestParameter(
+ ProjectInfoConstants.DEL_REPO_MONITOR_PARAM);
+
+ List<RepoMonitor> repoMonitors = project.getRepoMonitors();
+ for (RepoMonitor rm : repoMonitors) {
+
+ if (delRepoMonitorId.equals(rm.getValue())) {
+ repoMonitors.remove(rm);
+ return ProjectInfoConstants.ADD_REMOVE_ACTION;
+ }
+ }
+
+ FacesTools.addMessage("Unknown error");
+ return ProjectInfoConstants.ERR_ACTION;
+ }
+
+ public String addIssueTracker() {
+
+ if ((newIssueTrackerURL == null) || (newIssueTrackerURL == "")) {
+ FacesTools.addMessage("Please provide issue tracker URL.");
+ return ProjectInfoConstants.ERR_ACTION;
+ }
+
+ IssueTracker rm = new IssueTracker();
+ rm.setType(newIssueTrackerType);
+ rm.setValue(newIssueTrackerURL);
+
+ project.getIssueTrackers().add(rm);
+ newIssueTrackerURL = "";
+ newIssueTrackerType = ProjectInfoConstants.DEFAULT_ISSUE_TRACKER_TYPE;
+
+ return ProjectInfoConstants.ADD_REMOVE_ACTION;
+ }
+
+ public String delIssueTracker() {
+
+ String delIssueTrackerId = FacesTools.getRequestParameter(
+ ProjectInfoConstants.DEL_ISSUE_TRACKER_PARAM);
+
+ List<IssueTracker> repoMonitors = project.getIssueTrackers();
+ for (IssueTracker rm : repoMonitors) {
+
+ if (delIssueTrackerId.equals(rm.getValue())) {
+ repoMonitors.remove(rm);
+ return ProjectInfoConstants.ADD_REMOVE_ACTION;
+ }
+ }
+
+ FacesTools.addMessage("Unknown error");
+ return ProjectInfoConstants.ERR_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<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;
+ }
+
+ public String addSupportService() {
+
+ if ((newSupportServiceURL == null) || (newSupportServiceURL == "")) {
+ FacesTools.addMessage("Please provide issue tracker URL.");
+ return ProjectInfoConstants.ERR_ACTION;
+ }
+
+ SupportService support = new SupportService();
+ support.setType(newSupportServiceType);
+ support.setValue(newSupportServiceURL);
+
+ project.getSupportServices().add(support);
+ newSupportServiceURL = "";
+ newSupportServiceType = ProjectInfoConstants.DEFAULT_SUPPORT_TYPE;
+
+ return ProjectInfoConstants.ADD_REMOVE_ACTION;
+ }
+
+ public String delSupportService() {
+
+ String delSupportServiceId = FacesTools.getRequestParameter(
+ ProjectInfoConstants.DEL_ISSUE_TRACKER_PARAM);
+
+ List<SupportService> repoMonitors = project.getSupportServices();
+ for (SupportService rm : repoMonitors) {
+
+ if (delSupportServiceId.equals(rm.getValue())) {
+ repoMonitors.remove(rm);
+ return ProjectInfoConstants.ADD_REMOVE_ACTION;
+ }
+ }
+
+ FacesTools.addMessage("Unknown error");
+ return ProjectInfoConstants.ERR_ACTION;
+ }
+
+ public String addForum() {
+
+ if ((newForumURL == null) || (newForumURL == "")) {
+ FacesTools.addMessage("Please provide forum URL.");
+ return ProjectInfoConstants.ERR_ACTION;
+ }
+
+ Forum forum = new Forum();
+ forum.setType(newForumType);
+ forum.setValue(newForumURL);
+
+ project.getForums().add(forum);
+ newForumURL = "";
+ newForumType = ProjectInfoConstants.DEFAULT_FORUM_TYPE;
+
+ return ProjectInfoConstants.ADD_REMOVE_ACTION;
+ }
+
+ public String delForum() {
+
+ String delForumId = FacesTools.getRequestParameter(
+ ProjectInfoConstants.DEL_FORUM_PARAM);
+
+ List<Forum> repoMonitors = project.getForums();
+ for (Forum rm : repoMonitors) {
+
+ if (delForumId.equals(rm.getValue())) {
+ repoMonitors.remove(rm);
+ return ProjectInfoConstants.ADD_REMOVE_ACTION;
+ }
+ }
+
+ FacesTools.addMessage("Unknown error");
+ return ProjectInfoConstants.ERR_ACTION;
+ }
+
+ public String addDocumentation() {
+
+ if ((newDocumentationURL == null) || (newDocumentationURL == "")) {
+ FacesTools.addMessage("Please provide documentation URL.");
+ return ProjectInfoConstants.ERR_ACTION;
+ }
+
+ Documentation doc = new Documentation();
+ doc.setType(newDocumentationType);
+ doc.setValue(newDocumentationURL);
+
+ project.getDocumentation().add(doc);
+ newDocumentationURL = "";
+ newDocumentationType = ProjectInfoConstants.DEFAULT_DOCUMENTATION_TYPE;
+
+ return ProjectInfoConstants.ADD_REMOVE_ACTION;
+ }
+
+ public String delDocumentation() {
+
+ String delDocumentationId = FacesTools.getRequestParameter(
+ ProjectInfoConstants.DEL_DOC_PARAM);
+
+ List<Documentation> docList = project.getDocumentation();
+ for (Documentation d : docList) {
+
+ if (delDocumentationId.equals(d.getValue())) {
+ docList.remove(d);
+ return ProjectInfoConstants.ADD_REMOVE_ACTION;
+ }
+ }
+
+ FacesTools.addMessage("Unknown error");
+ return ProjectInfoConstants.ERR_ACTION;
+ }
+
/* Getters and setters */
public Project getProject() {
@@ -119,12 +371,108 @@
return newRepoURL;
}
+ public MonitorType getNewRepoMonitorType() {
+ return newRepoMonitorType;
+ }
+
+ public void setNewRepoMonitorType(MonitorType newRepoMonitorType) {
+ this.newRepoMonitorType = newRepoMonitorType;
+ }
+
+ public String getNewRepoMonitorURL() {
+ return newRepoMonitorURL;
+ }
+
+ public void setNewRepoMonitorURL(String newRepoMonitorURL) {
+ this.newRepoMonitorURL = newRepoMonitorURL;
+ }
+
public void setNewRepoURL(String newRepoURL) {
this.newRepoURL = newRepoURL;
}
+ public String getNewIssueTrackerURL() {
+ return newIssueTrackerURL;
+ }
+
+ public void setNewIssueTrackerURL(String newIssueTrackerURL) {
+ this.newIssueTrackerURL = newIssueTrackerURL;
+ }
+
+ public IssueTrackerType getNewIssueTrackerType() {
+ return newIssueTrackerType;
+ }
+
+ public void setNewIssueTrackerType(IssueTrackerType newIssueTrakcerType) {
+ this.newIssueTrackerType = newIssueTrakcerType;
+ }
+
+ 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;
+ }
+
+ public SupportType getNewSupportServiceType() {
+ return newSupportServiceType;
+ }
+
+ public void setNewSupportServiceType(SupportType newSupportServiceType) {
+ this.newSupportServiceType = newSupportServiceType;
+ }
+
+ public String getNewSupportServiceURL() {
+ return newSupportServiceURL;
+ }
+
+ public void setNewSupportServiceURL(String newSupportServiceURL) {
+ this.newSupportServiceURL = newSupportServiceURL;
+ }
+
+ public ForumType getNewForumType() {
+ return newForumType;
+ }
+
+ public void setNewForumType(ForumType newForumType) {
+ this.newForumType = newForumType;
+ }
+
+ public String getNewForumURL() {
+ return newForumURL;
+ }
+
+ public void setNewForumURL(String newForumURL) {
+ this.newForumURL = newForumURL;
+ }
+
+ public DocumentationType getNewDocumentationType() {
+ return newDocumentationType;
+ }
+
+ public void setNewDocumentationType(DocumentationType newDocumentationType) {
+ this.newDocumentationType = newDocumentationType;
+ }
+
+ public String getNewDocumentationURL() {
+ return newDocumentationURL;
+ }
+
+ public void setNewDocumentationURL(String newDocumentationURL) {
+ this.newDocumentationURL = newDocumentationURL;
+ }
+
/* Helper methods */
-
+
public List<SelectItem> getAllProjects() {
List<SelectItem> projects = new ArrayList<SelectItem>();
@@ -133,7 +481,7 @@
}
return projects;
}
-
+
public Map<String,RepoType> getRepoTypes() {
Map<String,RepoType> map = new HashMap<String,RepoType>();
@@ -143,4 +491,57 @@
return map;
}
+ public Map<String,MonitorType> getRepoMonitorTypes() {
+
+ Map<String,MonitorType> monitorTypesMap = new HashMap<String,MonitorType>();
+ for (MonitorType mt : MonitorType.values()) {
+ monitorTypesMap.put(mt.value(), mt);
+ }
+ return monitorTypesMap;
+ }
+
+ public Map<String,IssueTrackerType> getIssueTrackerTypes() {
+
+ Map<String,IssueTrackerType> typesMap = new HashMap<String,IssueTrackerType>();
+ for (IssueTrackerType itt : IssueTrackerType.values()) {
+ typesMap.put(itt.value(), itt);
+ }
+ return typesMap;
+ }
+
+ public Map<String,BuildType> getBuildResultsTypes() {
+
+ Map<String,BuildType> typesMap = new HashMap<String,BuildType>();
+ for (BuildType itt : BuildType.values()) {
+ typesMap.put(itt.value(), itt);
+ }
+ return typesMap;
+ }
+
+ public Map<String,SupportType> getSupportServiceTypes() {
+
+ Map<String,SupportType> typesMap = new HashMap<String,SupportType>();
+ for (SupportType st : SupportType.values()) {
+ typesMap.put(st.value(), st);
+ }
+ return typesMap;
+ }
+
+ public Map<String,ForumType> getForumTypes() {
+
+ Map<String,ForumType> typesMap = new HashMap<String,ForumType>();
+ for (ForumType ft : ForumType.values()) {
+ typesMap.put(ft.value(), ft);
+ }
+ return typesMap;
+ }
+
+ public Map<String,DocumentationType> getDocumentationTypes() {
+
+ Map<String,DocumentationType> typesMap = new HashMap<String,DocumentationType>();
+ for (DocumentationType ft : DocumentationType.values()) {
+ typesMap.put(ft.value(), ft);
+ }
+ return typesMap;
+ }
}
More information about the jboss-svn-commits
mailing list