[jboss-svn-commits] JBL Code SVN: r18175 - in labs/jbosslabs/labs-3.0-build: core/core-api/src/main/java/org/jboss/labs/auth and 11 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Jan 28 12:53:41 EST 2008


Author: szimano
Date: 2008-01-28 12:53:41 -0500 (Mon, 28 Jan 2008)
New Revision: 18175

Added:
   labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/AuthID.java
   labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/Binding.java
   labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/ProjectID.java
   labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/Service.java
   labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/ServiceRole.java
   labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/UserRole.java
   labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/RoleBinderServiceImpl.java
   labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/UserServiceImpl.java
Removed:
   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/RoleList.java
   labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/Role.java
   labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/RoleBinderImpl.java
Modified:
   labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/AuthenticationService.java
   labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/RoleBinderService.java
   labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/UserService.java
   labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/custom/CustomIDProvider.java
   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-model/src/main/java/org/jboss/labs/core/model/auth/CustomID.java
   labs/jbosslabs/labs-3.0-build/labs-archetypes/labs-service-archetype/src/main/resources/archetype-resources/src/main/resources/META-INF/persistence.xml
   labs/jbosslabs/labs-3.0-build/labs-archetypes/labs-service-ear-archetype/src/main/resources/archetype-resources/ejb/src/main/resources/META-INF/persistence.xml
   labs/jbosslabs/labs-3.0-build/services/authorization/pom.xml
   labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/AuthenticationServiceImpl.java
   labs/jbosslabs/labs-3.0-build/services/authorization/src/main/resources/META-INF/persistence.xml
   labs/jbosslabs/labs-3.0-build/services/authorization/uml/authorization_bindings.zuml
   labs/jbosslabs/labs-3.0-build/services/authorization/uml/authorization_bindings.zuml.bak.0
   labs/jbosslabs/labs-3.0-build/services/foo-service/src/main/java/org/jboss/labs/FooServiceImpl.java
   labs/jbosslabs/labs-3.0-build/views/foo-view/src/main/java/org/jboss/labs/MyServlet.java
Log:
authorization entities JBLAB-901

Deleted: 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	2008-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/ServiceHelper.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -1,20 +0,0 @@
-package org.jboss.labs;
-
-import javax.naming.InitialContext;
-import javax.naming.NamingException;
-
-import org.jboss.labs.auth.RoleBinderService;
-import org.jboss.labs.exception.service.LabsServiceResolveException;
-
-public class ServiceHelper {
-
-	public static RoleBinderService getRoleBinder()
-			throws LabsServiceResolveException {
-		try {
-			return (RoleBinderService) new InitialContext()
-					.lookup("RoleBinderImpl/local");
-		} catch (NamingException e) {
-			throw new LabsServiceResolveException(e);
-		}
-	}
-}

Modified: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/AuthenticationService.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/AuthenticationService.java	2008-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/AuthenticationService.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -4,8 +4,8 @@
 
 public interface AuthenticationService {
 	
-	public <E extends Enum<E>> boolean isAllowed(Principal user, E serverRole, String serviceId);
+	public <E extends Enum<E>> boolean isAllowed(Principal user, E serviceRole);
 	
-	public boolean isAllowed(Principal user, String customId, String serviceId);
+	public <E extends Enum<E>> boolean isAllowed(Principal user, E serviceRole, String customId);
 
 }

Modified: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/RoleBinderService.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/RoleBinderService.java	2008-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/RoleBinderService.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -1,7 +1,7 @@
 package org.jboss.labs.auth;
 
 import org.jboss.labs.auth.custom.CustomIDProvider;
-import org.jboss.labs.core.model.auth.Role;
+import org.jboss.labs.core.model.auth.UserRole;
 /**
  * Class that allows exposing role list for a service.
  * 
@@ -14,11 +14,11 @@
 	 * @param serviceRoleList
 	 * @param serviceId
 	 */
-	public <E extends Enum<E>> void exposeServiceRoles(E[] serviceRoleList, String serviceId);
+	public <E extends Enum<E>> void exposeServiceRoles(E[] serviceRoleList);
 	
-	public void registerCustomIDProvider(CustomIDProvider provider, String serviceId);
+	public <E extends Enum<E>> void exposeServiceRolesAndRegisterCustomIDProvider(E[] serviceRoleList, CustomIDProvider provider);
 	
