trait Store[F[_], +BlobType] extends AnyRef
- Alphabetic
- By Inheritance
- Store
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
-
abstract
def
copy[A, B](src: Url[A], dst: Url[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]
-
abstract
def
get[A](url: Url[A], chunkSize: Int): Stream[F, Byte]
- url
to get
- chunkSize
bytes to read in each chunk.
- returns
stream of bytes
-
abstract
def
list[A](url: Url[A], recursive: Boolean = false): Stream[F, Url[BlobType]]
- url
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.
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]
Example: -
abstract
def
move[A, B](src: Url[A], dst: Url[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]
-
abstract
def
put[A](url: Url[A], overwrite: Boolean = true, size: Option[Long] = None): Pipe[F, Byte, Unit]
- url
to put
- overwrite
when true putting to path with pre-existing file would overwrite the content, otherwise – fail with error.
- returns
sink of bytes
-
abstract
def
putRotate[A](computeUrl: F[Url[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.- computeUrl
operation to compute the url 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.
-
abstract
def
remove[A](url: Url[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.
- url
to remove
- returns
F[Unit]
- abstract def stat[A](url: Url[A]): Stream[F, Url[BlobType]]
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native() @HotSpotIntrinsicCandidate()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
Deprecated Value Members
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated
- Deprecated