Table of Contents

Class UserNoticeItemCollection

Namespace
Tharga.Team.MongoDB
Assembly
Tharga.Team.MongoDB.dll

Users' notices, default collection name UserNoticeItem.

public class UserNoticeItemCollection : DiskRepositoryCollectionBase<UserNoticeItemEntity>, IUserNoticeItemCollection, IDiskRepositoryCollection<UserNoticeItemEntity>, IDiskRepositoryCollection<UserNoticeItemEntity, ObjectId>, IRepositoryCollection<UserNoticeItemEntity, ObjectId>, IReadOnlyRepositoryCollection<UserNoticeItemEntity, ObjectId>, IRepositoryCollection, IReadOnlyRepositoryCollection
Inheritance
RepositoryCollectionBase
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>
DiskRepositoryCollectionBase<UserNoticeItemEntity, ObjectId>
DiskRepositoryCollectionBase<UserNoticeItemEntity>
UserNoticeItemCollection
Implements
IDiskRepositoryCollection<UserNoticeItemEntity>
IDiskRepositoryCollection<UserNoticeItemEntity, ObjectId>
IRepositoryCollection<UserNoticeItemEntity, ObjectId>
IReadOnlyRepositoryCollection<UserNoticeItemEntity, ObjectId>
IRepositoryCollection
IReadOnlyRepositoryCollection
Inherited Members
DiskRepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.GetCollection()
DiskRepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.DropCollectionAsync()
DiskRepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.GetDirtyAsync()
DiskRepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.GetFailedIndices()
DiskRepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.DropEmptyAsync(IMongoCollection<UserNoticeItemEntity>)
DiskRepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.FetchSize
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>._mongoDbServiceFactory
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>._logger
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>._databaseContext
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>._mongoDbService
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.InitAsync(IMongoCollection<UserNoticeItemEntity>)
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.ProtectedCollectionName
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.CollectionName
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.DatabasePart
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.ConfigurationName
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.AutoClean
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.CleanOnStartup
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.CreateCollectionStrategy
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.Indices
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.CoreIndices
RepositoryCollectionBase<UserNoticeItemEntity, ObjectId>.Types
RepositoryCollectionBase.ConfigurationName
RepositoryCollectionBase.ActionEvent

Remarks

The unique index on occurrence and user is what keeps an occurrence from reaching anyone twice, however often and wherever it is raised; it lasts as long as the notice is kept, UserNoticeRetention after it was mailed. What waits is found by user, stream and status.

Constructors

UserNoticeItemCollection(IMongoDbServiceFactory, ILogger<UserNoticeItemCollection>, IOptions<ThargaTeamOptions>)

Creates the collection under the configured name and retention.

public UserNoticeItemCollection(IMongoDbServiceFactory mongoDbServiceFactory, ILogger<UserNoticeItemCollection> logger, IOptions<ThargaTeamOptions> options = null)

Parameters

mongoDbServiceFactory IMongoDbServiceFactory
logger ILogger<UserNoticeItemCollection>
options IOptions<ThargaTeamOptions>

Properties

CollectionName

public override string CollectionName { get; }

Property Value

string

Indices

public override IEnumerable<CreateIndexModel<UserNoticeItemEntity>> Indices { get; }

Property Value

IEnumerable<CreateIndexModel<UserNoticeItemEntity>>