|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.directory.shared.ldap.ldif.LdifReader
public class LdifReader
<ldif-file> ::= "version:" <fill> <number> <seps> <dn-spec> <sep> <ldif-content-change> <ldif-content-change> ::= <number> <oid> <options-e> <value-spec> <sep> <attrval-specs-e> <ldif-attrval-record-e> | <alpha> <chars-e> <options-e> <value-spec> <sep> <attrval-specs-e> <ldif-attrval-record-e> | "control:" <fill> <number> <oid> <spaces-e> <criticality> <value-spec-e> <sep> <controls-e> "changetype:" <fill> <changerecord-type> <ldif-change-record-e> | "changetype:" <fill> <changerecord-type> <ldif-change-record-e> <ldif-attrval-record-e> ::= <seps> <dn-spec> <sep> <attributeType> <options-e> <value-spec> <sep> <attrval-specs-e> <ldif-attrval-record-e> | e <ldif-change-record-e> ::= <seps> <dn-spec> <sep> <controls-e> "changetype:" <fill> <changerecord-type> <ldif-change-record-e> | e <dn-spec> ::= "dn:" <fill> <safe-string> | "dn::" <fill> <base64-string> <controls-e> ::= "control:" <fill> <number> <oid> <spaces-e> <criticality> <value-spec-e> <sep> <controls-e> | e <criticality> ::= "true" | "false" | e <oid> ::= '.' <number> <oid> | e <attrval-specs-e> ::= <number> <oid> <options-e> <value-spec> <sep> <attrval-specs-e> | <alpha> <chars-e> <options-e> <value-spec> <sep> <attrval-specs-e> | e <value-spec-e> ::= <value-spec> | e <value-spec> ::= ':' <fill> <safe-string-e> | "::" <fill> <base64-chars> | ":<" <fill> <url> <attributeType> ::= <number> <oid> | <alpha> <chars-e> <options-e> ::= ';' <char> <chars-e> <options-e> |e <chars-e> ::= <char> <chars-e> | e <changerecord-type> ::= "add" <sep> <attributeType> <options-e> <value-spec> <sep> <attrval-specs-e> | "delete" <sep> | "modify" <sep> <mod-type> <fill> <attributeType> <options-e> <sep> <attrval-specs-e> <sep> '-' <sep> <mod-specs-e> | "moddn" <sep> <newrdn> <sep> "deleteoldrdn:" <fill> <0-1> <sep> <newsuperior-e> <sep> | "modrdn" <sep> <newrdn> <sep> "deleteoldrdn:" <fill> <0-1> <sep> <newsuperior-e> <sep> <newrdn> ::= ':' <fill> <safe-string> | "::" <fill> <base64-chars> <newsuperior-e> ::= "newsuperior" <newrdn> | e <mod-specs-e> ::= <mod-type> <fill> <attributeType> <options-e> <sep> <attrval-specs-e> <sep> '-' <sep> <mod-specs-e> | e <mod-type> ::= "add:" | "delete:" | "replace:" <url> ::= <a Uniform Resource Locator, as defined in [6]> LEXICAL ------- <fill> ::= ' ' <fill> | e <char> ::= <alpha> | <digit> | '-' <number> ::= <digit> <digits> <0-1> ::= '0' | '1' <digits> ::= <digit> <digits> | e <digit> ::= '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' <seps> ::= <sep> <seps-e> <seps-e> ::= <sep> <seps-e> | e <sep> ::= 0x0D 0x0A | 0x0A <spaces> ::= ' ' <spaces-e> <spaces-e> ::= ' ' <spaces-e> | e <safe-string-e> ::= <safe-string> | e <safe-string> ::= <safe-init-char> <safe-chars> <safe-init-char> ::= [0x01-0x09] | 0x0B | 0x0C | [0x0E-0x1F] | [0x21-0x39] | 0x3B | [0x3D-0x7F] <safe-chars> ::= <safe-char> <safe-chars> | e <safe-char> ::= [0x01-0x09] | 0x0B | 0x0C | [0x0E-0x7F] <base64-string> ::= <base64-char> <base64-chars> <base64-chars> ::= <base64-char> <base64-chars> | e <base64-char> ::= 0x2B | 0x2F | [0x30-0x39] | 0x3D | [0x41-9x5A] | [0x61-0x7A] <alpha> ::= [0x41-0x5A] | [0x61-0x7A] COMMENTS -------- - The ldap-oid VN is not correct in the RFC-2849. It has been changed from 1*DIGIT 0*1("." 1*DIGIT) to DIGIT+ ("." DIGIT+)* - The mod-spec lacks a sep between *attrval-spec and "-". - The BASE64-UTF8-STRING should be BASE64-CHAR BASE64-STRING - The ValueSpec rule must accept multilines values. In this case, we have a LF followed by a single space before the continued value.
Constructor Summary | |
---|---|
LdifReader()
Constructors |
|
LdifReader(BufferedReader in)
A constructor which takes a BufferedReader |
|
LdifReader(File in)
A constructor which takes a File |
|
LdifReader(InputStream in)
A constructor which takes an InputStream |
|
LdifReader(Reader in)
A constructor which takes a Reader |
|
LdifReader(String ldifFileName)
A constructor which takes a file name |
Method Summary | |
---|---|
boolean |
containsEntries()
|
Exception |
getError()
|
long |
getSizeLimit()
|
int |
getVersion()
|
boolean |
hasError()
|
boolean |
hasNext()
Tests to see if another LDIF is on the input channel. |
Iterator |
iterator()
|
Object |
next()
Gets the next LDIF on the channel. |
void |
parseAttributeValue(Entry entry,
String line,
String lowerLine)
Parse an AttributeType/AttributeValue |
static Attribute |
parseAttributeValue(String line)
Parse an AttributeType/AttributeValue |
List |
parseLdif(BufferedReader in)
The main entry point of the LdifParser. |
List |
parseLdif(String ldif)
A method which parses a ldif string and returns a list of entries. |
List |
parseLdifFile(String fileName)
Parse a ldif file (using the default encoding). |
List |
parseLdifFile(String fileName,
String encoding)
Parse a ldif file, decoding it using the given charset encoding |
void |
remove()
Always throws UnsupportedOperationException! |
void |
setSizeLimit(long sizeLimit)
Set the maximum file size that can be accepted for an attribute value |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public LdifReader()
public LdifReader(String ldifFileName) throws NamingException
ldifFileName
- A file name containing ldif formated input
NamingException
- If the file cannot be processed or if the format is incorrectpublic LdifReader(BufferedReader in) throws NamingException
in
- A BufferedReader containing ldif formated input
NamingException
- If the file cannot be processed or if the format is incorrectpublic LdifReader(Reader in) throws NamingException
in
- A Reader containing ldif formated input
NamingException
- If the file cannot be processed or if the format is incorrectpublic LdifReader(InputStream in) throws NamingException
in
- An InputStream containing ldif formated input
NamingException
- If the file cannot be processed or if the format is incorrectpublic LdifReader(File in) throws NamingException
in
- A File containing ldif formated input
NamingException
- If the file cannot be processed or if the format is incorrectMethod Detail |
---|
public int getVersion()
public long getSizeLimit()
public void setSizeLimit(long sizeLimit)
sizeLimit
- The size in bytespublic static Attribute parseAttributeValue(String line)
line
- The line to parsepublic void parseAttributeValue(Entry entry, String line, String lowerLine) throws NamingException
entry
- The entry where to store the valueline
- The line to parselowerLine
- The same line, lowercased
NamingException
- If anything goes wrongpublic List parseLdifFile(String fileName) throws NamingException
fileName
- The ldif file
NamingException
- If the parsing failspublic List parseLdifFile(String fileName, String encoding) throws NamingException
fileName
- The ldif fileencoding
- The charset encoding to use
NamingException
- If the parsing failspublic List parseLdif(String ldif) throws NamingException
ldif
- The ldif string
NamingException
- If something went wrongpublic Object next()
next
in interface Iterator
public boolean hasNext()
hasNext
in interface Iterator
public void remove()
remove
in interface Iterator
Iterator.remove()
public Iterator iterator()
public boolean hasError()
public Exception getError()
public List parseLdif(BufferedReader in) throws NamingException
in
- The buffer being processed
NamingException
- If something went wrongpublic boolean containsEntries()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |