lib/mongoid/shell/properties/password.rb in mongoid-shell-0.3.0 vs lib/mongoid/shell/properties/password.rb in mongoid-shell-0.4.0
- old
+ new
@@ -3,19 +3,33 @@
module Properties
module Password
attr_accessor :password
# current password
- def password
- @password || begin
- if Mongoid::Shell.mongoid3?
+ if ::Mongoid::Compatibility::Version.mongoid3?
+ def password
+ @password || begin
return nil unless session.context.cluster.auth && session.context.cluster.auth.first
session.context.cluster.auth.first[1][1]
- else
+ end
+ end
+ elsif ::Mongoid::Compatibility::Version.mongoid4?
+ def password
+ @password || begin
node = session.cluster.nodes.first
- raise Mongoid::Shell::Errors::SessionNotConnectedError unless node
+ fail Mongoid::Shell::Errors::SessionNotConnectedError unless node
return nil if !node.credentials.key?(db) || node.credentials[db].empty?
node.credentials[db][1]
+ end
+ end
+ else
+ def password
+ @password || begin
+ server = session.cluster.servers.first
+ fail Mongoid::Shell::Errors::SessionNotConnectedError unless server
+ server.context.with_connection do |connection|
+ connection.options[:password]
+ end
end
end
end
end
end