README

MongoDB adapter for upper/db

Please read the full docs, acknowledgements and examples at https://upper.io/v4/adapter/mongo/.

Documentation

Overview

    Package mongo wraps the gopkg.in/mgo.v2 MongoDB driver. See https://github.com/upper/db/adapter/mongo for documentation, particularities and usage examples.

    Index

    Constants

    View Source
    const Adapter = `mongo`

      Adapter holds the name of the mongodb adapter.

      Variables

      This section is empty.

      Functions

      func Open

      func Open(settings db.ConnectionURL) (db.Session, error)

        Open stablishes a new connection to a SQL server.

        Types

        type Collection

        type Collection struct {
        	// contains filtered or unexported fields
        }

          Collection represents a mongodb collection.

          func (*Collection) Count

          func (col *Collection) Count() (uint64, error)

          func (*Collection) Exists

          func (col *Collection) Exists() (bool, error)

            Exists returns true if the collection exists.

            func (*Collection) Find

            func (col *Collection) Find(terms ...interface{}) db.Result

              Find creates a result set with the given conditions.

              func (*Collection) Insert

              func (col *Collection) Insert(item interface{}) (db.InsertResult, error)

                Insert inserts a record (map or struct) into the collection.

                func (*Collection) InsertReturning

                func (col *Collection) InsertReturning(item interface{}) error

                func (*Collection) Name

                func (col *Collection) Name() string

                  Name returns the name of the table or tables that form the collection.

                  func (*Collection) Session

                  func (col *Collection) Session() db.Session

                  func (*Collection) Truncate

                  func (col *Collection) Truncate() error

                    Truncate deletes all rows from the table.

                    func (*Collection) UpdateReturning

                    func (col *Collection) UpdateReturning(item interface{}) error

                    type ConnectionURL

                    type ConnectionURL struct {
                    	User     string
                    	Password string
                    	Host     string
                    	Database string
                    	Options  map[string]string
                    }

                      ConnectionURL implements a MongoDB connection struct.

                      func ParseURL

                      func ParseURL(s string) (conn ConnectionURL, err error)

                        ParseURL parses s into a ConnectionURL struct.

                        func (ConnectionURL) String

                        func (c ConnectionURL) String() (s string)

                        type Source

                        type Source struct {
                        	db.Settings
                        	// contains filtered or unexported fields
                        }

                          Source represents a MongoDB database.

                          func (*Source) Clone

                          func (s *Source) Clone() (db.Session, error)

                            Clone returns a cloned db.Session session.

                            func (*Source) Close

                            func (s *Source) Close() error

                              Close terminates the current database session.

                              func (*Source) Collection

                              func (s *Source) Collection(name string) db.Collection

                                Collection returns a collection by name.

                                func (*Source) Collections

                                func (s *Source) Collections() (cols []db.Collection, err error)

                                  Collections returns a list of non-system tables from the database.

                                  func (*Source) ConnectionURL

                                  func (s *Source) ConnectionURL() db.ConnectionURL

                                  func (*Source) Context

                                  func (s *Source) Context() context.Context

                                  func (*Source) Delete

                                  func (s *Source) Delete(db.Record) error

                                  func (*Source) Driver

                                  func (s *Source) Driver() interface{}

                                    Driver returns the underlying *mgo.Session instance.

                                    func (*Source) Get

                                    func (s *Source) Get(db.Record, interface{}) error

                                    func (*Source) Name

                                    func (s *Source) Name() string

                                      Name returns the name of the database.

                                      func (*Source) Open

                                      func (s *Source) Open(connURL db.ConnectionURL) error

                                        Open attempts to connect to the database.

                                        func (*Source) Ping

                                        func (s *Source) Ping() error

                                          Ping checks whether a connection to the database is still alive by pinging it, establishing a connection if necessary.

                                          func (*Source) Reset

                                          func (s *Source) Reset()

                                          func (*Source) SQL

                                          func (s *Source) SQL() db.SQL

                                          func (*Source) Save

                                          func (s *Source) Save(db.Record) error

                                          func (*Source) SetConnMaxLifetime

                                          func (s *Source) SetConnMaxLifetime(time.Duration)

                                            SetConnMaxLifetime is not supported.

                                            func (*Source) SetMaxIdleConns

                                            func (s *Source) SetMaxIdleConns(int)

                                              SetMaxIdleConns is not supported.

                                              func (*Source) SetMaxOpenConns

                                              func (s *Source) SetMaxOpenConns(int)

                                                SetMaxOpenConns is not supported.

                                                func (*Source) Tx

                                                func (s *Source) Tx(func(db.Session) error) error

                                                func (*Source) TxContext

                                                func (s *Source) TxContext(context.Context, func(tx db.Session) error, *sql.TxOptions) error

                                                func (*Source) WithContext

                                                func (s *Source) WithContext(ctx context.Context) db.Session