Class: Solace::Composers::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/solace/composers/base.rb

Overview

A Base class for all composers

Since:

  • 0.0.3

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params) ⇒ Base

Initialize the composer

Parameters:

  • params (Hash)

    Parameters to pass to the composer constructor

Since:

  • 0.0.3



24
25
26
27
28
# File 'lib/solace/composers/base.rb', line 24

def initialize(params)
  @params = params
  @account_context = Utils::AccountContext.new
  setup_accounts
end

Instance Attribute Details

#account_contextUtils::AccountContext

Returns The AccountContext instance for the composer.

Returns:

Since:

  • 0.0.3



19
20
21
# File 'lib/solace/composers/base.rb', line 19

def 
  @account_context
end

#paramsHash

Returns The parameters passed to the composer.

Returns:

  • (Hash)

    The parameters passed to the composer

Since:

  • 0.0.3



13
14
15
# File 'lib/solace/composers/base.rb', line 13

def params
  @params
end

Instance Method Details

#build_instruction(indices) ⇒ void

This method returns an undefined value.

Build instruction with resolved account indices

Raises:

  • (NotImplementedError)

Since:

  • 0.0.3



40
41
42
# File 'lib/solace/composers/base.rb', line 40

def build_instruction(indices)
  raise NotImplementedError, 'Subclasses must implement build_instruction method'
end

#setup_accountsvoid

This method returns an undefined value.

Setup accounts required for this instruction

Raises:

  • (NotImplementedError)

Since:

  • 0.0.3



33
34
35
# File 'lib/solace/composers/base.rb', line 33

def setup_accounts
  raise NotImplementedError, 'Subclasses must implement setup_accounts method'
end