/// <summary> /// Deletes an entry. /// </summary> /// <param name="key">The <see cref="DatabaseEntry"/> key of the entry to delete.</param> public abstract void Delete(DatabaseEntry key);
/// <summary> /// Writes entry data. /// </summary> /// <param name="objectId">The <see cref="Int32"/> federating id.</param> /// <param name="key">The <see cref="Byte"/> array key.</param> /// <param name="dbEntry">A <see cref="DatabaseEntry"/> used to write data to.</param> /// <param name="rmwDelegate">Called after the initial read with <paramref name="dbEntry"/> as the /// parameter. The length of <paramref name="dbEntry"/> is set to the length of the data, 0 if not /// found. Before return, set the length of the parameter to the length of the new data value; 0 to /// delete.</param> public abstract void Put(int objectId, byte[] key, DatabaseEntry dbEntry, RMWDelegate rmwDelegate);
/// <summary> /// Writes entry data. /// </summary> /// <param name="key">The <see cref="Int32"/> key.</param> /// <param name="value">The <see cref="DatabaseEntry"/> data.</param> public abstract void Put(int key, DatabaseEntry value);
/// <summary> /// Writes entry data. /// </summary> /// <param name="key">The <see cref="Byte"/> array key.</param> /// <param name="value">The <see cref="DatabaseEntry"/> data.</param> public abstract void Put(byte[] key, DatabaseEntry value);
/// <summary> /// Gets entry data. /// </summary> /// <param name="key">The <see cref="Int32"/> key of the entry.</param> /// <param name="value">The value.</param> /// <returns>If found then data copied to <see cref="DatabaseEntry.Buffer"/> of <paramref name="value"/> and /// <see cref="DatabaseEntry.Length"/> set to the entry data length; otherwise no action taken. /// <paramref name="value"/> is returned regardless.</returns> public abstract DatabaseEntry Get(int key, DatabaseEntry value);
/// <summary> /// Gets entry data. /// </summary> /// <param name="key">The <see cref="Byte"/> array key of the entry.</param> /// <param name="value">The value.</param> /// <returns>If found then data copied to <see cref="DatabaseEntry.Buffer"/> of <paramref name="value"/> and /// <see cref="DatabaseEntry.Length"/> set to the entry data length; otherwise no action taken. /// <paramref name="value"/> is returned regardless.</returns> public abstract DatabaseEntry Get(byte[] key, DatabaseEntry value);