[jboss-svn-commits] JBL Code SVN: r35571 - in labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main: java/org/jboss/community/sbs/plugin/reports/struts and 3 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Oct 19 11:10:55 EDT 2010
Author: lkrzyzanek
Date: 2010-10-19 11:10:54 -0400 (Tue, 19 Oct 2010)
New Revision: 35571
Added:
labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/struts/AdminRHUsersSnapshotAction.java
labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/plugin/resources/templates/admin/rhusers-snaphost.ftl
Modified:
labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/dao/DbRedHatUsersDAOImpl.java
labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/dao/RedHatUsersDAO.java
labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/struts/AdminRHUsersAction.java
labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/plugin/resources/templates/admin/rhusers.ftl
labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/plugin/struts.xml
labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/resources/plugin_i18n.properties
Log:
Added snapshot details
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/dao/DbRedHatUsersDAOImpl.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/dao/DbRedHatUsersDAOImpl.java 2010-10-19 14:22:43 UTC (rev 35570)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/dao/DbRedHatUsersDAOImpl.java 2010-10-19 15:10:54 UTC (rev 35571)
@@ -52,11 +52,11 @@
this.getSimpleJdbcTemplate().update(CREATE_SNAPSHOT, System.currentTimeMillis());
}
- private StringMapper stringMapper = new StringMapper();
+ private LongMapper longMapper = new LongMapper();
@Override
- public List<String> getRedHatUsers(Date date) {
- return this.getSimpleJdbcTemplate().query(SELECT_REDHAT_USERS_BY_DATE, stringMapper, date);
+ public List<Long> getRedHatUsers(Date date) {
+ return this.getSimpleJdbcTemplate().query(SELECT_REDHAT_USERS_BY_DATE, longMapper, date);
}
private SnapshotsCountMapper snapshotsCountMapper = new SnapshotsCountMapper();
@@ -74,13 +74,13 @@
}
/**
- * Simple string mapper - takes first column and return String
+ * Simple long mapper - takes first column and return Long
*/
- private class StringMapper implements ParameterizedRowMapper<String> {
+ private class LongMapper implements ParameterizedRowMapper<Long> {
@Override
- public String mapRow(ResultSet rs, int rowNum) throws SQLException {
- return rs.getString(1);
+ public Long mapRow(ResultSet rs, int rowNum) throws SQLException {
+ return rs.getLong(1);
}
}
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/dao/RedHatUsersDAO.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/dao/RedHatUsersDAO.java 2010-10-19 14:22:43 UTC (rev 35570)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/dao/RedHatUsersDAO.java 2010-10-19 15:10:54 UTC (rev 35571)
@@ -43,7 +43,7 @@
* @param date specified date
* @return
*/
- public List<String> getRedHatUsers(Date date);
+ public List<Long> getRedHatUsers(Date date);
/**
* Get snapshots counts
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/struts/AdminRHUsersAction.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/struts/AdminRHUsersAction.java 2010-10-19 14:22:43 UTC (rev 35570)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/struts/AdminRHUsersAction.java 2010-10-19 15:10:54 UTC (rev 35571)
@@ -41,6 +41,11 @@
private RedHatUsersDAO redHatUsersDAO;
+ /**
+ * Used for showDetail
+ */
+ private Date snapshotDate;
+
public void prepare() {
snapshots = redHatUsersDAO.getSnapshotsCount();
}
@@ -54,6 +59,11 @@
return SUCCESS;
}
+ public String showDetail() {
+
+ return INPUT;
+ }
+
public Map<Date, Long> getSnapshots() {
return snapshots;
}
@@ -62,4 +72,12 @@
this.redHatUsersDAO = redHatUsersDAO;
}
+ public void setSnapshotDate(Date snapshotDate) {
+ this.snapshotDate = snapshotDate;
+ }
+
+ public Date getSnapshotDate() {
+ return snapshotDate;
+ }
+
}
Added: labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/struts/AdminRHUsersSnapshotAction.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/struts/AdminRHUsersSnapshotAction.java (rev 0)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/struts/AdminRHUsersSnapshotAction.java 2010-10-19 15:10:54 UTC (rev 35571)
@@ -0,0 +1,103 @@
+/*
+ * JBoss.org http://jboss.org/
+ *
+ * Copyright (c) 2010 Red Hat Middleware, LLC. All rights reserved.
+ *
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT A 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, v.2.1 along with this distribution; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301, USA.
+ *
+ * Red Hat Author(s): Libor Krzyzanek
+ */
+package org.jboss.community.sbs.plugin.reports.struts;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+import org.apache.log4j.LogManager;
+import org.apache.log4j.Logger;
+import org.jboss.community.sbs.plugin.reports.dao.RedHatUsersDAO;
+
+import com.jivesoftware.base.User;
+import com.jivesoftware.base.UserNotFoundException;
+import com.jivesoftware.community.action.JiveActionSupport;
+
+/**
+ * Action for viewing Red Hat Users snaphosts
+ *
+ * @author <a href="mailto:lkrzyzan at redhat.com">Libor Krzyzanek</a>
+ *
+ */
+public class AdminRHUsersSnapshotAction extends JiveActionSupport {
+ protected static final Logger log = LogManager.getLogger(AdminRHUsersSnapshotAction.class);
+ /**
+ * Date of snaphost
+ */
+ private Date snapshotDate;
+
+ private List<User> users = null;
+
+ private RedHatUsersDAO redHatUsersDAO;
+
+ @Override
+ public String execute() {
+ if (snapshotDate == null) {
+ addActionError(getText("plugin.reports.admin.rhusers.snapshot.dateRequired"));
+ log.error("snapshotDate is null");
+ return INPUT;
+ }
+
+ this.users = toUsers(redHatUsersDAO.getRedHatUsers(snapshotDate));
+ log.info("users: " + users);
+
+ return INPUT;
+ }
+
+ private List<User> toUsers(List<Long> users) {
+ log.info("users: " + users);
+ if (users == null || users.size() == 0) {
+ return null;
+ }
+ List<User> jiveUsers = new ArrayList<User>(users.size());
+
+ for (Long userId : users) {
+ try {
+ User jiveUser = userManager.getUser(userId);
+ jiveUsers.add(jiveUser);
+ } catch (UserNotFoundException e) {
+ addActionError(getText("plugin.reports.admin.rhusers.snapshot.userNotFound"));
+ log.error(e);
+ }
+ }
+
+ return jiveUsers;
+ }
+
+ public void setRedHatUsersDAO(RedHatUsersDAO redHatUsersDAO) {
+ this.redHatUsersDAO = redHatUsersDAO;
+ }
+
+ public void setSnapshotDate(Date snapshotDate) {
+ this.snapshotDate = snapshotDate;
+ }
+
+ public Date getSnapshotDate() {
+ return snapshotDate;
+ }
+
+ public List<User> getUsers() {
+ return users;
+ }
+
+}
Property changes on: labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/java/org/jboss/community/sbs/plugin/reports/struts/AdminRHUsersSnapshotAction.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/plugin/resources/templates/admin/rhusers-snaphost.ftl
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/plugin/resources/templates/admin/rhusers-snaphost.ftl (rev 0)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/plugin/resources/templates/admin/rhusers-snaphost.ftl 2010-10-19 15:10:54 UTC (rev 35571)
@@ -0,0 +1,32 @@
+<html>
+ <head>
+ <#assign pageTitle=action.getText('plugin.reports.admin.rhusers.snapshot.name') />
+ <title>${pageTitle}</title>
+ <content tag="pagetitle">${pageTitle}</content>
+ <content tag="pageID">reports-jbossreports-rhusers</content>
+ </head>
+ <body>
+ <#include "/template/global/include/form-message.ftl" />
+
+ <p>Snapshot Date: ${snapshotDate?datetime}</p>
+
+ <div class="jive-table" style="border: 0pt none;">
+ <table style="border: 1px solid #BBBBBB">
+ <tr>
+ <th><@s.text name="plugin.reports.admin.rhusers.snapshot.column.username"/></th>
+ <th><@s.text name="plugin.reports.admin.rhusers.snapshot.column.firstname"/></th>
+ <th><@s.text name="plugin.reports.admin.rhusers.snapshot.column.lastname"/></th>
+ </tr>
+ <#if list??>
+ <#list users as user>
+ <tr>
+ <td>${user.username}</td>
+ <td>${user.firstname}</td>
+ <td>${user.lastname}</td>
+ </tr>
+ </#list>
+ </#if>
+ </table>
+ </div>
+ </body>
+</html>
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/plugin/resources/templates/admin/rhusers.ftl
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/plugin/resources/templates/admin/rhusers.ftl 2010-10-19 14:22:43 UTC (rev 35570)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/plugin/resources/templates/admin/rhusers.ftl 2010-10-19 15:10:54 UTC (rev 35571)
@@ -6,6 +6,8 @@
<content tag="pageID">reports-jbossreports-rhusers</content>
</head>
<body>
+ <#include "/template/global/include/form-message.ftl" />
+
<@s.form theme="simple" action="redhat-users-create-snapshot">
<@s.text name="plugin.reports.admin.rhusers.createsnapshot"/>: <@s.submit value="${action.getText('plugin.reports.admin.rhusers.submit')}"/>
</@s.form>
@@ -16,11 +18,13 @@
<tr>
<th><@s.text name="plugin.reports.admin.rhusers.snapshots.column.created"/></th>
<th><@s.text name="plugin.reports.admin.rhusers.snapshots.column.count"/></th>
+ <th><@s.text name="plugin.reports.admin.rhusers.snapshots.column.action"/></th>
</tr>
<#list snapshots.keySet() as key>
<tr>
<td>${key?datetime}</td>
<td>${snapshots.get(key)}</td>
+ <td><a href="/admin/redhat-users-snapshot.jspa?snapshotDate=${key?datetime}"><@s.text name="plugin.reports.admin.rhusers.snapshots.detail"/></a></td>
</tr>
</#list>
</table>
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/plugin/struts.xml
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/plugin/struts.xml 2010-10-19 14:22:43 UTC (rev 35570)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/plugin/struts.xml 2010-10-19 15:10:54 UTC (rev 35571)
@@ -13,10 +13,17 @@
<result name="input" type="freemarker">
/plugins/reports/resources/templates/admin/rhusers.ftl
</result>
- <result name="success" type="redirect-action">
- redhat-users
+ <result name="success" type="freemarker">
+ /plugins/reports/resources/templates/admin/rhusers.ftl
</result>
</action>
+ <action name="redhat-users-snapshot" class="org.jboss.community.sbs.plugin.reports.struts.AdminRHUsersSnapshotAction"
+ method="execute">
+ <result name="input" type="freemarker">
+ /plugins/reports/resources/templates/admin/rhusers-snaphost.ftl
+ </result>
+ </action>
+
</package>
</struts>
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/resources/plugin_i18n.properties
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/resources/plugin_i18n.properties 2010-10-19 14:22:43 UTC (rev 35570)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs/reports/trunk/src/main/resources/plugin_i18n.properties 2010-10-19 15:10:54 UTC (rev 35571)
@@ -7,5 +7,14 @@
plugin.reports.admin.rhusers.snapshots.caption=Created Snapshots
plugin.reports.admin.rhusers.snapshots.column.created=Created
plugin.reports.admin.rhusers.snapshots.column.count=Count
+plugin.reports.admin.rhusers.snapshots.column.action=Action
+plugin.reports.admin.rhusers.snapshots.detail=Detail
plugin.reports.admin.rhusers.submit=Create Snapshot
-plugin.reports.admin.rhusers.text.created=Snapshot successfuly created
\ No newline at end of file
+plugin.reports.admin.rhusers.text.created=Snapshot successfuly created
+
+plugin.reports.admin.rhusers.snapshot.name=Red Hat users snapshot details
+plugin.reports.admin.rhusers.snapshot.column.username=Username
+plugin.reports.admin.rhusers.snapshot.column.firstname=Firstname
+plugin.reports.admin.rhusers.snapshot.column.lastname=Lastname
+plugin.reports.admin.rhusers.snapshot.dateRequired=Snaphost date is required
+plugin.reports.admin.rhusers.snapshot.userNotFound=User {0} not found in SBS.
\ No newline at end of file
More information about the jboss-svn-commits
mailing list