Class KafkaTable<TKey, TValueContainer, TJVMKey, TJVMValueContainer>
- Namespace
- MASES.EntityFrameworkCore.KNet.Storage.Internal
- Assembly
- MASES.EntityFrameworkCore.KNet.dll
This is an internal API that supports the Entity Framework Core infrastructure and not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. You should only use it directly in your code with extreme caution and knowing that doing so can result in application failures when updating to a new Entity Framework Core release.
public class KafkaTable<TKey, TValueContainer, TJVMKey, TJVMValueContainer> : IKafkaTable, IEntityTypeProducer, IDisposable where TKey : notnull where TValueContainer : class, IValueContainer<TKey>
Type Parameters
TKey
TValueContainer
TJVMKey
TJVMValueContainer
- Inheritance
-
KafkaTable<TKey, TValueContainer, TJVMKey, TJVMValueContainer>
- Implements
- Inherited Members
Constructors
KafkaTable(IKafkaCluster, IEntityType, bool)
Default initializer
public KafkaTable(IKafkaCluster cluster, IEntityType entityType, bool sensitiveLoggingEnabled)
Parameters
cluster
IKafkaClusterentityType
IEntityTypesensitiveLoggingEnabled
bool
Properties
Cluster
The referring IKafkaCluster
public virtual IKafkaCluster Cluster { get; }
Property Value
EntityType
Associated IEntityType
public virtual IEntityType EntityType { get; }
Property Value
Rows
Current rows
public virtual IEnumerable<object?[]> Rows { get; }
Property Value
ValueBuffers
The current ValueBuffers
public virtual IEnumerable<ValueBuffer> ValueBuffers { get; }
Property Value
Methods
BumpValueGenerators(object?[])
Bumps values
public virtual void BumpValueGenerators(object?[] row)
Parameters
row
object[]
Commit(IEnumerable<IKafkaRowBag>)
Stores an IEnumerable<T>
public virtual IEnumerable<Future<RecordMetadata>> Commit(IEnumerable<IKafkaRowBag> records)
Parameters
records
IEnumerable<IKafkaRowBag>The IEnumerable<T> to be stored
Returns
Create(IUpdateEntry)
Creates a new row
public virtual IKafkaRowBag Create(IUpdateEntry entry)
Parameters
entry
IUpdateEntry
Returns
Delete(IUpdateEntry)
Deletes a row
public virtual IKafkaRowBag Delete(IUpdateEntry entry)
Parameters
entry
IUpdateEntry
Returns
Dispose()
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
public virtual void Dispose()
GetIntegerValueGenerator<TProperty>(IProperty, IReadOnlyList<IKafkaTable>)
public virtual KafkaIntegerValueGenerator<TProperty> GetIntegerValueGenerator<TProperty>(IProperty property, IReadOnlyList<IKafkaTable> tables)
Parameters
property
IPropertytables
IReadOnlyList<IKafkaTable>
Returns
- KafkaIntegerValueGenerator<TProperty>
Type Parameters
TProperty
SnapshotRows()
Create snapshot
public virtual IReadOnlyList<object?[]> SnapshotRows()
Returns
ThrowUpdateConcurrencyException(IUpdateEntry, Dictionary<IProperty, object?>)
Throws an exception indicating that concurrency conflicts were detected.
protected virtual void ThrowUpdateConcurrencyException(IUpdateEntry entry, Dictionary<IProperty, object?> concurrencyConflicts)
Parameters
entry
IUpdateEntryThe update entry which resulted in the conflict(s).
concurrencyConflicts
Dictionary<IProperty, object>The conflicting properties with their associated database values.
Update(IUpdateEntry)
Updates a row
public virtual IKafkaRowBag Update(IUpdateEntry entry)
Parameters
entry
IUpdateEntry