Versions in this module Expand all Collapse all v1 v1.0.7 Jul 21, 2021 v1.0.6 Jul 20, 2021 Changes in this version + type ExtraConfig struct + IndependentHosts bool + ShuffleHosts bool v1.0.5 Nov 6, 2019 Changes in this version + var DialMaxRetries = 3 + var DialRetrySleep = 10 * time.Second + var DialTimeout = 10 * time.Second + func AddTlsHandler(dialInfo *mgo.DialInfo, cert []byte, insecureSkipVerify bool) + func ParseURL(url string) (*mgo.DialInfo, error) v1.0.4 Nov 6, 2019 Changes in this version type ISession + func DialWithTls(url string, cert []byte) (ISession, error) v1.0.3 Jun 10, 2019 Changes in this version + func SetLogger(logger log.ILogger) v1.0.2 May 15, 2019 v1.0.1 Nov 12, 2018 Changes in this version + var ErrCursor = mgo.ErrCursor + var ErrNotFound = mgo.ErrNotFound + func IsDup(err error) bool + type BulkResult struct + Matched int + Modified int + type Change struct + Remove bool + ReturnNew bool + Update interface{} + Upsert bool + type ChangeInfo struct + Matched int + Removed int + Updated int + UpsertedId interface{} + type CollectionInfo struct + Capped bool + DisableIdIndex bool + ForceIdIndex bool + MaxBytes int + MaxDocs int + StorageEngine interface{} + ValidationAction string + ValidationLevel string + Validator interface{} + type CollectionMock struct + func MockCollection(col ...ICollection) *CollectionMock + func (m *CollectionMock) Clear(funcName string) + func (m *CollectionMock) Find(query interface{}) IQuery + func (m *CollectionMock) Insert(docs ...interface{}) error + func (m *CollectionMock) Times(funcName string) int + func (m *CollectionMock) WhenFind(query interface{}, output IQuery) + func (m *CollectionMock) WhenInsert(docs interface{}, output error) + type DatabaseMock struct + func MockDb(db ...IDatabase) *DatabaseMock + func (m *DatabaseMock) C(collectionName string) ICollection + func (m *DatabaseMock) Clear(funcName string) + func (m *DatabaseMock) Run(cmd interface{}, result interface{}) error + func (m *DatabaseMock) Times(funcName string) int + func (m *DatabaseMock) WhenC(colName string, output ICollection) + func (m *DatabaseMock) WhenRun(cmd interface{}, output error) + type GlobalConfig struct + DialMaxRetries int + DialRetryTimeout time.Duration + func Config() *GlobalConfig + type IBulk interface + Insert func(docs ...interface{}) IBulk + Remove func(selectors ...interface{}) IBulk + RemoveAll func(selectors ...interface{}) IBulk + Run func() (*BulkResult, error) + Unordered func() IBulk + Update func(pairs ...interface{}) IBulk + UpdateAll func(pairs ...interface{}) IBulk + Upsert func(pairs ...interface{}) IBulk + func NewBulk(col ...ICollection) IBulk + type ICollection interface + Bulk func() IBulk + C func() *mgo.Collection + Count func() (n int, err error) + Create func(info *CollectionInfo) error + Database func() IDatabase + DropCollection func() error + DropIndex func(key ...string) error + DropIndexName func(name string) error + EnsureIndex func(index Index) error + EnsureIndexKey func(key ...string) error + Find func(query interface{}) IQuery + FindId func(id interface{}) IQuery + FullName func() string + Indexes func() (indexes []Index, err error) + Insert func(docs ...interface{}) error + Name func() string + NewIter func(session ISession, firstBatch []bson.Raw, cursorId int64, err error) IIter + Pipe func(pipeline interface{}) IPipe + Remove func(selector interface{}) error + RemoveAll func(selector interface{}) (info *ChangeInfo, err error) + RemoveId func(id interface{}) error + Repair func() IIter + Update func(selector interface{}, update interface{}) error + UpdateAll func(selector interface{}, update interface{}) (info *ChangeInfo, err error) + UpdateId func(id interface{}, update interface{}) error + Upsert func(selector interface{}, update interface{}) (info *ChangeInfo, err error) + UpsertId func(id interface{}, update interface{}) (info *ChangeInfo, err error) + With func(s ISession) ICollection + func NewCollection(col ...*mgo.Collection) ICollection + type ICollectionExtensions interface + BulkUpsert func(pairs ...interface{}) (*BulkResult, error) + MustEnsureIndex func(index Index) + type IDatabase interface + AddUser func(username, password string, readOnly bool) error + C func(name string) ICollection + CollectionNames func() (names []string, err error) + DB func() *mgo.Database + DropDatabase func() error + FindRef func(ref *mgo.DBRef) IQuery + GridFS func(prefix string) *mgo.GridFS + Login func(user, pass string) error + Logout func() + Name func() string + RemoveUser func(user string) error + Run func(cmd interface{}, result interface{}) error + Session func() ISession + UpsertUser func(user *mgo.User) error + With func(s ISession) IDatabase + func NewDatabase(db *mgo.Database) IDatabase + type IDatabaseExtensions interface + MustEnsureIndex func(index Index, collection string) + type IIter interface + All func(result interface{}) error + Close func() error + Done func() bool + Err func() error + For func(result interface{}, f func() error) (err error) + Next func(result interface{}) bool + Timeout func() bool + type IPipe interface + All func(result interface{}) error + AllowDiskUse func() IPipe + Batch func(n int) IPipe + Explain func(result interface{}) error + Iter func() IIter + One func(result interface{}) error + P func() *mgo.Pipe + func NewPipe(p ...*mgo.Pipe) IPipe + type IQuery interface + All func(result interface{}) error + Apply func(change Change, result interface{}) (info *ChangeInfo, err error) + Batch func(n int) IQuery + Comment func(comment string) IQuery + Count func() (n int, err error) + Distinct func(key string, result interface{}) error + Explain func(result interface{}) error + Hint func(indexKey ...string) IQuery + Iter func() IIter + Limit func(n int) IQuery + LogReplay func() IQuery + MapReduce func(job *MapReduce, result interface{}) (info *MapReduceInfo, err error) + One func(result interface{}) error + Prefetch func(p float64) IQuery + Q func() *mgo.Query + Select func(selector interface{}) IQuery + SetMaxScan func(n int) IQuery + SetMaxTime func(d time.Duration) IQuery + Skip func(n int) IQuery + Snapshot func() IQuery + Sort func(fields ...string) IQuery + Tail func(timeout time.Duration) IIter + func NewQuery(q ...*mgo.Query) IQuery + type IQueryPageExtension interface + Page func(p ...*pages.Page) IQuery + WrapPage func(result interface{}, p ...*pages.Page) (*pages.Paginated, error) + type ISession interface + BuildInfo func() (info mgo.BuildInfo, err error) + Clone func() ISession + Close func() + Copy func() ISession + DB func(name string) IDatabase + DatabaseNames func() (names []string, err error) + EnsureSafe func(safe *mgo.Safe) + FindRef func(ref *mgo.DBRef) IQuery + Fsync func(async bool) error + FsyncLock func() error + FsyncUnlock func() error + LiveServers func() (addrs []string) + Login func(cred *mgo.Credential) error + LogoutAll func() + Mode func() mgo.Mode + New func() ISession + Ping func() error + Refresh func() + ResetIndexCache func() + Run func(cmd interface{}, result interface{}) error + S func() *mgo.Session + Safe func() (safe *mgo.Safe) + SelectServers func(tags ...bson.D) + SetBatch func(n int) + SetBypassValidation func(bypass bool) + SetCursorTimeout func(d time.Duration) + SetMode func(consistency mgo.Mode, refresh bool) + SetPoolLimit func(limit int) + SetPrefetch func(p float64) + SetSafe func(safe *mgo.Safe) + SetSocketTimeout func(d time.Duration) + SetSyncTimeout func(d time.Duration) + func Dial(url string) (ISession, error) + func DialWithInfo(info *mgo.DialInfo) (ISession, error) + func DialWithTimeout(url string, timeout time.Duration) (ISession, error) + func NewSession(s ...*mgo.Session) ISession + type ISessionExtensions interface + SetDefaultSafe func() + type Index struct + Background bool + Bits int + BucketSize float64 + Collation *mgo.Collation + DefaultLanguage string + DropDups bool + ExpireAfter time.Duration + Key []string + LanguageOverride string + Max int + Maxf float64 + Min int + Minf float64 + Name string + Sparse bool + Unique bool + Weights map[string]int + type MapReduce struct + Finalize string + Map string + Out interface{} + Reduce string + Scope interface{} + Verbose bool + type MapReduceInfo struct + Collection string + Database string + EmitCount int + InputCount int + OutputCount int + Time int64 + VerboseTime *mgo.MapReduceTime + type MapReduceTime struct + EmitLoop int64 + Map int64 + Total int64 + type MockBase struct + func (m *MockBase) BulkTimes(names []string, expected []int) error + func (m *MockBase) Times(funcName string) int + func (m *MockBase) When(funcName string, f testutils.WhenHandler) + func (m *MockBase) WhenReturn(funcName string, retArgs ...interface{}) + type QueryMock struct + func MockQuery(q ...IQuery) *QueryMock + func (m *QueryMock) All(result interface{}) error + func (m *QueryMock) Count() (int, error) + func (m *QueryMock) Limit(n int) IQuery + func (m *QueryMock) Page(page ...*pages.Page) IQuery + func (m *QueryMock) Skip(n int) IQuery + func (m *QueryMock) Sort(fields ...string) IQuery + func (m *QueryMock) WrapPage(result interface{}, page ...*pages.Page) (*pages.Paginated, error) + type SessionMock struct + func MockSession(q ...ISession) *SessionMock + func (s *SessionMock) Clone() ISession + func (s *SessionMock) Copy() ISession + func (s *SessionMock) DB(name string) IDatabase + func (s *SessionMock) FindRef(ref *mgo.DBRef) IQuery + func (s *SessionMock) New() ISession