Class: Solana::Ruby::Kit::RpcSubscriptions::Client
- Inherits:
-
Object
- Object
- Solana::Ruby::Kit::RpcSubscriptions::Client
- Extended by:
- T::Sig
- Includes:
- Api::AccountNotifications, Api::LogsNotifications, Api::ProgramNotifications, Api::RootNotifications, Api::SignatureNotifications, Api::SlotNotifications
- Defined in:
- lib/solana/ruby/kit/rpc_subscriptions/client.rb
Overview
WebSocket subscription client for Solana. Mirrors TypeScript’s createSolanaRpcSubscriptions(url) factory.
Instance Attribute Summary collapse
-
#transport ⇒ Object
readonly
Returns the value of attribute transport.
Instance Method Summary collapse
- #close ⇒ Object
-
#initialize(url, headers: {}, ping_interval: 5.0) ⇒ Client
constructor
A new instance of Client.
Methods included from Api::SlotNotifications
Methods included from Api::SignatureNotifications
Methods included from Api::RootNotifications
Methods included from Api::ProgramNotifications
Methods included from Api::LogsNotifications
Methods included from Api::AccountNotifications
Constructor Details
#initialize(url, headers: {}, ping_interval: 5.0) ⇒ Client
Returns a new instance of Client.
43 44 45 46 47 |
# File 'lib/solana/ruby/kit/rpc_subscriptions/client.rb', line 43 def initialize(url, headers: {}, ping_interval: 5.0) @transport = T.let(Transport.new(url: url, headers: headers), Transport) @pinger = T.let(Autopinger.new(@transport, interval: ping_interval), Autopinger) @pinger.start end |
Instance Attribute Details
#transport ⇒ Object (readonly)
Returns the value of attribute transport.
34 35 36 |
# File 'lib/solana/ruby/kit/rpc_subscriptions/client.rb', line 34 def transport @transport end |
Instance Method Details
#close ⇒ Object
50 51 52 53 |
# File 'lib/solana/ruby/kit/rpc_subscriptions/client.rb', line 50 def close @pinger.stop @transport.close end |