Documentation ¶
Index ¶
- type Client
- func (client *Client) CountDocumentsInMongo(databaseName string, collection string, result interface{}) (int, error)
- func (client *Client) CreateNewCollection(databaseName, collectionName string) error
- func (client *Client) CreateUniqueIndex(collectionName string, databaseName string, fieldName string, unique bool) error
- func (client *Client) DeleteCollectionMongo(databaseName string, collection string) error
- func (client *Client) DeleteDocumentMongo(databaseName string, filter bson.M, collection string) (interface{}, error)
- func (client *Client) FindManyInMongo(databaseName string, filter bson.M, collection string, sort bson.D, ...) error
- func (client *Client) FindOneInMongo(databaseName string, filter bson.M, collection string, sort bson.D, ...) (foundOne bool, err error)
- func (client *Client) InsertOneToMongo(databaseName string, data interface{}, collection string) (string, error)
- func (client *Client) IsValueInCollection(databaseName, collectionName, fieldName, fieldValue string) (bool, error)
- func (client *Client) StartSession() (session mongo.Session, err error)
- func (client *Client) UpdateOneInMongo(databaseName string, filter bson.M, update bson.M, collection string) (*mongo.UpdateResult, error)
- type ClientConfigData
- type MethodInterface
- type Repository
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
func ConnectToMongoDB ¶
func ConnectToMongoDB(mongoDBClientConfig *ClientConfigData) (*Client, error)
func (*Client) CountDocumentsInMongo ¶
func (*Client) CreateNewCollection ¶
func (*Client) CreateUniqueIndex ¶
func (*Client) DeleteCollectionMongo ¶
func (*Client) DeleteDocumentMongo ¶
func (*Client) FindManyInMongo ¶
func (*Client) FindOneInMongo ¶
func (*Client) InsertOneToMongo ¶
func (*Client) IsValueInCollection ¶
func (client *Client) IsValueInCollection(databaseName, collectionName, fieldName, fieldValue string) (bool, error)
Check if value for field name (key) exists in collection (eg. is email address xyz already registered)
func (*Client) StartSession ¶
type ClientConfigData ¶
type ClientConfigData struct { Scheme string Username string Password string Host string Port string }
func ClientConfig ¶
func ClientConfig() (mongoDBClientConfig *ClientConfigData, err error)
Retrieve configuration data (eg.host, port, etc.) from .env file for production settings only Base parameter for dependency injection of mongodb client (production)
func (*ClientConfigData) GetURI ¶
func (mongoDBClientConfig *ClientConfigData) GetURI() (string, error)
GetURI returns the MongoDB connection URI based on the configuration.
type MethodInterface ¶
type MethodInterface struct {
RepositoryInterface Repository
}
func NewMongoDBMethodInterface ¶
func NewMongoDBMethodInterface(mongoClient *Client) *MethodInterface
type Repository ¶
type Repository interface { InsertOneToMongo(databaseName string, data interface{}, collection string) (string, error) IsValueInCollection(databaseName string, collectionName string, fieldName, fieldValue string) (bool, error) UpdateOneInMongo(databaseName string, filter bson.M, update bson.M, collection string) (*mongo.UpdateResult, error) FindOneInMongo(databaseName string, filter bson.M, collection string, sort bson.D, result interface{}) (foundOne bool, err error) FindManyInMongo(databaseName string, filter bson.M, collection string, sort bson.D, result interface{}) error DeleteDocumentMongo(databaseName string, filter bson.M, collection string) (interface{}, error) DeleteCollectionMongo(databaseName string, collection string) error CreateNewCollection(databaseName, collectionName string) error CountDocumentsInMongo(databaseName string, collection string, result interface{}) (int, error) CreateUniqueIndex(collectionName string, databaseName string, fieldName string, unique bool) error StartSession() (session mongo.Session, err error) }
////////////////////////////////////////////////////////////////////// Setup interface for database repository utilizing Dependency Injection ///////////////////
Source Files ¶
- client_mongoDB.go
- count_documents_mongodb.go
- create_collection_mongodb.go
- create_unique_index_mongoDB.go
- delete_collection_mongodb.go
- delete_document_mongodb.go
- find_many_mongo.go
- find_one_mongo.go
- has_value_mongoDB.go
- insert_one_mongoDB.go
- interface_mongoDB.go
- production_config_mongoDB.go
- start_session_mongoDB.go
- update_one_mongodb.go
Click to show internal directories.
Click to hide internal directories.