Class SimpleDocumentDataProvider<S extends Source,SH extends PageSegmentHandle>

java.lang.Object
com.levigo.jadice.web.demo.common.server.dataprovider.SimpleDocumentDataProvider<S,SH>
Type Parameters:
S - the Source class to handle
SH - the PageSegmentHandle class to handle
All Implemented Interfaces:
DocumentDataProvider<S,SH>
Direct Known Subclasses:
ClassPathDocumentDataProvider, ClassPathWithAnnoAndPermissionDocumentDataProvider, DocumentUploadRepositoryDataProvider, UrlRelativeDataProvider

@Component public abstract class SimpleDocumentDataProvider<S extends Source,SH extends PageSegmentHandle> extends Object implements DocumentDataProvider<S,SH>
Simple version of an DocumentDataProvider that uses Providers to read and recover
  • Constructor Details

    • SimpleDocumentDataProvider

      public SimpleDocumentDataProvider()
  • Method Details

    • getStream

      public abstract org.jadice.util.base.Provider<InputStream,IOException> getStream(S source)
      Creates the Provider out of a Source
      Parameters:
      source - the Data to read the Document
      Returns:
      the Provider to read the Document matching to the source
    • getRecoveryStream

      public abstract org.jadice.util.base.Provider<InputStream,IOException> getRecoveryStream(SH sourceHandle) throws RecoverFailedException
      Creates the Provider out of a old PageSegmentHandle
      Parameters:
      sourceHandle - the handle to recover the Stream
      Returns:
      the Provider to read the Document matching to the handle
      Throws:
      RecoverFailedException - thrown when the document can't be recovered
    • read

      public void read(com.levigo.jadice.document.read.Reader reader, S source) throws com.levigo.jadice.document.JadiceException, IOException
      Description copied from interface: DocumentDataProvider
      Reads a part of the document to load. This will be used to initially load the document when a client initiates displaying a document. Please note, that the read method will be called only once during a server-side document read lifecycle. Subsequent reads will trigger the recover method, not a read.
      Specified by:
      read in interface DocumentDataProvider<S extends Source,SH extends PageSegmentHandle>
      Parameters:
      reader - The Reader to load the document.
      source - The Source to read the document from, including a unique identifier.
      Throws:
      com.levigo.jadice.document.JadiceException - Any rendering exceptions reported by the Jadice core.
      IOException - Other exceptions while reading the document.
    • recover

      public void recover(com.levigo.jadice.document.read.Reader reader, SH handle) throws RecoverFailedException, com.levigo.jadice.document.JadiceException
      Description copied from interface: DocumentDataProvider
      Partially recovers a Document identified by the given PageSegmentHandle. Sometimes, client applications may request Document instances that have either been removed from cache, garbage-collected due to long inactivity or in consequence of a server switch. This method will be used for subsequent document reads.
      Specified by:
      recover in interface DocumentDataProvider<S extends Source,SH extends PageSegmentHandle>
      Parameters:
      reader - The Reader to load the Document with
      handle - The information specifying which Document to recover
      Throws:
      RecoverFailedException - Thrown if the document cannot be recovered.
      com.levigo.jadice.document.JadiceException - Any rendering exceptions reported by the Jadice core.