class OrientdbClient::Client
Attributes
http_client[R]
Public Class Methods
new(options)
click to toggle source
# File lib/orientdb_client.rb, line 26 def initialize(options) options = { host: 'localhost', port: '2480' }.merge(options) @host = options[:host] @port = options[:port] adapter_klass = if options[:adapter] HttpAdapters.const_get(options[:adapter]) else HttpAdapters::TyphoeusAdapter end @instrumenter = options[:instrumenter] || Instrumenters::Noop @http_client = adapter_klass.new(timeout: options[:timeout]) @node = Node.new(host: @host, port: @port, http_client: @http_client, client: self) @connected = false self end
Public Instance Methods
alter_property(class_name, property_name, field, value)
click to toggle source
# File lib/orientdb_client.rb, line 85 def alter_property(class_name, property_name, field, value) @node.alter_property(class_name, property_name, field, value) end
command(sql)
click to toggle source
# File lib/orientdb_client.rb, line 121 def command(sql) @node.command(sql) end
connect(username:, password:, db:)
click to toggle source
# File lib/orientdb_client.rb, line 45 def connect(username:, password:, db:) raise ClientError.new('Already connected') if connected? @username = username @password = password @db = db @http_client.username = @username @http_client.password = @password @node.connect(@db) end
connected?()
click to toggle source
# File lib/orientdb_client.rb, line 125 def connected? @node.connected? end
create_class(name, options = {}) { |class_configurator| ... }
click to toggle source
# File lib/orientdb_client.rb, line 73 def create_class(name, options = {}) response = @node.create_class(name, options) if block_given? yield ClassConfigurator.new(name, @node) end response end
create_database(name, storage, type, options = {})
click to toggle source
# File lib/orientdb_client.rb, line 64 def create_database(name, storage, type, options = {}) raise ArgumentError, "Invalid database type: #{type}" unless DATABASE_TYPES.include?(type) @node.create_database(name, storage, type, options) end
create_property(class_name, property_name, type, options = {})
click to toggle source
# File lib/orientdb_client.rb, line 81 def create_property(class_name, property_name, type, options = {}) @node.create_property(class_name, property_name, type, options) end
database()
click to toggle source
# File lib/orientdb_client.rb, line 129 def database @node.database end
database_exists?(name)
click to toggle source
# File lib/orientdb_client.rb, line 105 def database_exists?(name) list_databases.include?(name) end
debug=(val)
click to toggle source
# File lib/orientdb_client.rb, line 133 def debug=(val) @node.debug = val end
delete_database(name, options = {})
click to toggle source
# File lib/orientdb_client.rb, line 69 def delete_database(name, options = {}) @node.delete_database(name, options) end
disconnect()
click to toggle source
# File lib/orientdb_client.rb, line 55 def disconnect raise ClientError.new('Not connected') unless connected? @username = nil @password = nil @db = nil @http_client.reset_credentials @node.disconnect end
drop_class(name)
click to toggle source
# File lib/orientdb_client.rb, line 97 def drop_class(name) @node.drop_class(name) end
get_class(name)
click to toggle source
# File lib/orientdb_client.rb, line 89 def get_class(name) @node.get_class(name) end
get_database(name, options = {})
click to toggle source
# File lib/orientdb_client.rb, line 101 def get_database(name, options = {}) @node.get_database(name, options) end
has_class?(name)
click to toggle source
# File lib/orientdb_client.rb, line 93 def has_class?(name) @node.has_class?(name) end
list_databases()
click to toggle source
# File lib/orientdb_client.rb, line 109 def list_databases @node.list_databases end
query(sql, options = {})
click to toggle source
# File lib/orientdb_client.rb, line 113 def query(sql, options = {}) @node.query(sql, options) end
query_unparsed(sql, options = {})
click to toggle source
# File lib/orientdb_client.rb, line 117 def query_unparsed(sql, options = {}) @node.query_unparsed(sql, options) end