Class DocViewParser
- java.lang.Object
-
- org.apache.jackrabbit.vault.fs.io.DocViewParser
-
@ProviderType public final class DocViewParser extends Object
This is a thread-safe SAX parser which deals with FileVault Document View XML files and passes them to a givenDocViewParserHandler
.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
DocViewParser.XmlParseException
Thrown in case the XML is not well-formed or no valid docview format.
-
Field Summary
Fields Modifier and Type Field Description static int
MAX_NUM_BYTES_TO_READ_FOR_DOCVIEW_DETECTION
-
Constructor Summary
Constructors Constructor Description DocViewParser()
DocViewParser(@NotNull Session session)
DocViewParser(@Nullable NamespaceResolver resolver)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static @Nullable String
getDocumentViewXmlRootNodePath(InputStream input, Path filePath)
Converts the given file path to the absolute root node path given thatInputStream
is complying with the Document View XML format.static boolean
isDocView(InputSource source)
Checks if the givenInputSource
is complying with the Document View XML format.void
parse(String rootNodePath, InputSource inputSource, DocViewParserHandler handler)
Parses a FileVault Document View XML file and calls the given handler for each parsed node.
-
-
-
Field Detail
-
MAX_NUM_BYTES_TO_READ_FOR_DOCVIEW_DETECTION
public static final int MAX_NUM_BYTES_TO_READ_FOR_DOCVIEW_DETECTION
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
DocViewParser
public DocViewParser()
-
DocViewParser
public DocViewParser(@NotNull @NotNull Session session)
- Parameters:
session
- uses the namespace from the session for resolving otherwise unknown namespace prefixes in docview files
-
DocViewParser
public DocViewParser(@Nullable @Nullable NamespaceResolver resolver)
-
-
Method Detail
-
isDocView
public static boolean isDocView(InputSource source) throws IOException
Checks if the givenInputSource
is complying with the Document View XML format.- Parameters:
source
- the source to analyze- Returns:
true
in case the given source is Document View XML format- Throws:
IOException
- if an I/O error occurs
-
getDocumentViewXmlRootNodePath
@Nullable public static @Nullable String getDocumentViewXmlRootNodePath(InputStream input, Path filePath) throws IOException
Converts the given file path to the absolute root node path given thatInputStream
is complying with the Document View XML format.- Parameters:
input
- the given input is automatically reset after this method returnsfilePath
- the file path of the file containing the potential docview xml, must be relative to the jcr_root directory- Returns:
- either the absolute repository path of the root node of the given docview xml or
null
if no docview xml given - Throws:
IOException
-
parse
public void parse(String rootNodePath, InputSource inputSource, DocViewParserHandler handler) throws IOException, DocViewParser.XmlParseException
Parses a FileVault Document View XML file and calls the given handler for each parsed node.- Parameters:
rootNodePath
- the path of the root node of the given docview xmlinputSource
- the source of the docview xmlhandler
- the callback handler which gets the deserialized node information- Throws:
IOException
DocViewParser.XmlParseException
-
-