[jboss-svn-commits] JBL Code SVN: r17823 - in labs/jbosslabs/labs-3.0-build: authorization/src/main/java/org/jboss/labs and 9 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Jan 14 12:08:15 EST 2008


Author: szimano
Date: 2008-01-14 12:08:15 -0500 (Mon, 14 Jan 2008)
New Revision: 17823

Added:
   labs/jbosslabs/labs-3.0-build/authorization/src/main/java/org/jboss/labs/auth/
   labs/jbosslabs/labs-3.0-build/authorization/src/main/java/org/jboss/labs/auth/RoleBinderImpl.java
   labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/ServiceHelper.java
   labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/
   labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/RoleBinder.java
   labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/RoleList.java
   labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/exception/
   labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/exception/LabsException.java
   labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/exception/service/
   labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/exception/service/LabsServiceException.java
   labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/exception/service/LabsServiceResolveException.java
   labs/jbosslabs/labs-3.0-build/foo-service/src/main/java/org/jboss/labs/FooRoleList.java
Modified:
   labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/foo/FooService.java
   labs/jbosslabs/labs-3.0-build/foo-service/src/main/java/org/jboss/labs/FooServiceImpl.java
   labs/jbosslabs/labs-3.0-build/pom.xml
   labs/jbosslabs/labs-3.0-build/views/foo-view/src/main/java/org/jboss/labs/MyServlet.java
   labs/jbosslabs/labs-3.0-build/views/pom.xml
Log:
autorization stuff JBLAB-901

Added: labs/jbosslabs/labs-3.0-build/authorization/src/main/java/org/jboss/labs/auth/RoleBinderImpl.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/authorization/src/main/java/org/jboss/labs/auth/RoleBinderImpl.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/authorization/src/main/java/org/jboss/labs/auth/RoleBinderImpl.java	2008-01-14 17:08:15 UTC (rev 17823)
@@ -0,0 +1,24 @@
+package org.jboss.labs.auth;
+
+import javax.ejb.Local;
+import javax.ejb.Stateless;
+
+import org.apache.log4j.Logger;
+
+ at Stateless
+ at Local
+public class RoleBinderImpl implements RoleBinder {
+	
+	private final static Logger log = Logger.getLogger(RoleBinderImpl.class);
+
+	public <E extends Enum<E>> void bindRoles(E[] roleList, String serviceId) {
+		// TODO Auto-generated method stub
+		
+		for (E role : roleList) {
+			log.info("Role binded: "+role.toString());
+		}
+	}
+
+	
+
+}

Added: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/ServiceHelper.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/ServiceHelper.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/ServiceHelper.java	2008-01-14 17:08:15 UTC (rev 17823)
@@ -0,0 +1,18 @@
+package org.jboss.labs;
+
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+
+import org.jboss.labs.auth.RoleBinder;
+import org.jboss.labs.exception.service.LabsServiceResolveException;
+
+public class ServiceHelper {
+	public static RoleBinder getRoleBinder() throws LabsServiceResolveException {
+		try {
+			return (RoleBinder) new InitialContext()
+					.lookup("RoleBinderImpl/local");
+		} catch (NamingException e) {
+			throw new LabsServiceResolveException(e);
+		}
+	}
+}

Added: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/RoleBinder.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/RoleBinder.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/RoleBinder.java	2008-01-14 17:08:15 UTC (rev 17823)
@@ -0,0 +1,11 @@
+package org.jboss.labs.auth;
+
+/**
+ * Class that allows exposing role list for a service.
+ * 
+ * @author tomaszszymanski
+ * 
+ */
+public interface RoleBinder {
+	public <E extends Enum<E>> void bindRoles(E[] roleList, String serviceId);
+}

Added: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/RoleList.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/RoleList.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/RoleList.java	2008-01-14 17:08:15 UTC (rev 17823)
@@ -0,0 +1,6 @@
+package org.jboss.labs.auth;
+
+public enum RoleList {
+	ADMIN,
+	CONTRIBUTOR;
+}

Added: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/exception/LabsException.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/exception/LabsException.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/exception/LabsException.java	2008-01-14 17:08:15 UTC (rev 17823)
@@ -0,0 +1,22 @@
+package org.jboss.labs.exception;
+
+public class LabsException extends Exception {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	
+	public LabsException() {
+		super();
+	}
+	
+	public LabsException(String msg) {
+		super(msg);
+	}
+	
+	public LabsException(Throwable t) {
+		super(t);
+	}
+
+}

Added: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/exception/service/LabsServiceException.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/exception/service/LabsServiceException.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/exception/service/LabsServiceException.java	2008-01-14 17:08:15 UTC (rev 17823)
@@ -0,0 +1,24 @@
+package org.jboss.labs.exception.service;
+
+import org.jboss.labs.exception.LabsException;
+
+public class LabsServiceException extends LabsException {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	
+	public LabsServiceException() {
+		super();
+	}
+	
+	public LabsServiceException(String msg) {
+		super(msg);
+	}
+	
+	public LabsServiceException(Throwable t) {
+		super(t);
+	}
+
+}

