com.sun.mail.imap
Class Rights

java.lang.Object
  extended by com.sun.mail.imap.Rights
All Implemented Interfaces:
java.lang.Cloneable

public class Rights
extends java.lang.Object
implements java.lang.Cloneable

The Rights class represents the set of rights for an authentication identifier (for instance, a user or a group).

A right is represented by the Rights.Right inner class.

A set of standard rights are predefined (see RFC 2086). Most folder implementations are expected to support these rights. Some implementations may also support site-defined rights.

The following code sample illustrates how to examine your rights for a folder.


 Rights rights = folder.myRights();

 // Check if I can write this folder
 if (rights.contains(Rights.Right.WRITE))
        System.out.println("Can write folder");

 // Now give Joe all my rights, except the ability to write the folder
 rights.remove(Rights.Right.WRITE);
 ACL acl = new ACL("joe", rights);
 folder.setACL(acl);
 


Nested Class Summary
static class Rights.Right
          This inner class represents an individual right.
 
Constructor Summary
Rights()
          Construct an empty Rights object.
Rights(Rights.Right right)
          Construct a Rights object initialized with the given right.
Rights(Rights rights)
          Construct a Rights object initialized with the given rights.
Rights(java.lang.String rights)
          Construct a Rights object initialized with the given rights.
 
Method Summary
 void add(Rights.Right right)
          Add the specified right to this Rights object.
 void add(Rights rights)
          Add all the rights in the given Rights object to this Rights object.
 java.lang.Object clone()
          Returns a clone of this Rights object.
 boolean contains(Rights.Right right)
          Check whether the specified right is present in this Rights object.
 boolean contains(Rights rights)
          Check whether all the rights in the specified Rights object are present in this Rights object.
 boolean equals(java.lang.Object obj)
          Check whether the two Rights objects are equal.
 Rights.Right[] getRights()
          Return all the rights in this Rights object.
 int hashCode()
          Compute a hash code for this Rights object.
 void remove(Rights.Right right)
          Remove the specified right from this Rights object.
 void remove(Rights rights)
          Remove all rights in the given Rights object from this Rights object.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Rights

public Rights()
Construct an empty Rights object.


Rights

public Rights(Rights rights)
Construct a Rights object initialized with the given rights.

Parameters:
rights - the rights for initialization

Rights

public Rights(java.lang.String rights)
Construct a Rights object initialized with the given rights.

Parameters:
rights - the rights for initialization

Rights

public Rights(Rights.Right right)
Construct a Rights object initialized with the given right.

Parameters:
right - the right for initialization
Method Detail

add

public void add(Rights.Right right)
Add the specified right to this Rights object.

Parameters:
right - the right to add

add

public void add(Rights rights)
Add all the rights in the given Rights object to this Rights object.

Parameters:
rights - Rights object

remove

public void remove(Rights.Right right)
Remove the specified right from this Rights object.

Parameters:
right - the right to be removed

remove

public void remove(Rights rights)
Remove all rights in the given Rights object from this Rights object.

Parameters:
rights - the rights to be removed

contains

public boolean contains(Rights.Right right)
Check whether the specified right is present in this Rights object.

Returns:
true of the given right is present, otherwise false.

contains

public boolean contains(Rights rights)
Check whether all the rights in the specified Rights object are present in this Rights object.

Returns:
true if all rights in the given Rights object are present, otherwise false.

equals

public boolean equals(java.lang.Object obj)
Check whether the two Rights objects are equal.

Overrides:
equals in class java.lang.Object
Returns:
true if they're equal

hashCode

public int hashCode()
Compute a hash code for this Rights object.

Overrides:
hashCode in class java.lang.Object
Returns:
the hash code

getRights

public Rights.Right[] getRights()
Return all the rights in this Rights object. Returns an array of size zero if no rights are set.

Returns:
array of Rights.Right objects representing rights

clone

public java.lang.Object clone()
Returns a clone of this Rights object.

Overrides:
clone in class java.lang.Object

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object