Update of 
/var/cvs/contributions/CMSContainer_Modules/community/src/java/com/finalist/cmsc/services/community/security
In directory 
james.mmbase.org:/tmp/cvs-serv20272/community/src/java/com/finalist/cmsc/services/community/security

Modified Files:
        AuthenticationService.java AuthenticationHibernateService.java 
Log Message:
findAuthoritiesForAuthentication


See also: 
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer_Modules/community/src/java/com/finalist/cmsc/services/community/security


Index: AuthenticationService.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer_Modules/community/src/java/com/finalist/cmsc/services/community/security/AuthenticationService.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- AuthenticationService.java  30 Jan 2008 10:00:42 -0000      1.3
+++ AuthenticationService.java  8 Feb 2008 15:16:34 -0000       1.4
@@ -107,10 +107,16 @@
     Authentication findAuthentication(String userId);
 
     /**
-     * Finds an authentication object for this userId
+     * Finds all authentications
      * 
-     * @param userId
-     * @return authentication
+     * @param authority
+     * @return list authentications
+     */
+    List<Authentication> findAuthenticationsForAuthority(String name);
+
+    /**
+     * Finds all authentications
+     * @return list authentications
      */
     List<Authentication> findAuthentications();
     


Index: AuthenticationHibernateService.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer_Modules/community/src/java/com/finalist/cmsc/services/community/security/AuthenticationHibernateService.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- AuthenticationHibernateService.java 8 Feb 2008 10:33:14 -0000       1.4
+++ AuthenticationHibernateService.java 8 Feb 2008 15:16:34 -0000       1.5
@@ -17,6 +17,8 @@
 import org.acegisecurity.providers.encoding.MessageDigestPasswordEncoder;
 import org.acegisecurity.providers.encoding.Md5PasswordEncoder;
 
+import java.util.ArrayList;
+import java.util.Iterator;
 import java.util.List;
 
 import com.finalist.cmsc.services.HibernateService;
@@ -136,19 +138,41 @@
 
        private String encodePassword(String password, String salt) {
                MessageDigestPasswordEncoder encoder = new Md5PasswordEncoder();
+// TODO Add salt to password encoder??                 
 //             return encoder.encodePassword(password, salt);
                return encoder.encodePassword(password, null);
        }
 
-       @Required
-       public void setAuthorityService(AuthorityService authorityService) {
-               this.authorityService = authorityService;
-       }
-
+       /** [EMAIL PROTECTED] */
        @Transactional(readOnly = true)
        public List<Authentication> findAuthentications() {
                Criteria criteria = 
getSession().createCriteria(Authentication.class);
+               return findAuthenticationListByCriteria(criteria);
+       }
+
+       /** [EMAIL PROTECTED] */
+       @Transactional(readOnly = true)
+       public List<Authentication> findAuthenticationsForAuthority(String 
name) {
+               Criteria criteria = getSession()
+                   .createCriteria(Authentication.class)
+                   .createCriteria("authorities")
+                   .add(Restrictions.eq("name", name));
+               return findAuthenticationListByCriteria(criteria);
+       }
+
+       @SuppressWarnings("unchecked")
+       private List<Authentication> findAuthenticationListByCriteria(Criteria 
criteria) {
+               List<Authentication> result = new ArrayList<Authentication>();
                List authenticationList = criteria.list();
-               return authenticationList;
+               for (Iterator iter = authenticationList.iterator(); 
iter.hasNext();) {
+                       Authentication authentication = 
(Authentication)iter.next();
+                       result.add(authentication);
+               }
+               return result;
+       }
+       
+       @Required
+       public void setAuthorityService(AuthorityService authorityService) {
+               this.authorityService = authorityService;
        }
 }
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to