Class: Verizon::PerformanceMetricsController

Inherits:
BaseController show all
Defined in:
lib/verizon/controllers/performance_metrics_controller.rb

Overview

PerformanceMetricsController

Constant Summary

Constants inherited from BaseController

BaseController::GLOBAL_ERRORS

Instance Attribute Summary

Attributes inherited from BaseController

#config, #http_call_back

Instance Method Summary collapse

Methods inherited from BaseController

#initialize, #new_api_call_builder, #new_parameter, #new_request_builder, #new_response_handler, user_agent

Constructor Details

This class inherits a constructor from Verizon::BaseController

Instance Method Details

#query_mec_performance_metrics(body: nil) ⇒ ApiResponse

Query the most recent data for Key Performance Indicators (KPIs) like network availability, MEC hostnames and more. Example:

Parameters:

Returns:

  • (ApiResponse)

    the complete http response with raw body and status code.



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/verizon/controllers/performance_metrics_controller.rb', line 14

def query_mec_performance_metrics(body: nil)
  new_api_call_builder
    .request(new_request_builder(HttpMethodEnum::POST,
                                 '/performance/device/network/metrics',
                                 Server::PERFORMANCE)
               .header_param(new_parameter('application/json', key: 'Content-Type'))
               .body_param(new_parameter(body))
               .header_param(new_parameter('application/json', key: 'accept'))
               .body_serializer(proc do |param| param.to_json unless param.nil? end)
               .auth(And.new('thingspace_oauth', 'VZ-M2M-Token')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(MECPerformanceMetrics.method(:from_hash))
                .is_api_response(true)
                .local_error('400',
                             'Bad Request.',
                             EdgePerformanceResultException)
                .local_error('401',
                             'Unauthorized request.',
                             EdgePerformanceResultException)
                .local_error('403',
                             'Request forbidden.',
                             EdgePerformanceResultException)
                .local_error('404',
                             'Resource Not Found.',
                             EdgePerformanceResultException)
                .local_error('405',
                             'Method Not Allowed.',
                             EdgePerformanceResultException)
                .local_error('503',
                             'Service Unavailable.',
                             EdgePerformanceResultException))
    .execute
end