rogerrut    2004/12/03 15:32:18

  Modified:    components/sso/src/java/org/apache/jetspeed/sso/impl
                        PersistenceBrokerSSOProvider.java
                        SSOPrincipalImpl.java
  Log:
  Fixed problem for RemotePrincipal which was not unique for a site
  
  Revision  Changes    Path
  1.7       +16 -7     
jakarta-jetspeed-2/components/sso/src/java/org/apache/jetspeed/sso/impl/PersistenceBrokerSSOProvider.java
  
  Index: PersistenceBrokerSSOProvider.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/components/sso/src/java/org/apache/jetspeed/sso/impl/PersistenceBrokerSSOProvider.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- PersistenceBrokerSSOProvider.java 1 Dec 2004 01:29:08 -0000       1.6
  +++ PersistenceBrokerSSOProvider.java 3 Dec 2004 23:32:18 -0000       1.7
  @@ -180,7 +180,7 @@
            }
            
            // Clear cache
  -         this.mapSite.clear();
  +         //this.mapSite.clear();
   
        }
   
  @@ -241,7 +241,7 @@
            }
            
            // Clear cache
  -         this.mapSite.clear();
  +       //  this.mapSite.clear();
        }
        
        /**
  @@ -301,7 +301,7 @@
                         }
                         
                         // Clear cache
  -                      this.mapSite.clear();
  +                     // this.mapSite.clear();
                
            }
        
  @@ -387,7 +387,9 @@
                while (itPrincipals.hasNext() && principal == null /*not found 
yet*/)
                {
                        SSOPrincipal tmp = (SSOPrincipal)itPrincipals.next();
  -                     if ( tmp != null && 
tmp.getFullPath().compareToIgnoreCase(fullPath) == 0)
  +                     if (             tmp != null 
  +                             && 
tmp.getFullPath().compareToIgnoreCase(fullPath) == 0
  +                             && tmp.getSiteID() == ssoSite.getSiteId())
                        {
                                // Found it stop iteration
                                principal = tmp;
  @@ -445,7 +447,9 @@
                while (ixPrincipals.hasNext())
                {
                        SSOPrincipal principal = 
(SSOPrincipal)ixPrincipals.next();
  -                     if ( principal != null && 
principal.getFullPath().compareToIgnoreCase(fullPath) == 0)
  +                     if (         principal != null 
  +                             && 
principal.getFullPath().compareToIgnoreCase(fullPath) == 0
  +                             && principal.getSiteID() == ssoSite.getSiteId())
                        {
                                // Found Principal -- extract remote principals 
                                return principal.getRemotePrincipals();
  @@ -470,7 +474,9 @@
                        while (itPrincipals.hasNext() && principal == null)
                        {
                                SSOPrincipal tmp  = 
(SSOPrincipal)itPrincipals.next();
  -                             if ( tmp != null && 
tmp.getFullPath().compareToIgnoreCase(fullPath) == 0)
  +                             if (             tmp != null 
  +                                    && 
tmp.getFullPath().compareToIgnoreCase(fullPath) == 0 
  +                                    && tmp.getSiteID() == 
ssoSite.getSiteId())
                                        principal = tmp;        // Found 
existing entry
                        }
                }
  @@ -493,6 +499,8 @@
                                principal = (SSOPrincipal) itPrincipals.next();
                                try
                                        {
  +                                 // Set the Site ID for this principal
  +                                 principal.setSiteID(ssoSite.getSiteId());
                                        ssoSite.addPrincipal(principal);
                                        }
                                catch (SSOException ssoex)
  @@ -544,7 +552,8 @@
                        while (itPrincipals.hasNext())
                        {
                                SSOPrincipal tmp = 
(SSOPrincipal)itPrincipals.next();
  -                             if ( 
tmp.getFullPath().compareToIgnoreCase(fullPath) == 0)
  +                             if (         
tmp.getFullPath().compareToIgnoreCase(fullPath) == 0
  +                                     && tmp.getSiteID() == site.getSiteId())
                                {
                                        // Found -- get the remotePrincipal
                                        Collection collRemotePrincipals = 
tmp.getRemotePrincipals() ;
  
  
  
  1.3       +15 -0     
jakarta-jetspeed-2/components/sso/src/java/org/apache/jetspeed/sso/impl/SSOPrincipalImpl.java
  
  Index: SSOPrincipalImpl.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/components/sso/src/java/org/apache/jetspeed/sso/impl/SSOPrincipalImpl.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- SSOPrincipalImpl.java     30 Nov 2004 18:19:10 -0000      1.2
  +++ SSOPrincipalImpl.java     3 Dec 2004 23:32:18 -0000       1.3
  @@ -59,6 +59,9 @@
           /** Remote principals for Principal */
           private Collection remotePrincipals;
           
  +        /** SIteID for Remote principal */
  +        private int siteID;
  +        
   
           /**
            * <p>
  @@ -251,5 +254,17 @@
        public void setRemotePrincipals(Collection remotePrincipals) {
                this.remotePrincipals = remotePrincipals;
        }
  +    /**
  +     * @return Returns the siteID.
  +     */
  +    public int getSiteID() {
  +        return siteID;
  +    }
  +    /**
  +     * @param siteID The siteID to set.
  +     */
  +    public void setSiteID(int siteID) {
  +        this.siteID = siteID;
  +    }
   }
   
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to