Class LDIFRecord

java.lang.Object
netscape.ldap.util.LDIFRecord
All Implemented Interfaces:
Serializable

public class LDIFRecord extends 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:

  • To create a record that specifies an entry, use an object of the LDIFAttributeContent class.
  • To create a record that specifies a modification to be made, use an object of one of the following classes:
    • Use LDIFAddContent to add a new entry.
    • Use LDIFModifyContent to modify an entry.
    • Use LDIFDeleteContent to delete an entry.

Version:
1.0
See Also:
  • 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.
      See Also:
  • Method Details

    • getDN

      public String getDN()
      Retrieves the distinguished name of the LDIF record.
      Returns:
      the distinguished name of the LDIF record.
    • 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.
      See Also:
    • 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.
    • toString

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