Class: DSP::Response

Inherits:
DSPBase show all
Defined in:
lib/dsp/dsp_protocol.rb

Overview

interface Response extends ProtocolMessage {

    /** Sequence number of the corresponding request. */
    request_seq: number;
    /** Outcome of the request.
        If true, the request was successful and the 'body' attribute may contain the result of the request.
        If the value is false, the attribute 'message' contains the error in short form and the 'body' may contain additional information (see 'ErrorResponse.body.error').
    */
    success: boolean;
    /** The command requested. */
    command: string;
    /** Contains the raw error in short form if 'success' is false.
        This raw error might be interpreted by the frontend and is not shown in the UI.
        Some predefined values exist.
        Values:
        'cancelled': request was cancelled.
        etc.
    */
    message?: string;
    /** Contains request result if success is true and optional error details if success is false. */
    body?: any;
}

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from DSPBase

#to_h, #to_json

Constructor Details

#initialize(initial_hash = nil) ⇒ Response

Returns a new instance of Response.



103
104
105
106
# File 'lib/dsp/dsp_protocol.rb', line 103

def initialize(initial_hash = nil)
  super
  @optional_method_names = %i[message body]
end

Instance Attribute Details

#bodyObject

type: number # type: boolean # type: string # type: string # type: any # type: number # type: string



101
102
103
# File 'lib/dsp/dsp_protocol.rb', line 101

def body
  @body
end

#commandObject

type: number # type: boolean # type: string # type: string # type: any # type: number # type: string



101
102
103
# File 'lib/dsp/dsp_protocol.rb', line 101

def command
  @command
end

#messageObject

type: number # type: boolean # type: string # type: string # type: any # type: number # type: string



101
102
103
# File 'lib/dsp/dsp_protocol.rb', line 101

def message
  @message
end

#request_seqObject

type: number # type: boolean # type: string # type: string # type: any # type: number # type: string



101
102
103
# File 'lib/dsp/dsp_protocol.rb', line 101

def request_seq
  @request_seq
end

#seqObject

type: number # type: boolean # type: string # type: string # type: any # type: number # type: string



101
102
103
# File 'lib/dsp/dsp_protocol.rb', line 101

def seq
  @seq
end

#successObject

type: number # type: boolean # type: string # type: string # type: any # type: number # type: string



101
102
103
# File 'lib/dsp/dsp_protocol.rb', line 101

def success
  @success
end

#typeObject

type: number # type: boolean # type: string # type: string # type: any # type: number # type: string



101
102
103
# File 'lib/dsp/dsp_protocol.rb', line 101

def type
  @type
end

Instance Method Details

#from_h!(value) ⇒ Object



108
109
110
111
112
113
114
115
116
117
118
# File 'lib/dsp/dsp_protocol.rb', line 108

def from_h!(value)
  value = {} if value.nil?
  self.request_seq = value['request_seq']
  self.success = value['success'] # Unknown type
  self.command = value['command']
  self.message = value['message']
  self.body = value['body']
  self.seq = value['seq']
  self.type = value['type']
  self
end