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