Legrand / Raritan / Server Technology Xerus™ JSON-RPC API

Loading...
Searching...
No Matches
HardwareHealth.idl
1/* SPDX-License-Identifier: BSD-3-Clause */
2/*
3 * Copyright 2018 Raritan Inc. All rights reserved.
4 */
5
6#include <Event.idl>
7
8module fitness {
9
10 interface HardwareHealth {
11
12 /** hardware failure types */
13 constant int FAILURE_TYPE_NETWORK_DEVICE_NOT_DETECTED = 1;
14 constant int FAILURE_TYPE_I2C_BUS_STUCK = 2;
15 constant int FAILURE_TYPE_SUB_CTRL_NOT_REACHABLE = 3;
16 constant int FAILURE_TYPE_SUB_CTRL_MALFUNCTION = 4;
17 constant int FAILURE_TYPE_OUTLET_POWER_STATE_INCONSISTENT = 5;
18 constant int FAILURE_TYPE_SUB_CTRL_INCOMPATIBLE = 6;
19
20 /** Hardware Failure */
21 structure Failure {
22 int creationOrderId; ///< failures created later have a larger id; range 1..failure-count
23 string componentId; ///< the ID of the affected hardware component
24 int type; ///< one of the hardware failure type constants
25 string description; ///< human readable string describing HW component and failure
26 boolean isAsserted; ///< \c true when the failure is currently asserted
27 time lastAssertTimeStamp; ///< UNIX timestamp (UTC) when the failure was last asserted
28 time lastDeassertTimeStamp; ///< UNIX timestamp (UTC) when the failure was last deasserted (0 if asserted)
29 int assertCount; ///< count of assertions
30 };
31
32 /** Event that is send when the hardware failure status changes */
33 valueobject FailureStatusChangedEvent extends idl.Event {
34 string componentId; ///< the ID of the affected hardware component
35 int failureType; ///< one of the hardware failure type constants
36 boolean isAsserted; ///< \c true when the failure is currently asserted
37 };
38
39 /**
40 * Return a vector with past and present hardware failures.
41 *
42 * @return hardware failure vector
43 */
44 vector<Failure> getFailures();
45
46 };
47
48}
fitness::HardwareHealth
Definition HardwareHealth.idl:10
fitness::HardwareHealth::getFailures
vector< Failure > getFailures()
Return a vector with past and present hardware failures.
fitness
Fitness Daemon
Definition Fitness.idl:7
idl
Basic IDL definitions.
Definition Event.idl:10
fitness::HardwareHealth::FailureStatusChangedEvent
Event that is send when the hardware failure status changes.
Definition HardwareHealth.idl:33
fitness::HardwareHealth::FailureStatusChangedEvent::failureType
int failureType
one of the hardware failure type constants
Definition HardwareHealth.idl:35
fitness::HardwareHealth::FailureStatusChangedEvent::isAsserted
boolean isAsserted
true when the failure is currently asserted
Definition HardwareHealth.idl:36
fitness::HardwareHealth::FailureStatusChangedEvent::componentId
string componentId
the ID of the affected hardware component
Definition HardwareHealth.idl:34
fitness::HardwareHealth::Failure
Hardware Failure.
Definition HardwareHealth.idl:21
fitness::HardwareHealth::Failure::assertCount
int assertCount
count of assertions
Definition HardwareHealth.idl:29
fitness::HardwareHealth::Failure::type
int type
one of the hardware failure type constants
Definition HardwareHealth.idl:24
fitness::HardwareHealth::Failure::creationOrderId
int creationOrderId
failures created later have a larger id; range 1..failure-count
Definition HardwareHealth.idl:22
fitness::HardwareHealth::Failure::description
string description
human readable string describing HW component and failure
Definition HardwareHealth.idl:25
fitness::HardwareHealth::Failure::isAsserted
boolean isAsserted
true when the failure is currently asserted
Definition HardwareHealth.idl:26
fitness::HardwareHealth::Failure::lastAssertTimeStamp
time lastAssertTimeStamp
UNIX timestamp (UTC) when the failure was last asserted.
Definition HardwareHealth.idl:27
fitness::HardwareHealth::Failure::componentId
string componentId
the ID of the affected hardware component
Definition HardwareHealth.idl:23
fitness::HardwareHealth::Failure::lastDeassertTimeStamp
time lastDeassertTimeStamp
UNIX timestamp (UTC) when the failure was last deasserted (0 if asserted)
Definition HardwareHealth.idl:28
idl::Event
Common base for all events.
Definition Event.idl:13