-	public <E extends Enum<E>> void bindRolesWithProject(E serviceRole, Role role, String projectId, String serviceId);
+	public <E extends Enum<E>> void bindRolesWithProject(E serviceRole, UserRole role, String projectId);
 	
-	public <E extends Enum<E>> void bindRolesWithId(E serviceRole, Role role, String customId, String serviceId);
+	public <E extends Enum<E>> void bindRolesWithId(E serviceRole, UserRole role, String customId);
 }

Deleted: 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	2008-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/RoleList.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -1,6 +0,0 @@
-package org.jboss.labs.auth;
-
-public enum RoleList {
-	ADMIN,
-	CONTRIBUTOR;
-}

Modified: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/UserService.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/UserService.java	2008-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/UserService.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -3,15 +3,15 @@
 import java.security.Principal;
 import java.util.Set;
 
-import org.jboss.labs.core.model.auth.Role;
+import org.jboss.labs.core.model.auth.UserRole;
 import org.jboss.labs.exception.auth.NoSuchRoleForUserException;
 
 public interface UserService {
 	public Principal getUserByLogin(String login);
 	
-	public Set<Role> getRolesForUser(Principal p);
-	public Set<Role> getRolesForUser(String login);
+	public Set<UserRole> getRolesForUser(Principal p);
+	public Set<UserRole> getRolesForUser(String login);
 	
-	public void bindRoleToUser(Principal p, Role r);
-	public void removeRoleFromUser(Principal p, Role r) throws NoSuchRoleForUserException;
+	public void bindRoleToUser(Principal p, UserRole r);
+	public void removeRoleFromUser(Principal p, UserRole r) throws NoSuchRoleForUserException;
 }

Modified: labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/custom/CustomIDProvider.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/custom/CustomIDProvider.java	2008-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/auth/custom/CustomIDProvider.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -15,4 +15,21 @@
 	 * @return Returns set of customIDs available in this project
 	 */
 	public Set<CustomID> getCustomIDs();
+
+	/**
+	 * Gives authorization service set of new IDs.
+	 * 
+	 * @param newIds
+	 *            New IDs available in in current service.
+	 */
+	public void addCustomIDs(Set<CustomID> newIds);
+
+	/**
+	 * Tells authorization service to remove set of IDs. This won't remove role
+	 * bindings for this ID but will make them unavailable for adding new roles.
+	 * 
+	 * @param ids
+	 *            IDs that are no longer available.
+	 */
+	public void removeCustomIDs(Set<CustomID> ids);
 }

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-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/core/core-api/src/main/java/org/jboss/labs/injection/LabsGuiceModule.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -2,8 +2,8 @@
 
 import com.google.inject.Binder;
 import com.google.inject.Module;
-import com.google.inject.TypeLiteral;
 import org.jboss.labs.auth.AuthenticationService;
+import org.jboss.labs.auth.UserService;
 import org.jboss.labs.auth.RoleBinderService;
 import org.jboss.labs.core.service.ProjectService;
 import org.jboss.labs.foo.FooService;
@@ -12,9 +12,10 @@
 
 	public void configure(Binder binder) {
 		binder.bind(FooService.class).toProvider(new JNDIProvider<FooService>("FooServiceImpl/local"));
-		binder.bind(RoleBinderService.class).toProvider( new JNDIProvider<RoleBinderService>("RoleBinderImpl/local"));
+		binder.bind(RoleBinderService.class).toProvider( new JNDIProvider<RoleBinderService>("RoleBinderServiceImpl/local"));
 		binder.bind(AuthenticationService.class).toProvider(new JNDIProvider<AuthenticationService>("AuthenticationServiceImpl/local"));
 	    binder.bind(ProjectService.class).toProvider(new JNDIProvider<ProjectService>("ProjectService/local"));
+	    binder.bind(UserService.class).toProvider(new JNDIProvider<UserService>("UserServiceImpl/local"));
     }
 
 }

Added: labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/AuthID.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/AuthID.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/AuthID.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -0,0 +1,17 @@
+package org.jboss.labs.core.model.auth;
+
+import javax.persistence.Entity;
+import javax.persistence.Id;
+/**
+ * 
+ * 
+ */
+ at Entity
+public abstract class AuthID {
+	@Id
+	protected String id;
+	
+	public String getId() {
+		return id;
+	}
+ }

