Interface ContentSource

  • All Implemented Interfaces:

    
    public interface ContentSource
    
                        

    Streaming content for uploads (HEL-236 guarantee 1). A source is a RECIPE for a stream, not a buffer: open returns a fresh stream per call and the store reads it incrementally.

    repeatable is the retry contract (HEL-236 guarantee 4): a repeatable source can be re-opened after a transport failure, so the write is SAFE to retry; a one-shot source cannot, and an implementation must fail visibly (StorageIoException with retrySafe = false) instead of silently re-sending a half-consumed stream.

    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      abstract InputStream open() A FRESH stream positioned at the start of the content.
      abstract Long getLengthBytes() Exact content length; null = unknown (multipart-only territory).
      abstract Boolean getRepeatable() True when open may be called more than once (retry-safe).
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

    • Method Detail

      • open

         abstract InputStream open()

        A FRESH stream positioned at the start of the content.

      • getLengthBytes

         abstract Long getLengthBytes()

        Exact content length; null = unknown (multipart-only territory).