Module: Mingo::Connection

Included in:
Mingo
Defined in:
lib/mingo/connection.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#collectionObject



28
29
30
31
32
# File 'lib/mingo/connection.rb', line 28

def collection
  @collection ||= db.collection(collection_name).tap { |col|
    col.extend Cursor::CollectionPlugin
  }
end

#dbObject



5
6
7
# File 'lib/mingo/connection.rb', line 5

def db
  (defined?(@db) && @db) or superclass.respond_to?(:db) ? superclass.db : nil
end

Instance Method Details

#collection_nameObject



24
25
26
# File 'lib/mingo/connection.rb', line 24

def collection_name
  self.name
end

#connect(dbname_or_uri, options = {}) ⇒ Object



13
14
15
16
17
18
19
20
21
22
# File 'lib/mingo/connection.rb', line 13

def connect(dbname_or_uri, options = {})
  self.collection = nil
  self.db = if dbname_or_uri.index('mongodb://') == 0
    connection = Mongo::Connection.from_uri(dbname_or_uri, options)
    auth = connection.auths.first
    connection.db(auth.fetch(:db_name) { auth.fetch("db_name") })
  else
    Mongo::Connection.new(nil, nil, options).db(dbname_or_uri)
  end
end

#connected?Boolean

Returns:

  • (Boolean)


9
10
11
# File 'lib/mingo/connection.rb', line 9

def connected?
  !!db
end