![]() |
Storage Engine API
|
#include <collection.h>
Public Member Functions | |
virtual | ~Impl ()=0 |
virtual void | init (OperationContext *opCtx)=0 |
virtual bool | ok () const =0 |
virtual CollectionCatalogEntry * | getCatalogEntry ()=0 |
virtual const CollectionCatalogEntry * | getCatalogEntry () const =0 |
virtual CollectionInfoCache * | infoCache ()=0 |
virtual const CollectionInfoCache * | infoCache () const =0 |
virtual const NamespaceString & | ns () const =0 |
virtual OptionalCollectionUUID | uuid () const =0 |
virtual void | refreshUUID (OperationContext *opCtx)=0 |
virtual const IndexCatalog * | getIndexCatalog () const =0 |
virtual IndexCatalog * | getIndexCatalog ()=0 |
virtual const RecordStore * | getRecordStore () const =0 |
virtual RecordStore * | getRecordStore ()=0 |
virtual CursorManager * | getCursorManager () const =0 |
virtual bool | requiresIdIndex () const =0 |
virtual Snapshotted< BSONObj > | docFor (OperationContext *opCtx, const RecordId &loc) const =0 |
virtual bool | findDoc (OperationContext *opCtx, const RecordId &loc, Snapshotted< BSONObj > *out) const =0 |
virtual std::unique_ptr< SeekableRecordCursor > | getCursor (OperationContext *opCtx, bool forward) const =0 |
virtual std::vector< std::unique_ptr< RecordCursor > > | getManyCursors (OperationContext *opCtx) const =0 |
virtual void | deleteDocument (OperationContext *opCtx, StmtId stmtId, const RecordId &loc, OpDebug *opDebug, bool fromMigrate, bool noWarn, StoreDeletedDoc storeDeletedDoc)=0 |
virtual Status | insertDocuments (OperationContext *opCtx, std::vector< InsertStatement >::const_iterator begin, std::vector< InsertStatement >::const_iterator end, OpDebug *opDebug, bool enforceQuota, bool fromMigrate)=0 |
virtual Status | insertDocument (OperationContext *opCtx, const InsertStatement &doc, OpDebug *opDebug, bool enforceQuota, bool fromMigrate)=0 |
virtual Status | insertDocumentsForOplog (OperationContext *opCtx, const DocWriter *const *docs, Timestamp *timestamps, size_t nDocs)=0 |
virtual Status | insertDocument (OperationContext *opCtx, const BSONObj &doc, const std::vector< MultiIndexBlock *> &indexBlocks, bool enforceQuota)=0 |
virtual RecordId | updateDocument (OperationContext *opCtx, const RecordId &oldLocation, const Snapshotted< BSONObj > &oldDoc, const BSONObj &newDoc, bool enforceQuota, bool indexesAffected, OpDebug *opDebug, OplogUpdateEntryArgs *args)=0 |
virtual bool | updateWithDamagesSupported () const =0 |
virtual StatusWith< RecordData > | updateDocumentWithDamages (OperationContext *opCtx, const RecordId &loc, const Snapshotted< RecordData > &oldRec, const char *damageSource, const mutablebson::DamageVector &damages, OplogUpdateEntryArgs *args)=0 |
virtual StatusWith< CompactStats > | compact (OperationContext *opCtx, const CompactOptions *options)=0 |
virtual Status | truncate (OperationContext *opCtx)=0 |
virtual Status | validate (OperationContext *opCtx, ValidateCmdLevel level, bool background, std::unique_ptr< Lock::CollectionLock > collLk, ValidateResults *results, BSONObjBuilder *output)=0 |
virtual Status | touch (OperationContext *opCtx, bool touchData, bool touchIndexes, BSONObjBuilder *output) const =0 |
virtual void | cappedTruncateAfter (OperationContext *opCtx, RecordId end, bool inclusive)=0 |
virtual StatusWithMatchExpression | parseValidator (OperationContext *opCtx, const BSONObj &validator, MatchExpressionParser::AllowedFeatureSet allowedFeatures, boost::optional< ServerGlobalParams::FeatureCompatibility::Version > maxFeatureCompatibilityVersion=boost::none) const =0 |
virtual Status | setValidator (OperationContext *opCtx, BSONObj validator)=0 |
virtual Status | setValidationLevel (OperationContext *opCtx, StringData newLevel)=0 |
virtual Status | setValidationAction (OperationContext *opCtx, StringData newAction)=0 |
virtual StringData | getValidationLevel () const =0 |
virtual StringData | getValidationAction () const =0 |
virtual Status | updateValidator (OperationContext *opCtx, BSONObj newValidator, StringData newLevel, StringData newAction)=0 |
virtual bool | isCapped () const =0 |
virtual std::shared_ptr< CappedInsertNotifier > | getCappedInsertNotifier () const =0 |
virtual uint64_t | numRecords (OperationContext *opCtx) const =0 |
virtual uint64_t | dataSize (OperationContext *opCtx) const =0 |
virtual uint64_t | getIndexSize (OperationContext *opCtx, BSONObjBuilder *details, int scale)=0 |
virtual boost::optional< Timestamp > | getMinimumVisibleSnapshot ()=0 |
virtual void | setMinimumVisibleSnapshot (Timestamp name)=0 |
virtual bool | haveCappedWaiters ()=0 |
Returns true if there may be waiters. More... | |
virtual void | notifyCappedWaitersIfNeeded ()=0 |
Used to notify any waiters when new documents may be visible in the capped collection. More... | |
virtual const CollatorInterface * | getDefaultCollator () const =0 |
Private Member Functions | |
virtual DatabaseCatalogEntry * | dbce () const =0 |
virtual CollectionCatalogEntry * | details () const =0 |
virtual Status | aboutToDeleteCapped (OperationContext *opCtx, const RecordId &loc, RecordData data)=0 |
This will be called right before loc is deleted when wrapping. More... | |
virtual Status | recordStoreGoingToUpdateInPlace (OperationContext *opCtx, const RecordId &loc)=0 |
![]() | |
virtual | ~CappedCallback () |
![]() | |
virtual | ~UpdateNotifier () |
Private Attributes | |
friend | Collection |
|
pure virtualdefault |
|
privatepure virtual |
This will be called right before loc is deleted when wrapping.
If data is unowned, it is only valid inside of this call. If implementations wish to stash a pointer, they must copy it.
Implements mongo::CappedCallback.
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
privatepure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
privatepure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionMock, and mongo::CollectionImpl.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionMock, and mongo::CollectionImpl.
|
pure virtual |
Implemented in mongo::CollectionMock, and mongo::CollectionImpl.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionMock, and mongo::CollectionImpl.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionMock, and mongo::CollectionImpl.
|
pure virtual |
Implemented in mongo::CollectionMock, and mongo::CollectionImpl.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionMock, and mongo::CollectionImpl.
|
pure virtual |
Implemented in mongo::CollectionMock, and mongo::CollectionImpl.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Returns true if there may be waiters.
Implements mongo::CappedCallback.
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionMock, and mongo::CollectionImpl.
|
pure virtual |
Implemented in mongo::CollectionMock, and mongo::CollectionImpl.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Used to notify any waiters when new documents may be visible in the capped collection.
Implements mongo::CappedCallback.
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionMock, and mongo::CollectionImpl.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
privatepure virtual |
Implements mongo::UpdateNotifier.
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionMock, and mongo::CollectionImpl.
|
pure virtual |
Implemented in mongo::CollectionMock, and mongo::CollectionImpl.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
pure virtual |
Implemented in mongo::CollectionMock, and mongo::CollectionImpl.
|
pure virtual |
Implemented in mongo::CollectionImpl, and mongo::CollectionMock.
|
private |