Added: labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/Binding.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/Binding.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/Binding.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -0,0 +1,65 @@
+package org.jboss.labs.core.model.auth;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.ManyToOne;
+
+/**
+ * 
+ * 
+ */
+ at Entity
+public class Binding {
+	
+	@Id @GeneratedValue
+	private long binderId;
+	
+	@ManyToOne
+	private AuthID authId;
+
+	@ManyToOne
+	private UserRole userRole;
+
+	@ManyToOne
+	private ServiceRole serviceRole;
+
+	@ManyToOne
+	public Service service;
+
+	public AuthID getAuthId() {
+		return authId;
+	}
+
+	public void setAuthId(AuthID authId) {
+		this.authId = authId;
+	}
+
+	public UserRole getUserRole() {
+		return userRole;
+	}
+
+	public void setUserRole(UserRole userRole) {
+		this.userRole = userRole;
+	}
+
+	public ServiceRole getServiceRole() {
+		return serviceRole;
+	}
+
+	public void setServiceRole(ServiceRole serviceRole) {
+		this.serviceRole = serviceRole;
+	}
+
+	public Service getService() {
+		return service;
+	}
+
+	public void setService(Service service) {
+		this.service = service;
+	}
+
+	public long getBinderId() {
+		return binderId;
+	}
+}

Modified: labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/CustomID.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/CustomID.java	2008-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/CustomID.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -12,21 +12,18 @@
  */
 
 @Entity
