PravegaKeyValueTable

zio.pravega.table.PravegaKeyValueTable
final case class PravegaKeyValueTable[K, V](table: KeyValueTable, settings: TableSettings[K, V])

Pravega Table API.

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

def get(key: K): Task[Option[V]]
def getEntry(key: K): Task[Option[TableEntry]]
def overrideTask(k: K, v: V): Task[UpdateAndNewValue[V]]

Build a command to Insert or override a (key,value) pair in a Pravega table:

Build a command to Insert or override a (key,value) pair in a Pravega table:

  • if the key does not exist, build a command to insert the value.
  • if the key exists, build a command to override.

Attributes

def pushUpdate(updateAndNewValue: UpdateAndNewValue[V]): ZIO[Any, Throwable, (Version, V)]

Upsert a (key,value) pair in a Pravega table.

Upsert a (key,value) pair in a Pravega table.

In case of a conflict:

  • the key exists and the version does not match
  • the key did not exist at first lookup the ZIO will fail and will be retried.

Attributes

def updateTask(k: K, v: V, combine: (V, V) => V): Task[UpdateAndNewValue[V]]

Build a command to Upsert a (key,value) pair in a Pravega table:

Build a command to Upsert a (key,value) pair in a Pravega table:

  • if the key does not exist, build a command to insert the value.
  • if the key exists, build a command to update the value.

The @combine function is used to merge old and new values.

Attributes

Inherited methods

def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product