Class: SurrealDB::Connections::Base
- Inherits:
-
Object
- Object
- SurrealDB::Connections::Base
- Defined in:
- lib/surrealdb/connections/base.rb
Overview
Abstract base class for SurrealDB transport connections. Subclasses must implement #connect, #close, and #send_request.
Direct Known Subclasses
Instance Attribute Summary collapse
- #rpc ⇒ Protocol::RPC readonly
-
#url ⇒ String
readonly
Base URL.
Instance Method Summary collapse
-
#close ⇒ void
Closes the transport connection.
-
#connect ⇒ void
Opens the transport connection.
- #connected? ⇒ Boolean
-
#initialize(url, **_options) ⇒ Base
constructor
A new instance of Base.
-
#send_request(method, params = []) ⇒ Object
Sends an RPC method call and returns the result.
-
#supports_live_queries? ⇒ Boolean
Whether this connection supports live queries.
Constructor Details
#initialize(url, **_options) ⇒ Base
Returns a new instance of Base.
14 15 16 17 18 |
# File 'lib/surrealdb/connections/base.rb', line 14 def initialize(url, **) @url = url @rpc = Protocol::RPC.new @connected = false end |
Instance Attribute Details
#rpc ⇒ Protocol::RPC (readonly)
12 13 14 |
# File 'lib/surrealdb/connections/base.rb', line 12 def rpc @rpc end |
#url ⇒ String (readonly)
Returns base URL.
9 10 11 |
# File 'lib/surrealdb/connections/base.rb', line 9 def url @url end |
Instance Method Details
#close ⇒ void
This method returns an undefined value.
Closes the transport connection.
28 29 30 |
# File 'lib/surrealdb/connections/base.rb', line 28 def close raise NotImplementedError end |
#connect ⇒ void
This method returns an undefined value.
Opens the transport connection.
22 23 24 |
# File 'lib/surrealdb/connections/base.rb', line 22 def connect raise NotImplementedError end |
#connected? ⇒ Boolean
41 42 43 |
# File 'lib/surrealdb/connections/base.rb', line 41 def connected? @connected end |
#send_request(method, params = []) ⇒ Object
Sends an RPC method call and returns the result.
36 37 38 |
# File 'lib/surrealdb/connections/base.rb', line 36 def send_request(method, params = []) raise NotImplementedError end |
#supports_live_queries? ⇒ Boolean
Whether this connection supports live queries.
47 48 49 |
# File 'lib/surrealdb/connections/base.rb', line 47 def supports_live_queries? false end |