Class ExtractionContextBlocker

  • All Implemented Interfaces:
    AutoCloseable, org.apache.any23.writer.TripleHandler

    public class ExtractionContextBlocker
    extends Object
    implements org.apache.any23.writer.TripleHandler
    A wrapper around a TripleHandler that can block and unblock calls to the handler, either for the entire document, or for individual ExtractionContexts. A document is initially blocked and must be explicitly unblocked. Contexts are initially unblocked and must be explicitly blocked. Unblocking a document unblocks all contexts as well. This class it thread-safe.
    Author:
    Richard Cyganiak (richard@cyganiak.de)
    • Constructor Detail

      • ExtractionContextBlocker

        public ExtractionContextBlocker​(org.apache.any23.writer.TripleHandler wrapped)
    • Method Detail

      • isDocBlocked

        public boolean isDocBlocked()
      • blockContext

        public void blockContext​(org.apache.any23.extractor.ExtractionContext context)
      • unblockContext

        public void unblockContext​(org.apache.any23.extractor.ExtractionContext context)
      • startDocument

        public void startDocument​(org.eclipse.rdf4j.model.IRI documentIRI)
                           throws org.apache.any23.writer.TripleHandlerException
        Specified by:
        startDocument in interface org.apache.any23.writer.TripleHandler
        Throws:
        org.apache.any23.writer.TripleHandlerException
      • openContext

        public void openContext​(org.apache.any23.extractor.ExtractionContext context)
                         throws org.apache.any23.writer.TripleHandlerException
        Specified by:
        openContext in interface org.apache.any23.writer.TripleHandler
        Throws:
        org.apache.any23.writer.TripleHandlerException
      • closeContext

        public void closeContext​(org.apache.any23.extractor.ExtractionContext context)
        Specified by:
        closeContext in interface org.apache.any23.writer.TripleHandler
      • unblockDocument

        public void unblockDocument()
      • 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,
                                  org.apache.any23.extractor.ExtractionContext context)
                           throws org.apache.any23.writer.TripleHandlerException
        Specified by:
        receiveTriple in interface org.apache.any23.writer.TripleHandler
        Throws:
        org.apache.any23.writer.TripleHandlerException
      • receiveNamespace

        public void receiveNamespace​(String prefix,
                                     String uri,
                                     org.apache.any23.extractor.ExtractionContext context)
                              throws org.apache.any23.writer.TripleHandlerException
        Specified by:
        receiveNamespace in interface org.apache.any23.writer.TripleHandler
        Throws:
        org.apache.any23.writer.TripleHandlerException
      • close

        public void close()
                   throws org.apache.any23.writer.TripleHandlerException
        Specified by:
        close in interface AutoCloseable
        Specified by:
        close in interface org.apache.any23.writer.TripleHandler
        Throws:
        org.apache.any23.writer.TripleHandlerException
      • endDocument

        public void endDocument​(org.eclipse.rdf4j.model.IRI documentIRI)
                         throws org.apache.any23.writer.TripleHandlerException
        Specified by:
        endDocument in interface org.apache.any23.writer.TripleHandler
        Throws:
        org.apache.any23.writer.TripleHandlerException
      • setContentLength

        public void setContentLength​(long contentLength)
        Specified by:
        setContentLength in interface org.apache.any23.writer.TripleHandler