blob: f1621a9c5fb606eee805285de99c71c47fd7d12a [file] [log] [blame]
# SPDX-FileCopyrightText: 2020 The Magma Authors.
# SPDX-FileCopyrightText: 2022 Open Networking Foundation <support@opennetworking.org>
#
# SPDX-License-Identifier: BSD-3-Clause
class ParameterName():
# Top-level objects
DEVICE = 'Device'
FAP_SERVICE = 'FAPService'
# Device info parameters
GPS_STATUS = 'gps_status'
PTP_STATUS = 'PTP status'
MME_STATUS = 'MME status'
REM_STATUS = 'REM status'
LOCAL_GATEWAY_ENABLE = 'Local gateway enable'
GPS_ENABLE = 'GPS enable'
GPS_LAT = 'GPS lat'
GPS_LONG = 'GPS long'
SW_VERSION = 'SW version'
SERIAL_NUMBER = 'Serial number'
CELL_ID = 'cell_id'
IP_ADDRESS = "ip_address"
# Capabilities
DUPLEX_MODE_CAPABILITY = 'Duplex mode capability'
BAND_CAPABILITY = 'Band capability'
# RF-related parameters
EARFCNDL = 'earfcn_downlink1'
EARFCNUL = 'earfcn_uplink1'
EARFCNDL2 = 'earfcn_downlink2'
EARFCNUL2 = 'earfcn_uplink2'
EARFCNDL_LIST = 'earfcn_downlink_list'
EARFCNUL_LIST = 'earfcn_uplink_list'
FREQ_BAND_1 = "frequency_band_1"
FREQ_BAND_2 = "frequency_band_2"
FREQ_BAND_LIST = "frequency_band_list"
BAND = 'Band'
PCI_LIST = 'pci_list'
PCI1 = 'pci1'
PCI2 = 'pci2'
DL_BANDWIDTH = 'downlink_bandwidth'
UL_BANDWIDTH = 'uplink_bandwidth'
TX_POWER = "tx_power"
TUNNEL_TYPE = "tunnel_type"
# Radio Resource Management (RRM) parameters
CARRIER_AGG_ENABLE = "carrier_agg_enable"
CARRIER_NUMBER = "carrier_number"
CONTIGUOUS_CC = "is_ca_frequency_contiguous"
# Other LTE parameters
ADMIN_STATE = 'admin_state'
OP_STATE = 'Opstate'
RF_TX_STATUS = 'RF TX status'
# RAN parameters
CELL_RESERVED = 'Cell reserved'
CELL_BARRED = 'Cell barred'
PRIM_SOURCE = "primary_source"
# Cell parameters
CELL_ENABLE64QAM = "enable64qam"
SPECIAL_SUBFRAME_PATTERN = 'special_subframe_pattern'
SUBFRAME_ASSIGNMENT = 'subframe_assignment'
# Core network parameters
MME_ADDRESS = 'mme_address'
MME_PORT = 'mme_port'
NUM_PLMNS = 'Num PLMNs'
PLMN = 'PLMN'
PLMN_LIST = 'plmn_list'
# PLMN parameters
PLMN_N = 'PLMN %d'
PLMN_N_CELL_RESERVED = 'PLMN %d cell reserved'
PLMN_N_ENABLE = 'PLMN %d enable'
PLMN_N_PRIMARY = 'PLMN %d primary'
PLMN_N_PLMNID = 'PLMN %d PLMNID'
# PLMN arrays are added below
TAC1 = 'tac1'
TAC2 = 'tac2'
IP_SEC_ENABLE = 'ipsec_enable'
MME_POOL_ENABLE = 'mme_pool_enable'
# Management server parameters
PERIODIC_INFORM_ENABLE = 'periodic_inform_enable'
PERIODIC_INFORM_INTERVAL = 'periodic_inform_interval'
CWMP_ENABLE = "cwmp_enable"
# Performance management parameters
PERF_MGMT_ENABLE = 'perf_mgmt_enable'
PERF_MGMT_UPLOAD_INTERVAL = 'perf_mgmt_upload_interval'
PERF_MGMT_UPLOAD_URL = 'perf_mgmt_upload_url'
PERF_MGMT_USER = 'perf_mgmt_username'
PERF_MGMT_PASSWORD = 'perf_mgmt_password'
SAS_ENABLE = "sas_enable"
SAS_SERVER_URL = "sas_server_url"
SAS_UID = "sas_uid"
SAS_CATEGORY = "sas_category"
SAS_CHANNEL_TYPE = "sas_channel_type"
SAS_CERT_SUBJECT = "sas_cert_subject"
SAS_IC_GROUP_ID = "sas_icg_group_id"
SAS_LOCATION = "sas_location"
SAS_HEIGHT_TYPE = "sas_height_type"
SAS_FCCID = "sas_fccid"
SAS_MEAS_CAPS = "sas_measure_capability"
SAS_MANU_ENABLE = "manufacturer_prefix_enable"
SAS_CPI_ENABLE = "cpi_enable"
SAS_CPI_IPE = "sas_cpi_ipe"
SAS_CPI_NAME = "sas_cpi_name"
SAS_CPI_ID = "sas_cpi_id"
SAS_CPI_DATA = "sas_cpi_signature_data"
SAS_ANTA_AZIMUTH = "sas_antenna_azimuth"
SAS_ANTA_DOWNTILT = "sas_antenna_downtilt"
SAS_ANTA_GAIN = "sas_antenna_gain"
SAS_ANTA_BEAMWIDTH = "sas_antenna_beamwidth"
FIRMWARE_VERSION = "firmware_version"
FIRMWARE_URL = "firmware_url"
FIRMWARE_SIZE = "firmware_size"
@classmethod
def all_paramters(cls):
""" Return all possible parameter in the structure """
ret_dict = dict()
for item in filter(lambda x: x[:2] != "__", cls.__dict__.keys()):
if not callable(getattr(cls, item)):
# The return format is a reversed dictionary
# {'cell_id': 'CELL_ID', ...}
ret_dict[getattr(cls, item)] = item
return ret_dict
class TrParameterType():
BOOLEAN = 'boolean'
STRING = 'string'
INT = 'int'
UNSIGNED_INT = 'unsignedInt'
OBJECT = 'object'