-public class CustomID implements Comparable<CustomID> {
-	@Id
-	private String customID;
+public class CustomID extends AuthID implements Comparable<CustomID> {
 
 	private String description;
+	
+	private Class<? extends Enum<?>> enumClass;
 
-	public CustomID(String customID, String description) {
-		this.customID = customID;
+	public <E extends Enum<E>> CustomID(String customID, String description, E serviceRole) {
+		this.id = customID;
 		this.description = description;
+		enumClass = serviceRole.getDeclaringClass();
 	}
 
-	public String getCustomID() {
-		return customID;
-	}
-
 	public String getDescription() {
 		return description;
 	}

Added: labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/ProjectID.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/ProjectID.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/ProjectID.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -0,0 +1,15 @@
+package org.jboss.labs.core.model.auth;
+
+import javax.persistence.Entity;
+
+/**
+ * 
+ * 
+ */
+ at Entity
+public class ProjectID extends AuthID {
+	
+	public ProjectID(String projectID) {
+		this.id = projectID;
+	}
+ }

Deleted: labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/Role.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/Role.java	2008-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/Role.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -1,21 +0,0 @@
-package org.jboss.labs.core.model.auth;
-
-import javax.persistence.Entity;
-import javax.persistence.Id;
-
- at Entity
-public class Role {
-	@Id
-	private String id;
-	
-	private String description;
-
-	public String getDescription() {
-		return description;
-	}
-
-	public void setDescription(String description) {
-		this.description = description;
-	}
-
-}

Added: labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/Service.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/Service.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/Service.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -0,0 +1,52 @@
+package org.jboss.labs.core.model.auth;
+
+import java.util.Set;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.OneToMany;
+
+/**
+ * 
+ * 
+ */
+ at Entity
+public class Service {
+
+	@Id @GeneratedValue
+	private long id;
+
+	@OneToMany
+	private Set<ServiceRole> serviceRoles;
+
+	@OneToMany
+	private Set<Binding> bindings;
+
+	@OneToMany
+	private Set<UserRole> globalRoles;
+
+	public Set<ServiceRole> getServiceRoles() {
+		return serviceRoles;
+	}
+
+	public void setServiceRoles(Set<ServiceRole> serviceRoles) {
+		this.serviceRoles = serviceRoles;
+	}
+
+	public Set<Binding> getBindings() {
+		return bindings;
+	}
+
+	public void setBindings(Set<Binding> bindings) {
+		this.bindings = bindings;
+	}
+
+	public Set<UserRole> getGlobalRoles() {
+		return globalRoles;
+	}
+
+	public long getId() {
+		return id;
+	}
+}

Added: labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/ServiceRole.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/ServiceRole.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/ServiceRole.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -0,0 +1,23 @@
+package org.jboss.labs.core.model.auth;
+
+import javax.persistence.Entity;
+import javax.persistence.Id;
+
+/**
+ * 
+ * 
+ */
+ at Entity
+public class ServiceRole {
+	
+	@Id
+	private String id;
+
+	public String getId() {
+		return id;
+	}
+	
+	public ServiceRole(String id) {
+		this.id = id;
+	}
+ }

Copied: labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/UserRole.java (from rev 18174, labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/Role.java)
===================================================================
--- labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/UserRole.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/core/core-model/src/main/java/org/jboss/labs/core/model/auth/UserRole.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -0,0 +1,21 @@
+package org.jboss.labs.core.model.auth;
+
+import javax.persistence.Entity;
+import javax.persistence.Id;
+
+ at Entity
+public class UserRole {
+	@Id
+	private String id;
+	
+	private String description;
+
+	public String getDescription() {
+		return description;
+	}
+
+	public void setDescription(String description) {
+		this.description = description;
+	}
+
+}

Modified: labs/jbosslabs/labs-3.0-build/labs-archetypes/labs-service-archetype/src/main/resources/archetype-resources/src/main/resources/META-INF/persistence.xml
===================================================================
--- labs/jbosslabs/labs-3.0-build/labs-archetypes/labs-service-archetype/src/main/resources/archetype-resources/src/main/resources/META-INF/persistence.xml	2008-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/labs-archetypes/labs-service-archetype/src/main/resources/archetype-resources/src/main/resources/META-INF/persistence.xml	2008-01-28 17:53:41 UTC (rev 18175)
@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <persistence>
-        <persistence-unit name="property_persistance">
-                <jta-data-source>java:/DefaultDS</jta-data-source>
+        <persistence-unit name="${artifactId}_model">
+                <jta-data-source>java:/LabsDS</jta-data-source>
                 <properties>
-                        <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect" />
+                        <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect" />
                         <property name="hibernate.hbm2ddl.auto" value="update" />
                 </properties>
                 <!-- SPECIFY ENTITY CLASSES -->

Modified: labs/jbosslabs/labs-3.0-build/labs-archetypes/labs-service-ear-archetype/src/main/resources/archetype-resources/ejb/src/main/resources/META-INF/persistence.xml
===================================================================
--- labs/jbosslabs/labs-3.0-build/labs-archetypes/labs-service-ear-archetype/src/main/resources/archetype-resources/ejb/src/main/resources/META-INF/persistence.xml	2008-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/labs-archetypes/labs-service-ear-archetype/src/main/resources/archetype-resources/ejb/src/main/resources/META-INF/persistence.xml	2008-01-28 17:53:41 UTC (rev 18175)
@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <persistence>
-        <persistence-unit name="property_persistance">
-                <jta-data-source>java:/DefaultDS</jta-data-source>
+        <persistence-unit name="${artifactId}_model">
+                <jta-data-source>java:/LabsDS</jta-data-source>
                 <properties>
-                        <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect" />
+                        <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect" />
                         <property name="hibernate.hbm2ddl.auto" value="update" />
                 </properties>
                 <!-- SPECIFY ENTITY CLASSES -->

Modified: labs/jbosslabs/labs-3.0-build/services/authorization/pom.xml
===================================================================
--- labs/jbosslabs/labs-3.0-build/services/authorization/pom.xml	2008-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/services/authorization/pom.xml	2008-01-28 17:53:41 UTC (rev 18175)
@@ -42,6 +42,24 @@
 			<version>4.2.0.GA</version>
 			<scope>provided</scope>
 		</dependency>
+		<dependency>
+			<groupId>josso</groupId>
+			<artifactId>josso</artifactId>
+			<version>1.5</version>
+			<scope>provided</scope>
+		</dependency>
+		<dependency>
+			<groupId>jboss.jbossws</groupId>
+			<artifactId>jboss-jaxrpc</artifactId>
+			<version>1.0.4.GA</version>
+			<scope>provided</scope>
+		</dependency>
+		<dependency>
+			<groupId>org.apache.axis</groupId>
+			<artifactId>axis</artifactId>
+			<version>1.4</version>
+			<scope>provided</scope>
+		</dependency>
 	</dependencies>
 	<build>
 		<plugins>

Modified: labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/AuthenticationServiceImpl.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/AuthenticationServiceImpl.java	2008-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/AuthenticationServiceImpl.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -11,14 +11,16 @@
 @Stateless
 public class AuthenticationServiceImpl implements AuthenticationService {
 
-	public <E extends Enum<E>> boolean isAllowed(Principal user, E serverRole, String serviceId) {
+	public <E extends Enum<E>> boolean isAllowed(Principal user, E serviceRole) {
 		// TODO Auto-generated method stub
 		return false;
 	}
 
-	public boolean isAllowed(Principal user, String customId, String serviceId) {
+	public <E extends Enum<E>> boolean isAllowed(Principal user, E serviceRole,
+			String customId) {
 		// TODO Auto-generated method stub
 		return false;
 	}
 
+
 }

Deleted: labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/RoleBinderImpl.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/RoleBinderImpl.java	2008-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/RoleBinderImpl.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -1,43 +0,0 @@
-package org.jboss.labs.auth.impl;
-
-import javax.ejb.Local;
-import javax.ejb.Stateless;
-
-import org.apache.log4j.Logger;
-import org.jboss.labs.auth.RoleBinderService;
-import org.jboss.labs.auth.custom.CustomIDProvider;
-import org.jboss.labs.core.model.auth.Role;
-
- at Stateless
- at Local
-public class RoleBinderImpl implements RoleBinderService {
-	
-	private final static Logger log = Logger.getLogger(RoleBinderImpl.class);
-
-	public <E extends Enum<E>> void exposeServiceRoles(E[] roleList, String serviceId) {
-		// TODO Auto-generated method stub
-		
-		for (E role : roleList) {
-			log.info("Role binded: "+role.toString());
-		}
-	}
-
-	public void registerCustomIDProvider(CustomIDProvider provider,
-			String serviceId) {
-		// TODO Auto-generated method stub
-		
-	}
-
-	public <E extends Enum<E>> void bindRolesWithId(E serviceRole, Role role, String customId,
-			String serviceId) {
-		// TODO Auto-generated method stub
-		
-	}
-
-	public <E extends Enum<E>> void bindRolesWithProject(E serviceRole, Role role,
-			String projectId, String serviceId) {
-		// TODO Auto-generated method stub
-		
-	}
-
-}

Copied: labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/RoleBinderServiceImpl.java (from rev 18174, labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/RoleBinderImpl.java)
===================================================================
--- labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/RoleBinderServiceImpl.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/RoleBinderServiceImpl.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -0,0 +1,40 @@
+package org.jboss.labs.auth.impl;
+
+import javax.ejb.Local;
+import javax.ejb.Stateless;
+
+import org.apache.log4j.Logger;
+import org.jboss.labs.auth.RoleBinderService;
+import org.jboss.labs.auth.custom.CustomIDProvider;
+import org.jboss.labs.core.model.auth.UserRole;
+
+ at Stateless
+ at Local
+public class RoleBinderServiceImpl implements RoleBinderService {
+	
+	private final static Logger log = Logger.getLogger(RoleBinderServiceImpl.class);
+
+	public <E extends Enum<E>> void bindRolesWithId(E serviceRole, UserRole role,
+			String customId) {
+		// TODO Auto-generated method stub
+		
+	}
+
+	public <E extends Enum<E>> void bindRolesWithProject(E serviceRole,
+			UserRole role, String projectId) {
+		// TODO Auto-generated method stub
+		
+	}
+
+	public <E extends Enum<E>> void exposeServiceRoles(E[] serviceRoleList) {
+		// TODO Auto-generated method stub
+		
+	}
+
+	public <E extends Enum<E>> void exposeServiceRolesAndRegisterCustomIDProvider(
+			E[] serviceRoleList, CustomIDProvider provider) {
+		// TODO Auto-generated method stub
+		
+	}
+
+}

Added: labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/UserServiceImpl.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/UserServiceImpl.java	                        (rev 0)
+++ labs/jbosslabs/labs-3.0-build/services/authorization/src/main/java/org/jboss/labs/auth/impl/UserServiceImpl.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -0,0 +1,78 @@
+package org.jboss.labs.auth.impl;
+
+import java.rmi.RemoteException;
+import java.security.Principal;
+import java.util.Set;
+
+import javax.annotation.PostConstruct;
+import javax.ejb.Local;
+import javax.ejb.Stateless;
+import javax.xml.rpc.ServiceException;
+
+import org.apache.log4j.Logger;
+import org.jboss.labs.auth.UserService;
+import org.jboss.labs.core.model.auth.UserRole;
+import org.jboss.labs.exception.auth.NoSuchRoleForUserException;
+import org.josso.gateway.identity.service.ws.impl.NoSuchUserException;
+import org.josso.gateway.identity.service.ws.impl.SSOIdentityException;
+import org.josso.gateway.identity.service.ws.impl.SSOIdentityManager;
+import org.josso.gateway.identity.service.ws.impl.SSOIdentityManagerServiceLocator;
+
+ at Stateless
+ at Local
+public class UserServiceImpl implements UserService {
+
+	private SSOIdentityManager identityManager;
+
+	private final static Logger log = Logger.getLogger(UserServiceImpl.class);
+
+	@PostConstruct
+	public void init() {
+		try {
+			identityManager = new SSOIdentityManagerServiceLocator()
+					.getSSOIdentityManager();
+
+			log.info("identityManager (szimano)= " + identityManager.findUser("szimano").getName());
+
+		} catch (ServiceException e) {
+			log.error("No identityManager", e);
+			throw new RuntimeException("Couldn't access identity manager", e);
+		} catch (NoSuchUserException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		} catch (SSOIdentityException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		} catch (RemoteException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+	}
+
+	public void bindRoleToUser(Principal p, UserRole r) {
+		// TODO Auto-generated method stub
+
+	}
+
+	public Set<UserRole> getRolesForUser(Principal p) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public Set<UserRole> getRolesForUser(String login) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public Principal getUserByLogin(String login) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public void removeRoleFromUser(Principal p, UserRole r)
+			throws NoSuchRoleForUserException {
+		// TODO Auto-generated method stub
+
+	}
+
+}

Modified: labs/jbosslabs/labs-3.0-build/services/authorization/src/main/resources/META-INF/persistence.xml
===================================================================
--- labs/jbosslabs/labs-3.0-build/services/authorization/src/main/resources/META-INF/persistence.xml	2008-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/services/authorization/src/main/resources/META-INF/persistence.xml	2008-01-28 17:53:41 UTC (rev 18175)
@@ -1,14 +1,18 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <persistence>
-        <persistence-unit name="property_persistance">
-                <jta-data-source>java:/DefaultDS</jta-data-source>
+        <persistence-unit name="auth_model">
+                <jta-data-source>java:/LabsDS</jta-data-source>
                 <properties>
-                        <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect" />
+                        <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect" />
                         <property name="hibernate.hbm2ddl.auto" value="update" />
                 </properties>
-                <!-- SPECIFY ENTITY CLASSES -->
-                
-                <!-- <class>org.jboss.labs.foo.FooEntity</class>  -->
+                <class>org.jboss.labs.core.model.auth.AuthID</class>
+                <class>org.jboss.labs.core.model.auth.Binding</class>
+                <class>org.jboss.labs.core.model.auth.CustomID</class>
+                <class>org.jboss.labs.core.model.auth.ProjectID</class>
+                <class>org.jboss.labs.core.model.auth.Service</class>
+                <class>org.jboss.labs.core.model.auth.ServiceRole</class>
+                <class>org.jboss.labs.core.model.auth.UserRole</class>
         </persistence-unit>
 </persistence>
 

Modified: labs/jbosslabs/labs-3.0-build/services/authorization/uml/authorization_bindings.zuml
===================================================================
(Binary files differ)

Modified: labs/jbosslabs/labs-3.0-build/services/authorization/uml/authorization_bindings.zuml.bak.0
===================================================================
(Binary files differ)

Modified: labs/jbosslabs/labs-3.0-build/services/foo-service/src/main/java/org/jboss/labs/FooServiceImpl.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/services/foo-service/src/main/java/org/jboss/labs/FooServiceImpl.java	2008-01-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/services/foo-service/src/main/java/org/jboss/labs/FooServiceImpl.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -34,7 +34,7 @@
 	
 	@PostConstruct
 	public void contructor() {
-		roleBinder.exposeServiceRoles(FooRoleList.values(), FooServiceImpl.class.getName());
+		roleBinder.exposeServiceRoles(FooRoleList.values());
 		log.info(roleBinderInject);
 	}
 	

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-28 13:30:21 UTC (rev 18174)
+++ labs/jbosslabs/labs-3.0-build/views/foo-view/src/main/java/org/jboss/labs/MyServlet.java	2008-01-28 17:53:41 UTC (rev 18175)
@@ -2,6 +2,7 @@
 
 import com.google.inject.Inject;
 import org.apache.log4j.Logger;
+import org.jboss.labs.auth.UserService;
 import org.jboss.labs.foo.FooService;
 import org.jboss.labs.servlet.LabsHttpServlet;
 
@@ -20,6 +21,8 @@
 	@Inject
 	private FooService fooService;
 	
+	@Inject UserService userService;
+	
 	private static final Logger log = Logger.getLogger(MyServlet.class);
 
 	@Override
@@ -36,6 +39,8 @@
 							+ "<br/>");
 		}
 
+		userService.bindRoleToUser(null, null);
+		
 		resp.getWriter().println(
 				"Foo says: " + "Foo[" + fooService.sayFoo().id
 						+ "]<br/></body></html>");




More information about the jboss-svn-commits mailing list