[jboss-svn-commits] JBL Code SVN: r18108 - in labs/jbosslabs/labs-3.0-build: core/core-api/src/main/java/org/jboss/labs/injection and 2 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Jan 25 08:18:02 EST 2008
Author: wrzep
Date: 2008-01-25 08:18:02 -0500 (Fri, 25 Jan 2008)
New Revision: 18108
Added:
labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/injection/seam/
labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/injection/seam/Guice.java
labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/injection/seam/LabsSeamInjectionInterceptor.java
Modified:
labs/jbosslabs/labs-3.0-build/core/core-api/pom.xml
labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/ReviewProjectRequest.java
Log:
guice injection interceptor for seam JBLAB-904
Modified: labs/jbosslabs/labs-3.0-build/core/core-api/pom.xml
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/pom.xml 2008-01-25 12:03:51 UTC (rev 18107)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/pom.xml 2008-01-25 13:18:02 UTC (rev 18108)
@@ -36,5 +36,16 @@
<version>1.1_02</version>
<scope>provided</scope>
</dependency>
- </dependencies>
+ <dependency>
+ <groupId>org.jboss.seam</groupId>
+ <artifactId>jboss-seam</artifactId>
+ <version>2.0.1-SNAPSHOT</version>
+ <exclusions>
+ <exclusion>
+ <groupId>jboss</groupId>
+ <artifactId>javassist</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ </dependencies>
</project>
Added: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/injection/seam/Guice.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/injection/seam/Guice.java (rev 0)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/injection/seam/Guice.java 2008-01-25 13:18:02 UTC (rev 18108)
@@ -0,0 +1,17 @@
+package org.jboss.labs.injection.seam;
+
+import org.jboss.seam.annotations.intercept.Interceptors;
+
+import static java.lang.annotation.ElementType.TYPE;
+import java.lang.annotation.Retention;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+import java.lang.annotation.Target;
+
+/**
+ * @author Pawel Wrzeszcz (pwrzeszcz [at] jboss . org)
+ */
+ at Target(TYPE)
+ at Retention(RUNTIME)
+ at Interceptors(LabsSeamInjectionInterceptor.class)
+public @interface Guice {
+}
Added: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/injection/seam/LabsSeamInjectionInterceptor.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/injection/seam/LabsSeamInjectionInterceptor.java (rev 0)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/injection/seam/LabsSeamInjectionInterceptor.java 2008-01-25 13:18:02 UTC (rev 18108)
@@ -0,0 +1,27 @@
+package org.jboss.labs.injection.seam;
+
+import org.apache.log4j.Logger;
+import org.jboss.labs.injection.LabsInjection;
+import org.jboss.seam.annotations.intercept.AroundInvoke;
+import org.jboss.seam.annotations.intercept.Interceptor;
+import org.jboss.seam.intercept.InvocationContext;
+
+/**
+ * @author Pawel Wrzeszcz (pwrzeszcz [at] jboss . org)
+ */
+ at Interceptor
+public class LabsSeamInjectionInterceptor {
+
+ private static Logger log = Logger.getLogger(LabsSeamInjectionInterceptor.class);
+
+ @AroundInvoke
+ public Object checkLoggedIn(InvocationContext invocation) throws Exception {
+
+ log.info("Injecting members for: "
+ + invocation.getTarget().getClass().getName());
+
+ LabsInjection.getInjector().injectMembers(invocation.getTarget());
+
+ return invocation.proceed();
+ }
+}
Modified: labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/ReviewProjectRequest.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/ReviewProjectRequest.java 2008-01-25 12:03:51 UTC (rev 18107)
+++ labs/jbosslabs/labs-3.0-build/views/admin/src/main/java/org/jboss/labs/admin/ReviewProjectRequest.java 2008-01-25 13:18:02 UTC (rev 18108)
@@ -1,8 +1,10 @@
package org.jboss.labs.admin;
+import com.google.inject.Inject;
+import org.jboss.labs.core.service.ProjectService;
import org.jboss.labs.foo.FooService;
+import org.jboss.labs.injection.seam.Guice;
import org.jboss.seam.ScopeType;
-import org.jboss.seam.annotations.In;
import org.jboss.seam.annotations.Logger;
import org.jboss.seam.annotations.Name;
import org.jboss.seam.annotations.Out;
@@ -13,22 +15,23 @@
/**
* @author Pawel Wrzeszcz (pwrzeszcz [at] jboss . org)
*/
+
@Name("reviewProjectRequest")
+ at Guice
public class ReviewProjectRequest {
@Out(required = false, scope= ScopeType.CONVERSATION) private long tId;
@Out(required = false, scope= ScopeType.CONVERSATION) private ProjectRequest prjRequest;
- //@In("#{projectService}") private ProjectService projectService;
+ @Inject private FooService fooService;
- @In("#{fooService}") private FooService fooService;
+ @Inject private ProjectService projectService;
- @Logger
- private Log log;
+ @Logger private Log log;
public String select(Long taskId, ProjectRequest prjRequest) {
- log.info("ProjectService: " + " fooService: " + fooService);
+ log.info("ProjectService: " + projectService + " fooService: " + fooService);
this.tId = taskId;
this.prjRequest = prjRequest;
More information about the jboss-svn-commits
mailing list