Class: ActiveCypher::Bolt::Messaging::Run

Inherits:
Message
  • Object
show all
Defined in:
lib/active_cypher/bolt/messaging.rb

Overview

The RUN message. Because what else would you do with a database connection?

Constant Summary collapse

SIGNATURE =
0x10

Instance Attribute Summary

Attributes inherited from Message

#fields, #signature

Instance Method Summary collapse

Methods inherited from Message

#==, inherited

Constructor Details

#initialize(query, parameters, metadata = {}) ⇒ Run

metadata may include bookmarks, tx_timeout, tx_metadata, mode, db



107
108
109
110
111
112
113
114
115
# File 'lib/active_cypher/bolt/messaging.rb', line 107

def initialize(query, parameters,  = {})
  meta = Messaging.normalize_map()
  params = Messaging.normalize_map(parameters)

  # Neo4j mode normalization: single-char 'r' or 'w'
  meta['mode'] = meta['mode'][0] if meta['mode'].is_a?(String) && meta['mode'].length > 1

  super(SIGNATURE, [query, params, meta])
end

Instance Method Details

#metadataObject



119
# File 'lib/active_cypher/bolt/messaging.rb', line 119

def    = fields[2]

#parametersObject



118
# File 'lib/active_cypher/bolt/messaging.rb', line 118

def parameters = fields[1]

#queryObject



117
# File 'lib/active_cypher/bolt/messaging.rb', line 117

def query      = fields[0]