Packages

c

blobstore

PathStore

abstract class PathStore[F[_], BlobType] extends AnyRef

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. PathStore
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new PathStore()

Abstract Value Members

  1. abstract def copy[A, B](src: Path[A], dst: Path[B]): F[Unit]

    Copies bytes from srcPath to dstPath.

    Copies bytes from srcPath to dstPath. Stores should optimize to use native copy functions to avoid data transfer.

    src

    path

    dst

    path

    returns

    F[Unit]

  2. abstract def get[A](path: Path[A], chunkSize: Int): Stream[F, Byte]

    Get bytes for the given Path.

    Get bytes for the given Path.

    path

    to get

    chunkSize

    bytes to read in each chunk.

    returns

    stream of bytes

  3. abstract def getContents[A](path: Path[A], chunkSize: Int = 4096): F[String]
  4. abstract def lift(g: (Plain) ⇒ Validated[Throwable, Plain]): Store[F, BlobType]

    Lifts this FileStore to a Store accepting URLs and exposing blobs of type BlobType.

    Lifts this FileStore to a Store accepting URLs and exposing blobs of type BlobType. You may provide a function g for controlling input paths to this store.

    Input URLs to the returned store are validated against this Store's authority before the path is extracted and passed to this store.

  5. abstract def list[A](path: Path[A], recursive: Boolean): Stream[F, Path[BlobType]]

    List paths.

    List paths.

    path

    to list

    recursive

    when true returned list would contain files at given path and all sub-folders but no folders, otherwise – return files and folder at given path.

    returns

    stream of Paths. Implementing stores must guarantee that returned Paths have correct values for size, isDir and lastModified.

    Example:
    1. Given Path pointing at folder: folder/a folder/b folder/c folder/sub-folder/d folder/sub-folder/sub-sub-folder/e list(folder, recursive = true) -> [a, b, c, d, e] list(folder, recursive = false) -> [a, b, c, sub-folder]

  6. abstract def move[A, B](src: Path[A], dst: Path[B]): F[Unit]

    Moves bytes from srcPath to dstPath.

    Moves bytes from srcPath to dstPath. Stores should optimize to use native move functions to avoid data transfer.

    src

    path

    dst

    path

    returns

    F[Unit]

  7. abstract def put[A](path: Path[A], overwrite: Boolean = true, size: Option[Long] = None): Pipe[F, Byte, Unit]

    Provides a Sink that writes bytes into the provided path.

    Provides a Sink that writes bytes into the provided path.

    path

    to put

    overwrite

    when true putting to path with pre-existing file would overwrite the content, otherwise – fail with error.

    returns

    sink of bytes

  8. abstract def putRotate[A](computePath: F[Path[A]], limit: Long): Pipe[F, Byte, Unit]

    Writes all data to a sequence of blobs/files, each limited in size to limit.

    Writes all data to a sequence of blobs/files, each limited in size to limit.

    The computeUrl operation is used to compute the path of the first file and every subsequent file. Typically, the next file should be determined by analyzing the current state of the filesystem -- e.g., by looking at all files in a directory and generating a unique name.

    computePath

    operation to compute the path of the first file and all subsequent files.

    limit

    maximum size in bytes for each file.

    returns

    sink of bytes

    Note

    Put of all files uses overwrite semantic, i.e. if path returned by computeUrl already exists content will be overwritten. If that doesn't suit your use case use computeUrl to guard against overwriting existing files.

  9. abstract def remove[A](path: Path[A], recursive: Boolean = false): F[Unit]

    Remove bytes for given path.

    Remove bytes for given path. Call should succeed even if there is nothing stored at that path.

    returns

    F[Unit]

  10. abstract def stat[A](path: Path[A]): F[Option[Path[BlobType]]]
  11. abstract def transferTo[B, P, A](dstStore: Store[F, B], srcPath: Path[P], dstUrl: Url[A])(implicit ev: <:<[B, FsObject]): F[Int]

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @HotSpotIntrinsicCandidate()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  9. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  10. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  11. def lift: Store[F, BlobType]
  12. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  14. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  15. def put[A](contents: String, path: Path[A], overwrite: Boolean): Stream[F, Unit]
  16. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  17. def toString(): String
    Definition Classes
    AnyRef → Any
  18. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  20. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated
    Deprecated

Inherited from AnyRef

Inherited from Any

Ungrouped