Class: Cosmos::LimitsResponse

Inherits:
Object
  • Object
show all
Includes:
Api
Defined in:
lib/cosmos/packets/limits_response.rb

Overview

This class defines a #call method which is called when a PacketItem goes out of limits. This class must be subclassed and the call method implemented. Do NOT use this class directly.

Constant Summary

Constants included from Api

Api::SETTINGS_KEY, Api::SUBSCRIPTION_DELIMITER

Constants included from ApiShared

ApiShared::DEFAULT_TLM_POLLING_RATE

Constants included from Extract

Extract::SCANNING_REGULAR_EXPRESSION

Instance Method Summary collapse

Methods included from Api

#_get_cnt, #_limits_group, #_validate_tlm_type, #build_cmd_output_string, #cmd, #cmd_implementation, #cmd_no_checks, #cmd_no_hazardous_check, #cmd_no_range_check, #cmd_raw, #cmd_raw_no_checks, #cmd_raw_no_hazardous_check, #cmd_raw_no_range_check, #connect_interface, #connect_router, #delete_config, #disable_limits, #disable_limits_group, #disconnect_interface, #disconnect_router, #enable_limits, #enable_limits_group, #get_all_cmd_info, #get_all_cmd_tlm_info, #get_all_commands, #get_all_commands_list, #get_all_interface_info, #get_all_router_info, #get_all_settings, #get_all_target_info, #get_all_telemetry, #get_all_telemetry_list, #get_all_tlm_info, #get_cmd_buffer, #get_cmd_cnt, #get_cmd_hazardous, #get_cmd_time, #get_cmd_value, #get_command, #get_interface, #get_interface_names, #get_item, #get_limits, #get_limits_events, #get_limits_groups, #get_limits_set, #get_limits_sets, #get_oldest_logfile, #get_out_of_limits, #get_overall_limits_state, #get_packet_derived_items, #get_packets, #get_parameter, #get_router, #get_router_names, #get_saved_config, #get_setting, #get_settings, #get_stale, #get_target, #get_target_list, #get_telemetry, #get_tlm_buffer, #get_tlm_cnt, #get_tlm_packet, #get_tlm_values, #inject_tlm, #limits_enabled?, #list_configs, #list_settings, #load_config, #normalize_tlm, #override_tlm, #save_config, #save_setting, #send_raw, #set_limits, #set_limits_set, #set_tlm, #set_tlm_process_args, #start_raw_logging_interface, #start_raw_logging_router, #stop_raw_logging_interface, #stop_raw_logging_router, #subscribe_packets, #tlm, #tlm_formatted, #tlm_process_args, #tlm_raw, #tlm_variable, #tlm_with_units

Instance Method Details

#as_jsonObject



49
50
51
# File 'lib/cosmos/packets/limits_response.rb', line 49

def as_json
  { "class" => self.class.name.to_s }
end

#call(packet, item, old_limits_state) ⇒ Object

Parameters:

  • packet (Packet)

    Packet the limits response is assigned to

  • item (PacketItem)

    PacketItem the limits response is assigned to

  • old_limits_state (Symbol)

    Previous value of the limit. One of nil, :GREEN_HIGH, :GREEN_LOW, :YELLOW, :YELLOW_HIGH, :YELLOW_LOW, :RED, :RED_HIGH, :RED_LOW. nil if the previous limit state has not yet been established.



37
38
39
# File 'lib/cosmos/packets/limits_response.rb', line 37

def call(packet, item, old_limits_state)
  raise "call method must be defined by subclass"
end

#to_configObject



45
46
47
# File 'lib/cosmos/packets/limits_response.rb', line 45

def to_config
  "    LIMITS_RESPONSE #{self.class.name.class_name_to_filename}\n"
end

#to_sObject



41
42
43
# File 'lib/cosmos/packets/limits_response.rb', line 41

def to_s
  self.class.to_s.split('::')[-1]
end