Package org.apache.any23.writer
Class ReportingTripleHandler
- java.lang.Object
-
- org.apache.any23.writer.ReportingTripleHandler
-
- All Implemented Interfaces:
AutoCloseable
,TripleHandler
public class ReportingTripleHandler extends Object implements TripleHandler
ATripleHandler
that collects various information about the extraction process, such as the extractors used and the total number of triples.- Author:
- Richard Cyganiak (richard@cyganiak.de)
-
-
Constructor Summary
Constructors Constructor Description ReportingTripleHandler(TripleHandler wrapped)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Will be called last and exactly once.void
closeContext(ExtractionContext context)
Informs the handler that no more triples will come from a previously opened context.void
endDocument(org.eclipse.rdf4j.model.IRI documentIRI)
Informs the handler that the end of the document has been reached.Collection<String>
getExtractorNames()
int
getTotalDocuments()
int
getTotalTriples()
void
openContext(ExtractionContext context)
Informs the handler that a new context has been established.String
printReport()
void
receiveNamespace(String prefix, String uri, ExtractionContext context)
Invoked with a currently open context, notifies the detection of a namespace.void
receiveTriple(org.eclipse.rdf4j.model.Resource s, org.eclipse.rdf4j.model.IRI p, org.eclipse.rdf4j.model.Value o, org.eclipse.rdf4j.model.IRI g, ExtractionContext context)
Invoked with a currently open context, notifies the detection of a triple.void
setContentLength(long contentLength)
Sets the length of the content to be processed.void
startDocument(org.eclipse.rdf4j.model.IRI documentIRI)
-
-
-
Constructor Detail
-
ReportingTripleHandler
public ReportingTripleHandler(TripleHandler wrapped)
-
-
Method Detail
-
getExtractorNames
public Collection<String> getExtractorNames()
-
getTotalTriples
public int getTotalTriples()
-
getTotalDocuments
public int getTotalDocuments()
-
printReport
public String printReport()
- Returns:
- a human readable report.
-
startDocument
public void startDocument(org.eclipse.rdf4j.model.IRI documentIRI) throws TripleHandlerException
- Specified by:
startDocument
in interfaceTripleHandler
- Throws:
TripleHandlerException
-
openContext
public void openContext(ExtractionContext context) throws TripleHandlerException
Description copied from interface:TripleHandler
Informs the handler that a new context has been established. Contexts are not guaranteed to receive any triples, so they might be closed without any triple.- Specified by:
openContext
in interfaceTripleHandler
- Parameters:
context
- an instantiatedExtractionContext
- Throws:
TripleHandlerException
- if there is an errr opening theExtractionContext
-
receiveNamespace
public void receiveNamespace(String prefix, String uri, ExtractionContext context) throws TripleHandlerException
Description copied from interface:TripleHandler
Invoked with a currently open context, notifies the detection of a namespace.- Specified by:
receiveNamespace
in interfaceTripleHandler
- Parameters:
prefix
- namespace prefix.uri
- namespace IRI.context
- namespace context.- Throws:
TripleHandlerException
- if there is an error receiving the namespace.
-
receiveTriple
public void receiveTriple(org.eclipse.rdf4j.model.Resource s, org.eclipse.rdf4j.model.IRI p, org.eclipse.rdf4j.model.Value o, org.eclipse.rdf4j.model.IRI g, ExtractionContext context) throws TripleHandlerException
Description copied from interface:TripleHandler
Invoked with a currently open context, notifies the detection of a triple.- Specified by:
receiveTriple
in interfaceTripleHandler
- Parameters:
s
- triple subject, cannot benull
.p
- triple predicate, cannot benull
.o
- triple object, cannot benull
.g
- triple graph, can benull
.context
- extraction context.- Throws:
TripleHandlerException
- if there is an error receiving the triple.
-
setContentLength
public void setContentLength(long contentLength)
Description copied from interface:TripleHandler
Sets the length of the content to be processed.- Specified by:
setContentLength
in interfaceTripleHandler
- Parameters:
contentLength
- length of the content being processed.
-
closeContext
public void closeContext(ExtractionContext context) throws TripleHandlerException
Description copied from interface:TripleHandler
Informs the handler that no more triples will come from a previously opened context. All contexts are guaranteed to be closed before the final close(). The document context for each document is guaranteed to be closed after all local contexts of that document.- Specified by:
closeContext
in interfaceTripleHandler
- Parameters:
context
- the context to be closed.- Throws:
TripleHandlerException
- if there is an error closing theExtractionContext
.
-
endDocument
public void endDocument(org.eclipse.rdf4j.model.IRI documentIRI) throws TripleHandlerException
Description copied from interface:TripleHandler
Informs the handler that the end of the document has been reached.- Specified by:
endDocument
in interfaceTripleHandler
- Parameters:
documentIRI
- document IRI.- Throws:
TripleHandlerException
- if there is an error ending the document.
-
close
public void close() throws TripleHandlerException
Description copied from interface:TripleHandler
Will be called last and exactly once.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceTripleHandler
- Throws:
TripleHandlerException
- if there is an error closing theTripleHandler
implementation.
-
-