netscape.ldap.util

Class LDIFRecord

Implemented Interfaces:
Serializable

public class LDIFRecord
extends java.lang.Object
implements Serializable

An object of this class represents an LDIF record in an LDIF file (or in LDIF data). A record can contain a list of attributes (which describes an entry) or a list of modifications (which decribes the changes that need to be made to an entry). Each record also has a distinguished name.

You can get an LDIFRecord object from LDIF data by calling the nextRecord method of the LDIF object holding the data.

If you are constructing a new LDIFRecord object, you can specify the content of the record in one of the following ways:

Version:
1.0
See Also:
LDIF, LDIFAddContent, LDIFModifyContent, LDIFDeleteContent, LDIFAttributeContent

Constructor Summary

LDIFRecord(String dn, LDIFContent content)
Constructs a new LDIFRecord object with the specified content.

Method Summary

LDIFContent
getContent()
Retrieves the content of the LDIF record.
LDAPControl[]
getControls()
Retrieves the list of controls specified in the content of the LDIF record, if any.
String
getDN()
Retrieves the distinguished name of the LDIF record.
String
toString()
Gets the string representation of the LDIFRecord object.

Constructor Details

LDIFRecord

public LDIFRecord(String dn,
                  LDIFContent content)
Constructs a new LDIFRecord object with the specified content.
Parameters:
dn - distinguished name of the entry associated with the record
content - content of the LDIF record. You can specify an object of the LDIFAttributeContent, LDIFAddContent, LDIFModifyContent, or LDIFDeleteContent classes.

Method Details

getContent

public LDIFContent getContent()
Retrieves the content of the LDIF record. The content is an object of the LDIFAttributeContent, LDIFAddContent, LDIFModifyContent, or LDIFDeleteContent classes.

To determine the class of the object, use the getType method of that object. getType returns one of the following values:

  • LDIFContent.ATTRIBUTE_CONTENT (the object is an LDIFAttributeContent object)
  • LDIFContent.ADD_CONTENT (the object is an LDIFAddContent object)
  • LDIFContent.MODIFICATION_CONTENT (the object is an LDIFModifyContent object)
  • LDIFContent.DELETE_CONTENT (the object is an LDIFDeleteContent object)

For example:

 ...
 import netscape.ldap.*;
 import netscape.ldap.util.*;
 import java.io.*;
 import java.util.*;
 ...
     try {
         // Parse the LDIF file test.ldif.
         LDIF parser = new LDIF( "test.ldif" );
         // Iterate through each LDIF record in the file.
         LDIFRecord nextRec = parser.nextRecord();
         while ( nextRec != null ) {
             // Based on the type of content in the record,
             // get the content and cast it as the appropriate
             // type.
             switch( nextRec.getContent().getType() ) {
                 case LDIFContent.ATTRIBUTE_CONTENT:
                     LDIFAttributeContent attrContent =
                         (LDIFAttributeContent)nextRec.getContent();
                     break;
                 case LDIFContent.ADD_CONTENT:
                     LDIFAddContent addContent =
                         (LDIFAddContent)nextRec.getContent();
                     break;
                 case LDIFContent.MODIFICATION_CONTENT:
                     LDIFModifyContent modifyContent =
                         (LDIFModifyContent)nextRec.getContent();
                     break;
                 case LDIFContent.DELETE_CONTENT:
                     LDIFDeleteContent deleteContent =
                         (LDIFDeleteContent)nextRec.getContent();
                     break;
             }
             ...
             // Iterate through each record.
             nextRec = parser.nextRecord();
         }
     } catch ( IOException e ) {
         System.out.println( "Error: " + e.toString() );
         System.exit(1);
     }
 ...
 
Returns:
the content of the LDIF record.

getControls

public LDAPControl[] getControls()
Retrieves the list of controls specified in the content of the LDIF record, if any.
Returns:
an array of LDAPControl objects that represent any controls specified in the LDIF record, or null if none were specified.

getDN

public String getDN()
Retrieves the distinguished name of the LDIF record.
Returns:
the distinguished name of the LDIF record.

toString

public String toString()
Gets the string representation of the LDIFRecord object.
Returns:
the string representation of the LDIF record.