/* tslint:disable */ /* eslint-disable */ /** * ELEMENTS API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: 2 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { exists, mapValues } from '../runtime'; import { Backend, BackendFromJSON, BackendFromJSONTyped, BackendToJSON, Interface, InterfaceFromJSON, InterfaceFromJSONTyped, InterfaceToJSON, StorageNodeStatus, StorageNodeStatusFromJSON, StorageNodeStatusFromJSONTyped, StorageNodeStatusToJSON, } from './'; /** * * @export * @interface StorageNode */ export interface StorageNode { /** * * @type {number} * @memberof StorageNode */ id: number; /** * * @type {string} * @memberof StorageNode */ name?: string; /** * For communication between nodes only * @type {string} * @memberof StorageNode */ address?: string; /** * Enforces mounting from a specific address/hostname instead of the available interfaces * @type {string} * @memberof StorageNode */ addressOverride?: string | null; /** * * @type {Backend} * @memberof StorageNode */ backend: Backend; /** * * @type {number} * @memberof StorageNode */ type?: StorageNodeTypeEnum; /** * * @type {number} * @memberof StorageNode */ ipmi?: StorageNodeIpmiEnum; /** * * @type {Array} * @memberof StorageNode */ readonly interfaces: Array; /** * * @type {StorageNodeStatus} * @memberof StorageNode */ status?: StorageNodeStatus; /** * * @type {boolean} * @memberof StorageNode */ readonly isLogAggregator: boolean; } /** * @export * @enum {string} */ export enum StorageNodeTypeEnum { NUMBER_1 = 1, NUMBER_2 = 2, NUMBER_3 = 3 }/** * @export * @enum {string} */ export enum StorageNodeIpmiEnum { NUMBER_1 = 1, NUMBER_2 = 2, NUMBER_3 = 3 } export function StorageNodeFromJSON(json: any): StorageNode { return StorageNodeFromJSONTyped(json, false); } export function StorageNodeFromJSONTyped(json: any, ignoreDiscriminator: boolean): StorageNode { if ((json === undefined) || (json === null)) { return json; } return { 'id': json['id'], 'name': !exists(json, 'name') ? undefined : json['name'], 'address': !exists(json, 'address') ? undefined : json['address'], 'addressOverride': !exists(json, 'address_override') ? undefined : json['address_override'], 'backend': BackendFromJSON(json['backend']), 'type': !exists(json, 'type') ? undefined : json['type'], 'ipmi': !exists(json, 'ipmi') ? undefined : json['ipmi'], 'interfaces': ((json['interfaces'] as Array).map(InterfaceFromJSON)), 'status': !exists(json, 'status') ? undefined : StorageNodeStatusFromJSON(json['status']), 'isLogAggregator': json['is_log_aggregator'], }; } export function StorageNodeToJSON(value?: StorageNode | null): any { if (value === undefined) { return undefined; } if (value === null) { return null; } return { 'id': value.id, 'name': value.name, 'address': value.address, 'address_override': value.addressOverride, 'backend': BackendToJSON(value.backend), 'type': value.type, 'ipmi': value.ipmi, 'status': StorageNodeStatusToJSON(value.status), }; }