Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( FailedToConnectError = errors.New("failed to connect to MongoDB") AlreadyConnectedError = errors.New("connection to MongoDB already established") NotConnectedError = errors.New("connection to MongoDB not established") FailedToDisconnectError = errors.New("failed to disconnect from MongoDB") FailedToCreateDocumentError = errors.New("failed to create document") FailedToStartSessionError = errors.New("failed to start session") FailedToPingError = errors.New("failed to ping MongoDB") FailedToCreateSingleFieldIndexError = errors.New("failed to create single field index") FailedToCreateCompoundIndexError = errors.New("failed to create compound index") )
Functions ¶
func LoadMongoDBName ¶
LoadMongoDBName load MongoDB model name from environment variables
func LoadMongoDBURI ¶
LoadMongoDBURI load MongoDB URI from environment variables
Types ¶
type Collection ¶
type Collection struct { Name string SingleFieldIndexes *[]*SingleFieldIndex CompoundIndexes *[]*CompoundFieldIndex }
Collection represents a MongoDB collection
func NewCollection ¶
func NewCollection( name string, singleFieldIndexes *[]*SingleFieldIndex, compoundIndexes *[]*CompoundFieldIndex, ) *Collection
NewCollection creates a new MongoDB collection
func (*Collection) CreateCollection ¶
func (c *Collection) CreateCollection(database *mongo.Database) ( collection *mongo.Collection, err error, )
CreateCollection creates the collection
type CompoundFieldIndex ¶
type CompoundFieldIndex struct {
Model *mongo.IndexModel
}
CompoundFieldIndex represents a compound field index
func NewCompoundFieldIndex ¶
func NewCompoundFieldIndex( fieldIndexes []*FieldIndex, unique bool, ) *CompoundFieldIndex
NewCompoundFieldIndex creates a new compound field index
type ConnectionHandler ¶
type ConnectionHandler interface { Connect() (*mongo.Client, error) GetClient() (*mongo.Client, error) Disconnect() }
ConnectionHandler interface
type DefaultConnectionHandler ¶
type DefaultConnectionHandler struct { Ctx context.Context Cancel context.CancelFunc ClientOptions *options.ClientOptions Client *mongo.Client }
DefaultConnectionHandler struct
func NewDefaultConnectionHandler ¶
func NewDefaultConnectionHandler(config *Config) DefaultConnectionHandler
NewDefaultConnectionHandler creates a new connection
func (DefaultConnectionHandler) Connect ¶
func (d DefaultConnectionHandler) Connect() (*mongo.Client, error)
Connect returns a new MongoDB client
func (DefaultConnectionHandler) Disconnect ¶
func (d DefaultConnectionHandler) Disconnect()
Disconnect closes the MongoDB client connection
type FieldIndex ¶
func NewFieldIndex ¶
func NewFieldIndex(name string, order Order) *FieldIndex
NewFieldIndex creates a new field index
type Logger ¶
type Logger struct {
// contains filtered or unexported fields
}
Logger is the logger for the MongoDB model
func NewLogger ¶
func NewLogger(logger commonlogger.Logger) Logger
NewLogger is the logger for the MongoDB model
func (Logger) ConnectedToMongoDB ¶
func (l Logger) ConnectedToMongoDB()
ConnectedToMongoDB logs a success message when the server connects from MongoDB
func (Logger) DisconnectedFromMongoDB ¶
func (l Logger) DisconnectedFromMongoDB()
DisconnectedFromMongoDB logs a success message when the server disconnects from MongoDB
type SingleFieldIndex ¶
type SingleFieldIndex struct {
Model *mongo.IndexModel
}
func NewSingleFieldIndex ¶
func NewSingleFieldIndex(fieldIndex FieldIndex, unique bool) *SingleFieldIndex
NewSingleFieldIndex creates a new single field index