Added: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/exception/service/LabsServiceResolveException.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/exception/service/LabsServiceResolveException.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/exception/service/LabsServiceResolveException.java	2008-01-14 17:08:15 UTC (rev 17823)
@@ -0,0 +1,21 @@
+package org.jboss.labs.exception.service;
+
+public class LabsServiceResolveException extends LabsServiceException {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+
+	public LabsServiceResolveException() {
+		super();
+	}
+	
+	public LabsServiceResolveException(String msg) {
+		super(msg);
+	}
+	
+	public LabsServiceResolveException(Throwable t) {
+		super(t);
+	}
+}

Modified: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/foo/FooService.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/foo/FooService.java	2008-01-14 16:51:50 UTC (rev 17822)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/foo/FooService.java	2008-01-14 17:08:15 UTC (rev 17823)
@@ -1,5 +1,5 @@
 package org.jboss.labs.foo;
 
 public interface FooService {
-	public String sayFoo();
+	public FooEntity sayFoo();
 }

Added: labs/jbosslabs/labs-3.0-build/foo-service/src/main/java/org/jboss/labs/FooRoleList.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/foo-service/src/main/java/org/jboss/labs/FooRoleList.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/foo-service/src/main/java/org/jboss/labs/FooRoleList.java	2008-01-14 17:08:15 UTC (rev 17823)
@@ -0,0 +1,6 @@
+package org.jboss.labs;
+
+public enum FooRoleList {
+	KALAFIOR,
+	KAPUSTA
+}

Modified: labs/jbosslabs/labs-3.0-build/foo-service/src/main/java/org/jboss/labs/FooServiceImpl.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/foo-service/src/main/java/org/jboss/labs/FooServiceImpl.java	2008-01-14 16:51:50 UTC (rev 17822)
+++ labs/jbosslabs/labs-3.0-build/foo-service/src/main/java/org/jboss/labs/FooServiceImpl.java	2008-01-14 17:08:15 UTC (rev 17823)
@@ -5,6 +5,8 @@
 import javax.persistence.EntityManager;
 import javax.persistence.PersistenceContext;
 
+import org.jboss.labs.auth.RoleBinder;
+import org.jboss.labs.exception.service.LabsServiceResolveException;
 import org.jboss.labs.foo.FooEntity;
 import org.jboss.labs.foo.FooService;
 
@@ -15,11 +17,23 @@
 	@PersistenceContext
 	private EntityManager em;
 
-	public String sayFoo() {
+	private RoleBinder roleBinder;
+	
+	public FooServiceImpl() {
+		try {
+			roleBinder = ServiceHelper.getRoleBinder();
+			roleBinder.bindRoles(FooRoleList.values(), FooServiceImpl.class.getName());
+		} catch (LabsServiceResolveException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+	}
+	
+	public FooEntity sayFoo() {
 		FooEntity en = new FooEntity();
 		em.persist(en);
 
-		return en.foo + "[" + en.id + "]";
+		return en;
 	}
 
 }

Modified: labs/jbosslabs/labs-3.0-build/pom.xml
===================================================================
--- labs/jbosslabs/labs-3.0-build/pom.xml	2008-01-14 16:51:50 UTC (rev 17822)
+++ labs/jbosslabs/labs-3.0-build/pom.xml	2008-01-14 17:08:15 UTC (rev 17823)
@@ -73,7 +73,14 @@
       			</snapshots>
     		</repository>
 	</repositories>
-
+	<dependencies>
+		<dependency>
+			<artifactId>log4j</artifactId>
+			<groupId>log4j</groupId>
+			<version>1.2.14</version>
+			<scope>provided</scope>
+		</dependency>
+	</dependencies>
 	<build>
 		<defaultGoal>install</defaultGoal>
 		<plugins>

Modified: labs/jbosslabs/labs-3.0-build/views/foo-view/src/main/java/org/jboss/labs/MyServlet.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/views/foo-view/src/main/java/org/jboss/labs/MyServlet.java	2008-01-14 16:51:50 UTC (rev 17822)
+++ labs/jbosslabs/labs-3.0-build/views/foo-view/src/main/java/org/jboss/labs/MyServlet.java	2008-01-14 17:08:15 UTC (rev 17823)
@@ -2,7 +2,6 @@
 
 import java.io.IOException;
 
-import javax.ejb.EJB;
 import javax.naming.InitialContext;
 import javax.naming.NamingException;
 import javax.servlet.ServletException;
@@ -31,7 +30,7 @@
 			.getWriter()
 			.println(
 					"<html><head><title>hello world</title></head><body><h1>Hello World[changed] !</h1>Foo says: "
-							+ fooService.sayFoo() + "<br/></body></html>");
+							+ "Foo["+ fooService.sayFoo().id + "]<br/></body></html>");
 		} catch (NamingException e) {
 			log(e.getMessage(), e);
 			resp

Modified: labs/jbosslabs/labs-3.0-build/views/pom.xml
===================================================================
--- labs/jbosslabs/labs-3.0-build/views/pom.xml	2008-01-14 16:51:50 UTC (rev 17822)
+++ labs/jbosslabs/labs-3.0-build/views/pom.xml	2008-01-14 17:08:15 UTC (rev 17823)
@@ -31,6 +31,12 @@
 	<version>1.0</version>
         <scope>provided</scope>
     </dependency>
+    <dependency>
+			<groupId>org.jboss.labs</groupId>
+			<artifactId>core-model</artifactId>
+			<version>1.0</version>
+			<scope>provided</scope>
+		</dependency>
 <dependency>                           
  <groupId>jboss</groupId>             
  <artifactId>jboss-ejb-api</artifactId>




More information about the jboss-svn-commits mailing list