C# Class FoundationDB.Layers.Blobs.FdbBlob

Afficher le fichier Open project: BedeGaming/foundationdb-dotnet-client

Méthodes publiques

Méthode Description
AppendAsync ( IFdbTransaction trans, Slice data ) : System.Threading.Tasks.Task

Append the contents of data onto the end of the blob.

Delete ( IFdbTransaction trans ) : void

Delete all key-value pairs associated with the blob.

FdbBlob ( FdbSubspace subspace ) : FoundationDB.Client

Create a new object representing a binary large object (blob). Only keys within the subspace will be used by the object. Other clients of the database should refrain from modifying the subspace.

GetSizeAsync ( IFdbReadOnlyTransaction trans ) : Task

Get the size (in bytes) of the blob.

ReadAsync ( IFdbReadOnlyTransaction trans, long offset, int n ) : Task

Read from the blob, starting at offset, retrieving up to n bytes (fewer then n bytes are returned when the end of the blob is reached).

TruncateAsync ( IFdbTransaction trans, long newLength ) : System.Threading.Tasks.Task

Change the blob length to newLength, erasing any data when shrinking, and filling new bytes with 0 when growing.

WriteAsync ( IFdbTransaction trans, long offset, Slice data ) : System.Threading.Tasks.Task

Write data to the blob, starting at and overwriting any existing data at that location. The length of the blob is increased if necessary.

Méthodes protégées

Méthode Description
AttributeKey ( string name ) : Slice
DataKey ( long offset ) : Slice

Returns the key for data chunk at the specified offset

DataKeyOffset ( Slice key ) : long
SizeKey ( ) : Slice

Private Methods

Méthode Description
GetChunkAtAsync ( IFdbTransaction trans, long offset ) : Task
MakeSparseAsync ( IFdbTransaction trans, long start, long end ) : System.Threading.Tasks.Task
MakeSplitPointAsync ( IFdbTransaction trans, long offset ) : System.Threading.Tasks.Task
SetSize ( IFdbTransaction trans, long size ) : void
TryRemoteSplitPointAsync ( IFdbTransaction trans, long offset ) : Task
WriteToSparse ( IFdbTransaction trans, long offset, Slice data ) : void

Method Details

AppendAsync() public méthode

Append the contents of data onto the end of the blob.
public AppendAsync ( IFdbTransaction trans, Slice data ) : System.Threading.Tasks.Task
trans IFdbTransaction
data Slice
Résultat System.Threading.Tasks.Task

AttributeKey() protected méthode

protected AttributeKey ( string name ) : Slice
name string
Résultat Slice

DataKey() protected méthode

Returns the key for data chunk at the specified offset
protected DataKey ( long offset ) : Slice
offset long
Résultat Slice

DataKeyOffset() protected méthode

protected DataKeyOffset ( Slice key ) : long
key Slice
Résultat long

Delete() public méthode

Delete all key-value pairs associated with the blob.
public Delete ( IFdbTransaction trans ) : void
trans IFdbTransaction
Résultat void

FdbBlob() public méthode

Create a new object representing a binary large object (blob). Only keys within the subspace will be used by the object. Other clients of the database should refrain from modifying the subspace.
public FdbBlob ( FdbSubspace subspace ) : FoundationDB.Client
subspace FdbSubspace Subspace to be used for storing the blob data and metadata
Résultat FoundationDB.Client

GetSizeAsync() public méthode

Get the size (in bytes) of the blob.
public GetSizeAsync ( IFdbReadOnlyTransaction trans ) : Task
trans IFdbReadOnlyTransaction
Résultat Task

ReadAsync() public méthode

Read from the blob, starting at offset, retrieving up to n bytes (fewer then n bytes are returned when the end of the blob is reached).
public ReadAsync ( IFdbReadOnlyTransaction trans, long offset, int n ) : Task
trans IFdbReadOnlyTransaction
offset long
n int
Résultat Task

SizeKey() protected méthode

protected SizeKey ( ) : Slice
Résultat Slice

TruncateAsync() public méthode

Change the blob length to newLength, erasing any data when shrinking, and filling new bytes with 0 when growing.
public TruncateAsync ( IFdbTransaction trans, long newLength ) : System.Threading.Tasks.Task
trans IFdbTransaction
newLength long
Résultat System.Threading.Tasks.Task

WriteAsync() public méthode

Write data to the blob, starting at and overwriting any existing data at that location. The length of the blob is increased if necessary.
public WriteAsync ( IFdbTransaction trans, long offset, Slice data ) : System.Threading.Tasks.Task
trans IFdbTransaction
offset long
data Slice
Résultat System.Threading.Tasks.Task