Class SupportCaseRepositoryCollection
MongoDB collection for support cases. Default collection name SupportCase (override via
SupportCaseCollectionName).
public class SupportCaseRepositoryCollection : DiskRepositoryCollectionBase<SupportCaseEntity>, ISupportCaseRepositoryCollection, IDiskRepositoryCollection<SupportCaseEntity>, IDiskRepositoryCollection<SupportCaseEntity, ObjectId>, IRepositoryCollection<SupportCaseEntity, ObjectId>, IReadOnlyRepositoryCollection<SupportCaseEntity, ObjectId>, IRepositoryCollection, IReadOnlyRepositoryCollection
- Inheritance
-
RepositoryCollectionBaseDiskRepositoryCollectionBase<SupportCaseEntity>SupportCaseRepositoryCollection
- Implements
-
IDiskRepositoryCollection<SupportCaseEntity>IRepositoryCollectionIReadOnlyRepositoryCollection
- Inherited Members
-
DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.AddAsync(SupportCaseEntity, IClientSessionHandle)DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.TryAddAsync(SupportCaseEntity, IClientSessionHandle)DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.AddOrReplaceAsync(SupportCaseEntity, IClientSessionHandle)DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.ReplaceOneAsync(SupportCaseEntity, OneOption<SupportCaseEntity>, IClientSessionHandle)DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.ReplaceOneAsync(SupportCaseEntity, FilterDefinition<SupportCaseEntity>, OneOption<SupportCaseEntity>, IClientSessionHandle)DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.UpdateOneAsync(ObjectId, UpdateDefinition<SupportCaseEntity>, IClientSessionHandle)DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.UpdateOneAsync(FilterDefinition<SupportCaseEntity>, UpdateDefinition<SupportCaseEntity>, OneOption<SupportCaseEntity>, IClientSessionHandle)DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.UpdateManyAsync(FilterDefinition<SupportCaseEntity>, UpdateDefinition<SupportCaseEntity>, IClientSessionHandle)DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.DeleteOneAsync(ObjectId, IClientSessionHandle)DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.DeleteOneAsync(FilterDefinition<SupportCaseEntity>, OneOption<SupportCaseEntity>, IClientSessionHandle)DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.DeleteManyAsync(FilterDefinition<SupportCaseEntity>, IClientSessionHandle)DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.GetCollection()DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.DropCollectionAsync()DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.GetDirtyAsync()DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.GetFailedIndices()DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.DropEmptyAsync(IMongoCollection<SupportCaseEntity>)DiskRepositoryCollectionBase<SupportCaseEntity, ObjectId>.FetchSizeRepositoryCollectionBase<SupportCaseEntity, ObjectId>._mongoDbServiceFactoryRepositoryCollectionBase<SupportCaseEntity, ObjectId>._loggerRepositoryCollectionBase<SupportCaseEntity, ObjectId>._databaseContextRepositoryCollectionBase<SupportCaseEntity, ObjectId>._mongoDbServiceRepositoryCollectionBase<SupportCaseEntity, ObjectId>.InitAsync(IMongoCollection<SupportCaseEntity>)RepositoryCollectionBase<SupportCaseEntity, ObjectId>.ProtectedCollectionNameRepositoryCollectionBase<SupportCaseEntity, ObjectId>.CollectionNameRepositoryCollectionBase<SupportCaseEntity, ObjectId>.DatabasePartRepositoryCollectionBase<SupportCaseEntity, ObjectId>.ConfigurationNameRepositoryCollectionBase<SupportCaseEntity, ObjectId>.AutoCleanRepositoryCollectionBase<SupportCaseEntity, ObjectId>.CleanOnStartupRepositoryCollectionBase<SupportCaseEntity, ObjectId>.CreateCollectionStrategyRepositoryCollectionBase<SupportCaseEntity, ObjectId>.IndicesRepositoryCollectionBase<SupportCaseEntity, ObjectId>.CoreIndicesRepositoryCollectionBase<SupportCaseEntity, ObjectId>.TypesRepositoryCollectionBase.ConfigurationNameRepositoryCollectionBase.ActionEvent
Remarks
The team index is not unique and leads on TeamKey rather than on the case id, because every read is scoped by team — a case id alone never identifies a case. The case index is unique on the pair for the same reason: two teams may not share one case id, and a lookup that forgot the team would otherwise still find something.
Constructors
SupportCaseRepositoryCollection(IMongoDbServiceFactory, ILogger<SupportCaseRepositoryCollection>, IOptions<ThargaTeamOptions>)
public SupportCaseRepositoryCollection(IMongoDbServiceFactory mongoDbServiceFactory, ILogger<SupportCaseRepositoryCollection> logger, IOptions<ThargaTeamOptions> options = null)
Parameters
mongoDbServiceFactoryIMongoDbServiceFactoryloggerILogger<SupportCaseRepositoryCollection>optionsIOptions<ThargaTeamOptions>
Properties
CollectionName
public override string CollectionName { get; }
Property Value
Indices
public override IEnumerable<CreateIndexModel<SupportCaseEntity>> Indices { get; }
Property Value
- IEnumerable<CreateIndexModel<SupportCaseEntity>>