com.opensymphony.user.provider.weblogic
Class WeblogicAccessProvider

java.lang.Object
  extended bycom.opensymphony.user.provider.weblogic.WeblogicProvider
      extended bycom.opensymphony.user.provider.weblogic.WeblogicAccessProvider
All Implemented Interfaces:
AccessProvider, java.io.Serializable, UserProvider

public class WeblogicAccessProvider
extends WeblogicProvider
implements AccessProvider

Provider to check group access based on weblogic's configured security groups. Required properties:

Optional properties: This currently is read-only because the only Authenticator I use (IPlanet) doesn't implement GroupEditorMBean nor UserEditorMBean If someone in the future wants to implement this functionality, you can (probably) just uncomment the code in the appropriate method and remove the "return false;". You will also have to set it up to loop through the all the UserEditorMBeans and all the GroupEditorMBeans.

Author:
Dave Brondsema
See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.opensymphony.user.provider.weblogic.WeblogicProvider
groupMemberListers, home, maxRecords, memberGroupListers, originalProperties, userPasswordEditors, userReaders
 
Constructor Summary
WeblogicAccessProvider()
           
 
Method Summary
 boolean addToGroup(java.lang.String username, java.lang.String groupname)
          Add user to group.
 boolean create(java.lang.String name)
          Create new Entity with given name.
 boolean handles(java.lang.String name)
          Determine whether this UserProvider implementation is responsible for handling this Entity.
 boolean inGroup(java.lang.String username, java.lang.String groupname)
          Find out whether given user is member of given group.
 java.util.List list()
          Returns List of names (Strings) of all Entities that can be accessed by this UserProvider If this UserProvider cannot retrieve a list of names, null is to be returned.
 java.util.List listGroupsContainingUser(java.lang.String username)
          List all groups that contain a user.
 java.util.List listUsersInGroup(java.lang.String groupname)
          List all users that are contained within a group.
 boolean remove(java.lang.String name)
          Remove Entity with given name.
 boolean removeFromGroup(java.lang.String username, java.lang.String groupname)
          Remove user from group.
 
Methods inherited from class com.opensymphony.user.provider.weblogic.WeblogicProvider
findHome, flushCaches, init, load, store
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.opensymphony.user.provider.UserProvider
flushCaches, init, load, store
 

Constructor Detail

WeblogicAccessProvider

public WeblogicAccessProvider()
Method Detail

addToGroup

public boolean addToGroup(java.lang.String username,
                          java.lang.String groupname)
Description copied from interface: AccessProvider
Add user to group.

Specified by:
addToGroup in interface AccessProvider
Returns:
Whether user was successfully added to group.

create

public boolean create(java.lang.String name)
Description copied from interface: UserProvider
Create new Entity with given name.

Specified by:
create in interface UserProvider
Returns:
Whether entity was successfully created.

handles

public boolean handles(java.lang.String name)
Description copied from interface: UserProvider
Determine whether this UserProvider implementation is responsible for handling this Entity.

Specified by:
handles in interface UserProvider

inGroup

public boolean inGroup(java.lang.String username,
                       java.lang.String groupname)
Description copied from interface: AccessProvider
Find out whether given user is member of given group.

Specified by:
inGroup in interface AccessProvider
Returns:
Whether user is member of group.

list

public java.util.List list()
Description copied from interface: UserProvider
Returns List of names (Strings) of all Entities that can be accessed by this UserProvider If this UserProvider cannot retrieve a list of names, null is to be returned. If there are no current Entities stored by this provider, an empty List is to be returned. The order of names returned can be determined by the UserProvider (it may or may not be relevant). This List should be immutable.

Specified by:
list in interface UserProvider

listGroupsContainingUser

public java.util.List listGroupsContainingUser(java.lang.String username)
Description copied from interface: AccessProvider
List all groups that contain a user.

Specified by:
listGroupsContainingUser in interface AccessProvider
Returns:
List containing Strings of groupnames. If no groups found, empty list should be returned. If feature not supported by UserProvider, null shall be returned. This List should be immutable.

listUsersInGroup

public java.util.List listUsersInGroup(java.lang.String groupname)
Description copied from interface: AccessProvider
List all users that are contained within a group.

Specified by:
listUsersInGroup in interface AccessProvider
Returns:
List containing Strings of usernames. If no users found, empty list should be returned. If feature not supported by UserProvider, null shall be returned. This List should be immutable.

remove

public boolean remove(java.lang.String name)
Description copied from interface: UserProvider
Remove Entity with given name.

Specified by:
remove in interface UserProvider
Returns:
Whether entity was successfully removed.

removeFromGroup

public boolean removeFromGroup(java.lang.String username,
                               java.lang.String groupname)
Description copied from interface: AccessProvider
Remove user from group.

Specified by:
removeFromGroup in interface AccessProvider
Returns:
Whether user was successfully removed from group.

See www.opensymphony.com for more information.