Raritan / Server Technology Xerus™ PDU JSON-RPC API: DsamManager.idl Source File

Raritan / Server Technology Xerus™ PDU JSON-RPC API

DsamManager.idl
1 /* SPDX-License-Identifier: BSD-3-Clause */
2 /*
3 * Copyright 2022 Raritan Inc. All rights reserved.
4 */
5
6 #ifndef __DSAMMANAGER_IDL__
7 #define __DSAMMANAGER_IDL__
8
9 #include <DsamDevice.idl>
10 #include <UserEvent.idl>
11
12 module dsam {
13
14 /** DSAM manager interface */
15 interface DsamManager {
16
17 /** Event that is send when a DSAM module has been attached */
18 valueobject DsamAttachedEvent extends idl.Event {
19 DsamDevice.Info info; ///< DSAM info
20 DsamDevice device; ///< DSAM device
21 };
22
23 /** Event that is send when a DSAM module has been removed */
24 valueobject DsamDetachedEvent extends idl.Event {
25 DsamDevice.Info info; ///< DSAM info
26 };
27
28 /** Event that is send when a DSAM controller has been reset or recovery is in progress */
29 valueobject DsamControllerChangedEvent extends idl.Event {
30 int dsamNumber; ///< DSAM number (1-based)
31 boolean reset; ///< \c true if controller was reset; \c false if recovery started
32 string resetReason; ///< reset reason (only set when reset is \c true)
33 };
34
35 /**
36 * Retrieve the current DSAM devices.
37 *
38 * @return Map with DSAM devices. Index is the DSAM number (1-based).
39 */
40 map<int, DsamDevice> getDsamDevices();
41
42 /**
43 * Get the version of the firmware file provided with the device that will be installed on the DSAM
44 * either by explicit request or when the DSAM needs to be recovered.
45 *
46 * @return Firmware version
47 */
48 DsamDevice.FirmwareVersion getFirmwareUpdateFileVersion();
49 };
50
51 }
52
53 #endif // __DSAMMANAGER_IDL__
dsam::DsamDevice
DSAM device interface.
Definition: DsamDevice.idl:14
dsam::DsamManager
DSAM manager interface.
Definition: DsamManager.idl:15
dsam::DsamManager::getFirmwareUpdateFileVersion
DsamDevice::FirmwareVersion getFirmwareUpdateFileVersion()
Get the version of the firmware file provided with the device that will be installed on the DSAM eith...
dsam::DsamManager::getDsamDevices
map< int, DsamDevice > getDsamDevices()
Retrieve the current DSAM devices.
idl
Basic IDL definitions.
Definition: Event.idl:10
dsam::DsamDevice::FirmwareVersion
Firmware version.
Definition: DsamDevice.idl:20
dsam::DsamDevice::Info
DSAm device info.
Definition: DsamDevice.idl:26
dsam::DsamManager::DsamAttachedEvent
Event that is send when a DSAM module has been attached.
Definition: DsamManager.idl:18
dsam::DsamManager::DsamAttachedEvent::info
DsamDevice::Info info
DSAM info.
Definition: DsamManager.idl:19
dsam::DsamManager::DsamAttachedEvent::device
DsamDevice device
DSAM device.
Definition: DsamManager.idl:20
dsam::DsamManager::DsamControllerChangedEvent
Event that is send when a DSAM controller has been reset or recovery is in progress.
Definition: DsamManager.idl:29
dsam::DsamManager::DsamControllerChangedEvent::resetReason
string resetReason
reset reason (only set when reset is true)
Definition: DsamManager.idl:32
dsam::DsamManager::DsamControllerChangedEvent::dsamNumber
int dsamNumber
DSAM number (1-based)
Definition: DsamManager.idl:30
dsam::DsamManager::DsamControllerChangedEvent::reset
boolean reset
true if controller was reset; false if recovery started
Definition: DsamManager.idl:31
dsam::DsamManager::DsamDetachedEvent
Event that is send when a DSAM module has been removed.
Definition: DsamManager.idl:24
dsam::DsamManager::DsamDetachedEvent::info
DsamDevice::Info info
DSAM info.
Definition: DsamManager.idl:25
idl::Event
Common base for all events.
Definition: Event.idl:13