com.novell.service.nds
Class NdsOctetList

java.lang.Object
  |
  +--com.novell.service.nds.NdsOctetList

public class NdsOctetList
extends java.lang.Object
implements NdsAttributeValue, , java.lang.Cloneable, java.io.Serializable

Provides access to values of the OctetList attribute. It is used for attributes that are ordered sequences of octet strings.

A presented octet list matches a stored list if the presented list is a subset of the stored list. Octet strings are so designated because they are not interpreted by NDS. They are simply a series of bits with no Unicode implications. The Approximate Equals matching rule, as well as the Equallity matching rule, applies because when comparing two octet lists, only one octet string in the list needs to match.

Matching Rules: Equality and Approximate Equals

See Also:
NdsSyntaxId

Constructor Summary
NdsOctetList(byte[][] value)
          Constructs an NdsOctetList object based on the specified value variable.
 
Method Summary
 boolean approximate(java.lang.Object anObject)
          Compares two Objects using the approximate matching rule.
 java.lang.Object clone()
          Creates a new object of the same class as this object.
 int compareTo(java.lang.Object anObject)
          Compares two objects for ordering, or compares two strings lexicographically.
 int count()
          Returns the number of elements in this sequence.
 boolean equals(java.lang.Object anObject)
          Compares two Objects for equality.
 int getNdsSyntaxId()
          Returns the int that represents this NDS syntax ID.
 byte[][] getOctetList()
          Returns the byte array of Octet List values stored in the NDS attribute.
 java.util.Enumeration getValues()
          Returns an enumeration of this sequence's values.
 boolean supportsMatchingRules(int matchingRules)
          Checks to see if this object supports the specified matching rules.
 java.lang.String toString()
          Generates a string representation of the object.
 
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

NdsOctetList

public NdsOctetList(byte[][] value)
Constructs an NdsOctetList object based on the specified value variable.
Parameters:
value - The octet list to be stored as a two-dimensional byte array.
Method Detail

compareTo

public int compareTo(java.lang.Object anObject)
              throws java.lang.Exception
Compares two objects for ordering, or compares two strings lexicographically. The compareTo method does not apply to the NdsOctetList syntax because this syntax does not support the ordering and substrings matching rules.

equals

public boolean equals(java.lang.Object anObject)
Compares two Objects for equality. The equals method compares this object value with the value of the reference object in the anObject parameter.

The equals method implements the most discriminating possible equivalence relation on objects; that is, for any reference values X and Y, this method returns TRUE if and only if X and Y refer to the same object (X==Y has the value TRUE).

Parameters:
anObject - The reference object with which to compare.
Returns:
A boolean set to TRUE if and only if the argument is not NULL and is an NDS integer object that contains the same value as this object, otherwise set to FALSE.
Overrides:
equals in class java.lang.Object

count

public int count()
Returns the number of elements in this sequence.
Specified by:
count in interface
Returns:
The number of elements in this sequence as an int.

getValues

public java.util.Enumeration getValues()
Returns an enumeration of this sequence's values.
Specified by:
getValues in interface
Returns:
An enumeration of value elements.

approximate

public boolean approximate(java.lang.Object anObject)
Compares two Objects using the approximate matching rule. It compares this object with the reference object in the anObject parameter.

When comparing two Octet lists, only one octet string of the list need match.

Specified by:
approximate in interface NdsAttributeValue
Parameters:
anObject - The reference object with which to compare.
Returns:
A Boolean set to TRUE if any argument is not equal to NULL, otherwise set to FALSE.
Throws:
NsiException - The approximate() method is not supported for this syntax.

getNdsSyntaxId

public int getNdsSyntaxId()
Returns the int that represents this NDS syntax ID.
Specified by:
getNdsSyntaxId in interface NdsAttributeValue
Returns:
The syntax ID as an int.

supportsMatchingRules

public boolean supportsMatchingRules(int matchingRules)
Checks to see if this object supports the specified matching rules. The Octet List syntax supports both the Equality and Approximate Equals matching rules.
Specified by:
supportsMatchingRules in interface NdsAttributeValue
Parameters:
matchingRules - The set of matching rules to check.
Returns:
A Boolean set to TRUE if the matching rules for this object are equal to the matchingRules parameter.

clone

public java.lang.Object clone()
Creates a new object of the same class as this object. It then initializes each of the new object's fields by assigning them the same value as the corresponding fields in this object. No constructor is called.
Returns:
A clone of this object instance containing the cloned syntax.

toString

public java.lang.String toString()
Generates a string representation of the object. It returns a string that textually represents the object. The result should be a concise but informative representation that is easy to read.
Returns:
The String representation of the object.
Overrides:
toString in class java.lang.Object

getOctetList

public byte[][] getOctetList()
Returns the byte array of Octet List values stored in the NDS attribute.
Returns:
A byte array of Octet List values.