[jboss-svn-commits] JBL Code SVN: r19590 - in labs/jbosslabs/labs-3.0-build: core/core-api/src/main/java/org/jboss/labs/injection and 5 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Apr 16 06:57:35 EDT 2008
Author: wrzep
Date: 2008-04-16 06:57:34 -0400 (Wed, 16 Apr 2008)
New Revision: 19590
Added:
labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/events/AdminEvents.java
labs/jbosslabs/labs-3.0-build/services/events-service/src/main/java/org/jboss/labs/events/AdminEventsConsumer.java
labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/AdminEventsGenerator.java
labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/AdminEventsListener.java
Removed:
labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/events/ProjectEventsListener.java
Modified:
labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/injection/LabsGuiceModule.java
labs/jbosslabs/labs-3.0-build/services/project-service/src/main/java/org/jboss/labs/core/service/impl/ProjectServiceEventListenerBean.java
labs/jbosslabs/labs-3.0-build/views/admin/pom.xml
labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/ClearspaceManager.java
labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/Mailer.java
labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/action/project/AcceptProject.java
labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/action/project/Notifier.java
Log:
JBLAB-904 admin events - to be used in notifications feed implementation
Copied: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/events/AdminEvents.java (from rev 19556, labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/events/ProjectEvents.java)
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/events/AdminEvents.java (rev 0)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/events/AdminEvents.java 2008-04-16 10:57:34 UTC (rev 19590)
@@ -0,0 +1,52 @@
+/*
+* JBoss Labs. http://labs.jboss.com/jbosslabs
+*
+* Copyright © 2008 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): Bob McWhirter, Przemyslaw Dej, Ryszard Kozmik,
+* Tomasz Szymanski, Adam Warski, Pawel Wrzeszcz
+*/
+
+package org.jboss.labs.events;
+
+import org.jboss.annotation.ejb.Producer;
+
+import java.util.EventListener;
+
+/**
+ * An interface which defines asynchronous(JMS calls) methods that will
+ * raise events informing about changes in project's structure.
+ *
+ * @author <a href="mailto:rkozmik at redhat.com">Ryszard Kozmik</a>
+ * @author Pawel Wrzeszcz
+ */
+ at Producer
+public interface AdminEvents extends EventListener {
+
+ public void newProjectRequest(String projectId, String projectName, String username);
+
+ public void projectRequestAccepted(String projectId, String projectName, String username);
+
+ public void projectRequestRejected(String projectId, String projectName, String username);
+
+ public void newJoinRequest(String projectId, String projectName, String username);
+
+ public void joinRequestAccepted(String projectId, String projectName, String username);
+
+ public void joinRequestRejected(String projectId, String projectName, String username);
+
+}
\ No newline at end of file
Deleted: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/events/ProjectEventsListener.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/events/ProjectEventsListener.java 2008-04-16 07:05:05 UTC (rev 19589)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/events/ProjectEventsListener.java 2008-04-16 10:57:34 UTC (rev 19590)
@@ -1,30 +0,0 @@
-/*
-* JBoss Labs. http://labs.jboss.com/jbosslabs
-*
-* Copyright © 2008 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): Bob McWhirter, Przemyslaw Dej, Ryszard Kozmik,
-* Tomasz Szymanski, Adam Warski, Pawel Wrzeszcz
-*/
-
-package org.jboss.labs.events;
-
-public interface ProjectEventsListener {
-
- public void updated ( Class clazz , Integer id );
-
-}
Modified: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/injection/LabsGuiceModule.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/injection/LabsGuiceModule.java 2008-04-16 07:05:05 UTC (rev 19589)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/injection/LabsGuiceModule.java 2008-04-16 10:57:34 UTC (rev 19590)
@@ -25,11 +25,12 @@
import com.google.inject.Binder;
import com.google.inject.Module;
import org.jboss.labs.auth.AuthenticationService;
+import org.jboss.labs.auth.RoleBinderService;
import org.jboss.labs.auth.UserService;
-import org.jboss.labs.auth.RoleBinderService;
import org.jboss.labs.auth.custom.CustomIDService;
+import org.jboss.labs.core.service.LicenseService;
import org.jboss.labs.core.service.ProjectService;
-import org.jboss.labs.core.service.LicenseService;
+import org.jboss.labs.events.service.EventsService;
import org.jboss.labs.foo.FooService;
public class LabsGuiceModule implements Module {
@@ -51,6 +52,8 @@
new JNDIProvider<LicenseService>("LicenseService/local"));
binder.bind(CustomIDService.class).toProvider(
new JNDIProvider<CustomIDService>("CustomIDServiceImpl/local"));
- }
+ binder.bind(EventsService.class).toProvider(
+ new JNDIProvider<EventsService>("EventsServiceBean/local"));
+ }
}
Copied: labs/jbosslabs/labs-3.0-build/services/events-service/src/main/java/org/jboss/labs/events/AdminEventsConsumer.java (from rev 19556, labs/jbosslabs/labs-3.0-build/services/events-service/src/main/java/org/jboss/labs/events/ProjectEventsConsumer.java)
===================================================================
--- labs/jbosslabs/labs-3.0-build/services/events-service/src/main/java/org/jboss/labs/events/AdminEventsConsumer.java (rev 0)
+++ labs/jbosslabs/labs-3.0-build/services/events-service/src/main/java/org/jboss/labs/events/AdminEventsConsumer.java 2008-04-16 10:57:34 UTC (rev 19590)
@@ -0,0 +1,121 @@
+/*
+* JBoss Labs. http://labs.jboss.com/jbosslabs
+*
+* Copyright © 2008 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): Bob McWhirter, Przemyslaw Dej, Ryszard Kozmik,
+* Tomasz Szymanski, Adam Warski, Pawel Wrzeszcz
+*/
+
+package org.jboss.labs.events;
+
+import org.jboss.annotation.ejb.Consumer;
+import org.jboss.labs.events.service.EventListenersStorageServiceInterface;
+
+import javax.ejb.ActivationConfigProperty;
+import javax.ejb.EJB;
+import java.util.List;
+
+/**
+ * Project events consumer which receives all events and propagets them to all listeners.
+ *
+ * @author <a href="mailto:rkozmik at redhat.com">Ryszard Kozmik</a>
+ * @author Pawel Wrzeszcz (pwrzeszcz [at] jboss . org)
+ */
+ at Consumer(activationConfig =
+ {
+ @ActivationConfigProperty(propertyName="destinationType", propertyValue="javax.jms.Queue"),
+ @ActivationConfigProperty(propertyName="destination", propertyValue="queue/adminEvents")
+ })
+public class AdminEventsConsumer implements AdminEvents {
+
+ @EJB EventListenersStorageServiceInterface storage;
+
+ public AdminEventsConsumer() {}
+
+ public void newProjectRequest(final String projectId, final String projectName, final String username) {
+ triggerListeners(
+ new Message() {
+ public void trigger(AdminEvents adminEvents) {
+ adminEvents.newProjectRequest(projectId, projectName, username);
+ }
+ }
+ );
+ }
+
+ public void projectRequestAccepted(final String projectId, final String projectName, final String username) {
+ triggerListeners(
+ new Message() {
+ public void trigger(AdminEvents adminEvents) {
+ adminEvents.projectRequestAccepted(projectId, projectName, username);
+ }
+ }
+ );
+ }
+
+ public void projectRequestRejected(final String projectId, final String projectName, final String username) {
+ triggerListeners(
+ new Message() {
+ public void trigger(AdminEvents adminEvents) {
+ adminEvents.projectRequestRejected(projectId, projectName, username);
+ }
+ }
+ );
+ }
+
+ public void newJoinRequest(final String projectId, final String projectName, final String username) {
+ triggerListeners(
+ new Message() {
+ public void trigger(AdminEvents adminEvents) {
+ adminEvents.newJoinRequest(projectId, projectName, username);
+ }
+ }
+ );
+ }
+
+ public void joinRequestAccepted(final String projectId, final String projectName, final String username) {
+ triggerListeners(
+ new Message() {
+ public void trigger(AdminEvents adminEvents) {
+ adminEvents.joinRequestAccepted(projectId, projectName, username);
+ }
+ }
+ );
+ }
+
+ public void joinRequestRejected(final String projectId, final String projectName, final String username) {
+ triggerListeners(
+ new Message() {
+ public void trigger(AdminEvents adminEvents) {
+ adminEvents.joinRequestRejected(projectId, projectName, username);
+ }
+ }
+ );
+ }
+
+ private void triggerListeners(Message message) {
+ @SuppressWarnings("unchecked")
+ List<AdminEvents> list = storage.findAllListeners (this.getClass().getInterfaces()[0]);
+ for ( AdminEvents listener : list ) {
+ message.trigger(listener);
+ }
+ }
+
+ private interface Message {
+ public void trigger(AdminEvents adminEvents);
+ }
+}
\ No newline at end of file
Modified: labs/jbosslabs/labs-3.0-build/services/project-service/src/main/java/org/jboss/labs/core/service/impl/ProjectServiceEventListenerBean.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/services/project-service/src/main/java/org/jboss/labs/core/service/impl/ProjectServiceEventListenerBean.java 2008-04-16 07:05:05 UTC (rev 19589)
+++ labs/jbosslabs/labs-3.0-build/services/project-service/src/main/java/org/jboss/labs/core/service/impl/ProjectServiceEventListenerBean.java 2008-04-16 10:57:34 UTC (rev 19590)
@@ -23,14 +23,14 @@
package org.jboss.labs.core.service.impl;
+import org.jboss.annotation.ejb.Management;
+import org.jboss.annotation.ejb.Service;
import org.jboss.labs.auth.RoleBinderService;
import org.jboss.labs.auth.UserService;
-import org.jboss.labs.events.service.EventsService;
import org.jboss.labs.events.ProjectEvents;
+import org.jboss.labs.events.service.EventsService;
import org.jboss.labs.exception.auth.NoSuchUserException;
import org.jboss.labs.exception.auth.NoSuchUserRoleException;
-import org.jboss.annotation.ejb.Management;
-import org.jboss.annotation.ejb.Service;
import org.jboss.logging.Logger;
import javax.ejb.EJB;
@@ -81,7 +81,6 @@
public void projectLeadAdded(String username, String projectId) {
log.info("Added project lead: " + username + " project: " + projectId);
- // TODO uncomment when auth start working properly
try {
roleBinderService.grantUserProjectSuperrole(
userService.getUserByLogin(username),
Modified: labs/jbosslabs/labs-3.0-build/views/admin/pom.xml
===================================================================
--- labs/jbosslabs/labs-3.0-build/views/admin/pom.xml 2008-04-16 07:05:05 UTC (rev 19589)
+++ labs/jbosslabs/labs-3.0-build/views/admin/pom.xml 2008-04-16 10:57:34 UTC (rev 19590)
@@ -230,6 +230,25 @@
</exclusion>
</exclusions>
</dependency>
+ <!-- JMS -->
+ <dependency>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-ejb-api</artifactId>
+ <version>4.2.0.GA</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-jaxws</artifactId>
+ <version>1.2.1.GA</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>jboss</groupId>
+ <artifactId>jbossall-client</artifactId>
+ <version>4.2.2.GA</version>
+ <scope>provided</scope>
+ </dependency>
<!-- Intellij IDEA -->
<dependency>
<groupId>javax.faces</groupId>
Added: labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/AdminEventsGenerator.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/AdminEventsGenerator.java (rev 0)
+++ labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/AdminEventsGenerator.java 2008-04-16 10:57:34 UTC (rev 19590)
@@ -0,0 +1,150 @@
+/*
+* JBoss Labs. http://labs.jboss.com/jbosslabs
+*
+* Copyright © 2008 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): Bob McWhirter, Przemyslaw Dej, Ryszard Kozmik,
+* Tomasz Szymanski, Adam Warski, Pawel Wrzeszcz
+*/
+
+package org.jboss.labs.admin;
+
+import org.jboss.ejb3.mdb.ProducerManager;
+import org.jboss.ejb3.mdb.ProducerObject;
+import org.jboss.labs.events.AdminEvents;
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.AutoCreate;
+import org.jboss.seam.annotations.Logger;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Scope;
+import org.jboss.seam.log.Log;
+
+import javax.jms.JMSException;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+
+
+/**
+ * This class generates admin events by executing asynchronous methods of AdminEvents producer.
+ *
+ * @author Pawel Wrzeszcz (pwrzeszcz [at] jboss . org)
+ * @author <a href="mailto:rkozmik at redhat.com">Ryszard Kozmik</a>
+ */
+ at Name("adminEventsGenerator")
+ at Scope(ScopeType.APPLICATION)
+ at AutoCreate
+public class AdminEventsGenerator implements AdminEvents {
+
+ @Logger private Log log;
+
+ public void newProjectRequest(final String projectId, final String projectName, final String username) {
+
+ send(
+ new Message() {
+ public void send(AdminEvents adminEvents) {
+ adminEvents.newProjectRequest(projectId, projectName, username);
+ }
+ }
+ );
+ }
+
+ public void projectRequestAccepted(final String projectId, final String projectName, final String username) {
+
+ send(
+ new Message() {
+ public void send(AdminEvents adminEvents) {
+ adminEvents.projectRequestAccepted(projectId, projectName, username);
+ }
+ }
+ );
+ }
+
+ public void projectRequestRejected(final String projectId, final String projectName, final String username) {
+
+ send(
+ new Message() {
+ public void send(AdminEvents adminEvents) {
+ adminEvents.projectRequestRejected(projectId, projectName, username);
+ }
+ }
+ );
+ }
+
+ public void newJoinRequest(final String projectId, final String projectName, final String username) {
+
+ send(
+ new Message() {
+ public void send(AdminEvents adminEvents) {
+ adminEvents.newJoinRequest(projectId, projectName, username);
+ }
+ }
+ );
+ }
+
+ public void joinRequestAccepted(final String projectId, final String projectName, final String username) {
+
+ send(
+ new Message() {
+ public void send(AdminEvents adminEvents) {
+ adminEvents.joinRequestAccepted(projectId, projectName, username);
+ }
+ }
+ );
+ }
+
+ public void joinRequestRejected(final String projectId, final String projectName, final String username) {
+
+ send(
+ new Message() {
+ public void send(AdminEvents adminEvents) {
+ adminEvents.joinRequestRejected(projectId, projectName, username);
+ }
+ }
+ );
+ }
+
+ private void send(Message m) {
+
+ AdminEvents adminEvents;
+ try {
+ InitialContext ctx = new InitialContext();
+ adminEvents = (AdminEvents)ctx.lookup(AdminEvents.class.getName());
+ } catch (NamingException e) {
+ log.warn("AdminEvents not found", e);
+ return;
+ }
+
+ ProducerObject po = (ProducerObject)adminEvents;
+ ProducerManager manager = po.getProducerManager();
+
+ try {
+ manager.connect(); // internally create a JMS connection
+ try{
+ m.send(adminEvents);
+ } finally {
+ manager.close(); // clean up the JMS connection
+ }
+ } catch (JMSException e) {
+ log.warn("JMS connection error", e);
+ }
+ }
+
+ private interface Message {
+ public void send(AdminEvents adminEvents);
+ }
+
+}
\ No newline at end of file
Added: labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/AdminEventsListener.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/AdminEventsListener.java (rev 0)
+++ labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/AdminEventsListener.java 2008-04-16 10:57:34 UTC (rev 19590)
@@ -0,0 +1,81 @@
+/*
+* JBoss Labs. http://labs.jboss.com/jbosslabs
+*
+* Copyright © 2008 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): Bob McWhirter, Przemyslaw Dej, Ryszard Kozmik,
+* Tomasz Szymanski, Adam Warski, Pawel Wrzeszcz
+*/
+
+package org.jboss.labs.admin;
+
+import com.google.inject.Inject;
+import org.jboss.labs.events.AdminEvents;
+import org.jboss.labs.events.service.EventsService;
+import org.jboss.labs.injection.seam.Guice;
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.*;
+import org.jboss.seam.log.Log;
+
+import java.io.Serializable;
+
+
+/**
+ * @author Pawel Wrzeszcz (pwrzeszcz [at] jboss . org)
+ *
+ * Listens for admin events. For testing purposes only.
+ */
+ at Name("adminEventsListener")
+ at Scope(ScopeType.APPLICATION)
+ at Startup
+ at Guice
+public class AdminEventsListener implements AdminEvents, Serializable {
+
+ @Logger private Log log;
+
+ @Inject EventsService eventsService;
+
+ @Create
+ public void onCreate() {
+ eventsService.addEventsListener(this.getClass(), this);
+ log.info("Registered for admin events");
+ }
+
+ public void newProjectRequest(String projectId, String projectName, String username) {
+ log.info("New project request");
+ }
+
+ public void projectRequestAccepted(String projectId, String projectName, String username) {
+ log.info("Project request accepted");
+ }
+
+ public void projectRequestRejected(String projectId, String projectName, String username) {
+ log.info("Project request rejected");
+ }
+
+ public void newJoinRequest(String projectId, String projectName, String username) {
+ log.info("New join project request");
+ }
+
+ public void joinRequestAccepted(String projectId, String projectName, String username) {
+ log.info("Join request accepted");
+ }
+
+ public void joinRequestRejected(String projectId, String projectName, String username) {
+ log.info("Join request rejected");
+ }
+}
\ No newline at end of file
Modified: labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/ClearspaceManager.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/ClearspaceManager.java 2008-04-16 07:05:05 UTC (rev 19589)
+++ labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/ClearspaceManager.java 2008-04-16 10:57:34 UTC (rev 19590)
@@ -68,7 +68,7 @@
user.getID(),
DOCUMENT_TYPE_ID,
null,
- "Main",
+ name,
description);
} catch (Exception e) {
log.error("Error creating Clearspace space and project page", e);
Modified: labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/Mailer.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/Mailer.java 2008-04-16 07:05:05 UTC (rev 19589)
+++ labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/Mailer.java 2008-04-16 10:57:34 UTC (rev 19590)
@@ -27,6 +27,7 @@
import org.jboss.seam.annotations.In;
import org.jboss.seam.annotations.Logger;
import org.jboss.seam.annotations.Name;
+import org.jboss.seam.faces.FacesMessages;
import org.jboss.seam.faces.Renderer;
import org.jboss.seam.log.Log;
@@ -37,14 +38,20 @@
@In(create=true) private Renderer renderer;
@Logger private Log log;
+ @In private FacesMessages facesMessages;
- public void send(String emailPage) {
+ public void send(String emailPage) {
+ send(emailPage, "Failed to send email");
+ }
+
+ public void send(String emailPage, String errorMsg) {
try {
renderer.render(emailPage);
log.info("Email sent.");
}
catch (Exception e) {
- log.warn(e);
+ facesMessages.add(errorMsg);
+ log.warn("Failed to send email: " + errorMsg, e);
}
}
Modified: labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/action/project/AcceptProject.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/action/project/AcceptProject.java 2008-04-16 07:05:05 UTC (rev 19589)
+++ labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/action/project/AcceptProject.java 2008-04-16 10:57:34 UTC (rev 19590)
@@ -86,6 +86,8 @@
return null;
}
+ facesMessages.add("Project '" + projectRequest.getName() + "' created");
+
clearspaceManager.createSpace(projectRequest.getProjectId(), projectRequest.getName());
cleanRequest(projectRequest);
@@ -99,8 +101,6 @@
conversation.end();
- facesMessages.add("Project '" + projectRequest.getName() + "' created successfully");
-
return Pages.REQUESTS_PAGE;
}
Modified: labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/action/project/Notifier.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/action/project/Notifier.java 2008-04-16 07:05:05 UTC (rev 19589)
+++ labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/action/project/Notifier.java 2008-04-16 10:57:34 UTC (rev 19590)
@@ -23,6 +23,7 @@
package org.jboss.labs.admin.action.project;
+import org.jboss.labs.admin.AdminEventsGenerator;
import org.jboss.labs.core.model.admin.ProjectRequest;
import org.jboss.seam.annotations.In;
import org.jboss.seam.annotations.Logger;
@@ -35,30 +36,39 @@
@In(create = true) private ProjectRequest projectRequest;
+ @In private AdminEventsGenerator adminEventsGenerator;
+
@Logger private Log log;
public void newRequest() {
log.info("New project request: " + projectRequest.getName());
+
+ adminEventsGenerator.newProjectRequest(projectRequest.getProjectId(),
+ projectRequest.getName(),
+ projectRequest.getUsername());
}
public void projectApproved() {
log.info("Project approved: " + projectRequest.getName());
+
+ adminEventsGenerator.projectRequestAccepted(projectRequest.getProjectId(),
+ projectRequest.getName(),
+ projectRequest.getUsername());
}
public void projectRejected() {
log.info("Project rejected: " + projectRequest.getName());
+
+ adminEventsGenerator.projectRequestRejected(projectRequest.getProjectId(),
+ projectRequest.getName(),
+ projectRequest.getUsername());
}
public void projectCreated() {
log.info("Project created: " + projectRequest.getName());
}
-
- public void createProjectFailed() {
-
- log.info("Create project failed: " + projectRequest.getName());
- }
}
\ No newline at end of file
More information about the jboss-svn-commits
mailing list