tdl-xoa-driver 1.5.1__py3-none-any.whl → 1.6.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. {tdl_xoa_driver-1.5.1.dist-info → tdl_xoa_driver-1.6.0.dist-info}/METADATA +1 -1
  2. {tdl_xoa_driver-1.5.1.dist-info → tdl_xoa_driver-1.6.0.dist-info}/RECORD +89 -88
  3. xoa_driver/__init__.py +2 -2
  4. xoa_driver/enums.py +10 -10
  5. xoa_driver/functions/anlt.py +60 -78
  6. xoa_driver/functions/cli/testbed_config.py +1 -1
  7. xoa_driver/functions/cmis/_replies.py +4 -4
  8. xoa_driver/functions/mgmt.py +206 -250
  9. xoa_driver/functions/tools.py +11 -6
  10. xoa_driver/internals/commands/c_commands.py +59 -0
  11. xoa_driver/internals/commands/enums.py +101 -90
  12. xoa_driver/internals/commands/m4_commands.py +25 -0
  13. xoa_driver/internals/commands/m4e_commands.py +6 -0
  14. xoa_driver/internals/commands/m_commands.py +51 -1
  15. xoa_driver/internals/commands/p4_commands.py +63 -1
  16. xoa_driver/internals/commands/p4e_commands.py +9 -0
  17. xoa_driver/internals/commands/p4g_commands.py +139 -0
  18. xoa_driver/internals/commands/p_commands.py +455 -61
  19. xoa_driver/internals/commands/pc_commands.py +9 -0
  20. xoa_driver/internals/commands/pd_commands.py +11 -0
  21. xoa_driver/internals/commands/pe_commands.py +27 -0
  22. xoa_driver/internals/commands/pec_commands.py +9 -0
  23. xoa_driver/internals/commands/ped_commands.py +23 -0
  24. xoa_driver/internals/commands/pef_commands.py +43 -0
  25. xoa_driver/internals/commands/pf_commands.py +11 -0
  26. xoa_driver/internals/commands/pl1_commands.py +315 -48
  27. xoa_driver/internals/commands/pl_commands.py +8 -0
  28. xoa_driver/internals/commands/pm_commands.py +11 -0
  29. xoa_driver/internals/commands/pp_commands.py +84 -27
  30. xoa_driver/internals/commands/pr_commands.py +25 -0
  31. xoa_driver/internals/commands/ps_commands.py +47 -1
  32. xoa_driver/internals/commands/pt_commands.py +15 -0
  33. xoa_driver/internals/commands/px_commands.py +180 -136
  34. xoa_driver/internals/commands/subtypes.py +4 -3
  35. xoa_driver/internals/core/transporter/protocol/payload/base_struct.py +1 -1
  36. xoa_driver/internals/hli/indices/macsecscs/base_macsecsc.py +41 -3
  37. xoa_driver/internals/hli/modules/modules_l23/family_combi.py +0 -64
  38. xoa_driver/internals/hli/modules/modules_l23/family_edun.py +0 -2
  39. xoa_driver/internals/hli/modules/modules_l23/{family_g.py → family_loki.py} +29 -1
  40. xoa_driver/internals/hli/modules/modules_l23/family_odin.py +412 -0
  41. xoa_driver/internals/hli/modules/modules_l23/{family_l.py → family_thor.py} +44 -0
  42. xoa_driver/internals/hli/ports/port_l23/chimera/port_chimera.py +3 -3
  43. xoa_driver/internals/hli/ports/port_l23/family_edun.py +9 -44
  44. xoa_driver/internals/hli/ports/port_l23/{family_l1.py → family_freya.py} +10 -45
  45. xoa_driver/internals/hli/ports/port_l23/{family_g.py → family_loki.py} +33 -32
  46. xoa_driver/internals/hli/ports/port_l23/family_odin.py +225 -0
  47. xoa_driver/internals/hli/ports/port_l23/family_thor.py +67 -0
  48. xoa_driver/internals/hli/ports/port_l23/layer1/anlt.py +512 -0
  49. xoa_driver/internals/hli/ports/port_l23/layer1/brr.py +26 -0
  50. xoa_driver/internals/hli/ports/port_l23/layer1/eye_diagram.py +71 -0
  51. xoa_driver/internals/hli/ports/port_l23/{pcs_pma_ijkl_chimera.py → layer1/impair.py} +7 -7
  52. xoa_driver/internals/hli/ports/port_l23/layer1/laser_power.py +28 -0
  53. xoa_driver/internals/hli/ports/port_l23/{family_e.py → layer1/lower_power.py} +1 -51
  54. xoa_driver/internals/hli/ports/port_l23/{freya_l1.py → layer1/medium.py} +38 -358
  55. xoa_driver/internals/hli/ports/port_l23/layer1/pcs_fec.py +219 -0
  56. xoa_driver/internals/hli/ports/port_l23/layer1/pma.py +43 -0
  57. xoa_driver/internals/hli/ports/port_l23/layer1/prbs.py +39 -0
  58. xoa_driver/internals/hli/ports/port_l23/layer1/preamble.py +25 -0
  59. xoa_driver/internals/hli/ports/port_l23/{fault_jkl.py → layer1/rs_fault.py} +2 -2
  60. xoa_driver/internals/hli/ports/port_l23/layer1/siv.py +69 -0
  61. xoa_driver/internals/hli/ports/port_l23/layer1_edun.py +103 -0
  62. xoa_driver/internals/hli/ports/port_l23/layer1_freya.py +103 -0
  63. xoa_driver/internals/hli/ports/port_l23/layer1_loki.py +74 -0
  64. xoa_driver/internals/hli/ports/port_l23/layer1_thor.py +70 -0
  65. xoa_driver/internals/hli/ports/port_l23/port_l23ve.py +4 -4
  66. xoa_driver/internals/hli/ports/port_l23/sec/__init__.py +0 -0
  67. xoa_driver/internals/hli/ports/port_l23/sec/macsec.py +108 -0
  68. xoa_driver/internals/hli/ports/port_l23/tcvr/__init__.py +0 -0
  69. xoa_driver/internals/hli/ports/port_l23/{bases/port_transceiver.py → tcvr/cmis.py} +4 -118
  70. xoa_driver/internals/hli/ports/port_l23/tcvr/transceiver.py +124 -0
  71. xoa_driver/internals/hli/ports/port_l23/trafficgen/__init__.py +0 -0
  72. xoa_driver/internals/hli/ports/port_l23/{bases → trafficgen}/port_l23.py +1 -1
  73. xoa_driver/internals/hli/ports/port_l23/{bases → trafficgen}/port_l23_genuine.py +5 -45
  74. xoa_driver/internals/hli/ports/port_l23/{bases/port_reception_statistics.py → trafficgen/port_rx_stats.py} +0 -21
  75. xoa_driver/internals/hli/ports/port_l23/{bases/port_transmission_statistics.py → trafficgen/port_tx_stats.py} +2 -22
  76. xoa_driver/internals/hli/ports/port_l23/trafficgen/runt.py +32 -0
  77. xoa_driver/internals/hli/testers/l23_tester.py +1 -3
  78. xoa_driver/internals/utils/indices/_interfaces.py +18 -6
  79. xoa_driver/internals/utils/indices/index_manager.py +8 -2
  80. xoa_driver/internals/utils/managers/ports_manager.py +5 -2
  81. xoa_driver/misc.py +6 -6
  82. xoa_driver/modules.py +31 -47
  83. xoa_driver/ports.py +10 -29
  84. xoa_driver/internals/hli/modules/modules_l23/family_d.py +0 -75
  85. xoa_driver/internals/hli/modules/modules_l23/family_e.py +0 -85
  86. xoa_driver/internals/hli/modules/modules_l23/family_f.py +0 -145
  87. xoa_driver/internals/hli/modules/modules_l23/family_h.py +0 -40
  88. xoa_driver/internals/hli/modules/modules_l23/family_i.py +0 -25
  89. xoa_driver/internals/hli/modules/modules_l23/family_j.py +0 -25
  90. xoa_driver/internals/hli/modules/modules_l23/family_k.py +0 -39
  91. xoa_driver/internals/hli/modules/modules_l23/family_m.py +0 -25
  92. xoa_driver/internals/hli/modules/modules_l23/family_n.py +0 -40
  93. xoa_driver/internals/hli/ports/port_l23/edun_l1.py +0 -181
  94. xoa_driver/internals/hli/ports/port_l23/family_combi.py +0 -37
  95. xoa_driver/internals/hli/ports/port_l23/family_d.py +0 -51
  96. xoa_driver/internals/hli/ports/port_l23/family_f.py +0 -151
  97. xoa_driver/internals/hli/ports/port_l23/family_h.py +0 -67
  98. xoa_driver/internals/hli/ports/port_l23/family_i.py +0 -84
  99. xoa_driver/internals/hli/ports/port_l23/family_j.py +0 -68
  100. xoa_driver/internals/hli/ports/port_l23/family_k.py +0 -73
  101. xoa_driver/internals/hli/ports/port_l23/family_l.py +0 -82
  102. xoa_driver/internals/hli/ports/port_l23/family_m.py +0 -29
  103. xoa_driver/internals/hli/ports/port_l23/pcs_pma_ghijkl.py +0 -369
  104. xoa_driver/internals/hli/ports/port_l23/pcs_pma_l.py +0 -78
  105. {tdl_xoa_driver-1.5.1.dist-info → tdl_xoa_driver-1.6.0.dist-info}/WHEEL +0 -0
  106. {tdl_xoa_driver-1.5.1.dist-info → tdl_xoa_driver-1.6.0.dist-info}/licenses/LICENSE +0 -0
  107. {tdl_xoa_driver-1.5.1.dist-info → tdl_xoa_driver-1.6.0.dist-info}/top_level.txt +0 -0
  108. /xoa_driver/internals/hli/modules/modules_l23/{family_l1.py → family_freya.py} +0 -0
  109. /xoa_driver/internals/hli/ports/port_l23/{bases → layer1}/__init__.py +0 -0
  110. /xoa_driver/internals/hli/ports/port_l23/{bases → trafficgen}/port_capture.py +0 -0
@@ -0,0 +1,32 @@
1
+ import functools
2
+ from typing import TYPE_CHECKING
3
+ from xoa_driver.internals.commands import (
4
+ P_TXRUNTLENGTH,
5
+ P_RXRUNTLENGTH,
6
+ P_RXRUNTLEN_ERRS,
7
+
8
+ )
9
+ if TYPE_CHECKING:
10
+ from xoa_driver.internals.core import interfaces as itf
11
+
12
+ class Runt:
13
+ """Runt settings."""
14
+
15
+ def __init__(self, conn: "itf.IConnection", module_id: int, port_id: int) -> None:
16
+ self.tx_length = P_TXRUNTLENGTH(conn, module_id, port_id)
17
+ """L23 port's TX runt length.
18
+
19
+ :type: P_TXRUNTLENGTH
20
+ """
21
+
22
+ self.rx_length = P_RXRUNTLENGTH(conn, module_id, port_id)
23
+ """L23 port's RX runt length.
24
+
25
+ :type: P_RXRUNTLENGTH
26
+ """
27
+
28
+ self.has_length_errors = P_RXRUNTLEN_ERRS(conn, module_id, port_id)
29
+ """L23 port's RX runt length errors..
30
+
31
+ :type: P_RXRUNTLEN_ERRS
32
+ """
@@ -57,9 +57,7 @@ def get_module_type(revision: str) -> Type:
57
57
 
58
58
  class L23Tester(BaseTester["testers_state.GenuineTesterLocalState"]):
59
59
  """
60
- This is a conceptual class of Xena Valkyrie Tester.
61
- It is essentially an extended :class:`BaseTester`.
62
-
60
+ Create an instanace to connect to a Xena chassis.
63
61
 
64
62
  :param host: tester's address/hostname
65
63
  :type host: str
@@ -1,18 +1,19 @@
1
1
  from typing import (
2
2
  Protocol,
3
3
  List,
4
- Type,
4
+ TypeVar,
5
+ Self,
5
6
  TYPE_CHECKING,
6
7
  )
7
8
 
8
9
  if TYPE_CHECKING:
9
10
  from xoa_driver.internals.core import interfaces as itf
10
- from .. import kind
11
- from . import observer
11
+ from .. import kind as kind_module
12
+ from . import observer as idx_obs
12
13
 
13
14
 
14
15
  class IIndexType(Protocol):
15
- def __init__(self, conn: "itf.IConnection", kind: "kind.IndicesKind", observer: "observer.IndicesObserver") -> None: ... # noqa: E704
16
+ def __init__(self, conn: "itf.IConnection", kind: "kind_module.IndicesKind", observer: "idx_obs.IndicesObserver") -> None: ... # noqa: E704
16
17
 
17
18
  async def delete(self) -> None: ... # noqa: E704
18
19
 
@@ -20,7 +21,18 @@ class IIndexType(Protocol):
20
21
  def idx(self) -> int: ... # noqa: E704
21
22
 
22
23
  @classmethod
23
- async def _fetch(cls, conn, module_id, port_id) -> List[int]: ... # noqa: E704
24
+ async def _fetch(
25
+ cls,
26
+ conn: "itf.IConnection",
27
+ module_id: int,
28
+ port_id: int) -> List[int]: ... # noqa: E704
24
29
 
25
30
  @classmethod
26
- async def _new(cls, conn: "itf.IConnection", kind: "kind.IndicesKind", observer: "observer.IndicesObserver") -> Type: ... # noqa: E704
31
+ async def _new(
32
+ cls,
33
+ conn: "itf.IConnection",
34
+ kind: "kind_module.IndicesKind",
35
+ observer: "idx_obs.IndicesObserver"
36
+ ) -> Self: ... # noqa: E704
37
+
38
+ IT = TypeVar("IT", bound=IIndexType)
@@ -60,7 +60,13 @@ class IndexManager(Generic[IT]):
60
60
  return self._indices[key]
61
61
 
62
62
  def obtain_multiple(self, *keys: int):
63
- """Obtain multiple resources as a tuple of indices"""
63
+ """Obtain multiple index objects
64
+
65
+ :param keys: Indices of the desired index objects
66
+ :type keys: int
67
+ :return: Tuple of index objects corresponding to the provided keys
68
+ :rtype: tuple[IT, ...]
69
+ """
64
70
  return tuple(self._indices[k] for k in keys)
65
71
 
66
72
  def __detect_empty_idx_slot(self) -> int:
@@ -74,7 +80,7 @@ class IndexManager(Generic[IT]):
74
80
  ]
75
81
  return min(empties) if empties else len(existing_indices)
76
82
 
77
- def __remove_from_slot(self, index_inst: Type) -> None:
83
+ def __remove_from_slot(self, index_inst: IT) -> None:
78
84
  # throws ValueError if element is not exists in list of indices
79
85
  self._indices.remove(index_inst)
80
86
 
@@ -111,6 +111,9 @@ class PortsCombiManager(PortBaseManager[PT]):
111
111
  for port_id in range(self._ports_count)
112
112
  )
113
113
  ports = await asyncio.gather(*coros)
114
- self._items = OrderedDict(
115
- (port.kind.port_id, port) for port in ports
114
+ self._items = cast(
115
+ OrderedDict[int, PT],
116
+ OrderedDict(
117
+ (port.kind.port_id, port) for port in ports
118
+ )
116
119
  )
xoa_driver/misc.py CHANGED
@@ -5,9 +5,9 @@
5
5
  from .internals.core.token import Token
6
6
  from .internals.core.transporter.protocol.payload.types import Hex
7
7
  from .internals.commands.subtypes import (
8
- ArpChunk,
9
- NdpChunk,
10
- DhcpChunk,
8
+ ArpEntry,
9
+ NdpEntry,
10
+ DhcpEntry,
11
11
  GroupAddressElem,
12
12
  VlanTag,
13
13
  QueueStatsElem,
@@ -31,9 +31,9 @@ from xoa_driver.internals.hli.indices.macsecscs.genuine_macsecsc import GenuineM
31
31
  __all__ = (
32
32
  "Token",
33
33
  "Hex",
34
- "ArpChunk",
35
- "NdpChunk",
36
- "DhcpChunk",
34
+ "ArpEntry",
35
+ "NdpEntry",
36
+ "DhcpEntry",
37
37
  "GroupAddressElem",
38
38
  "VlanTag",
39
39
  "QueueStatsElem",
xoa_driver/modules.py CHANGED
@@ -1,21 +1,26 @@
1
1
  #: All available test module types.
2
2
  """Xena test module types."""
3
-
3
+ from typing import Union
4
4
  from .internals.hli.modules.modules_l23.module_l23_base import ModuleL23
5
- from .internals.hli.modules.modules_l23.family_d import (
5
+ from .internals.hli.modules.module_l23ve import ModuleL23VE
6
+ from .internals.hli.modules.module_chimera import (
7
+ ModuleChimera,
8
+ MChi100G5S2P,
9
+ MChi100G5S2P_b,
10
+ MChi40G2S2P,
11
+ )
12
+ from .internals.hli.modules.module_l47 import ModuleL47
13
+ from .internals.hli.modules.module_l47ve import ModuleL47VE
14
+ from .internals.hli.modules.modules_l23.family_odin import (
6
15
  MOdin1G3S2PT,
7
16
  MOdin1G3S6P,
8
17
  MOdin1G3S6P_b,
9
18
  MOdin1G3S6PE,
10
- )
11
- from .internals.hli.modules.modules_l23.family_e import (
12
19
  MOdin5G4S6PCU,
13
20
  MOdin10G3S2PCU,
14
21
  MOdin10G3S6PCU,
15
22
  MOdin10G5S6PCU,
16
23
  MOdin10G5S6PCU_b,
17
- )
18
- from .internals.hli.modules.modules_l23.family_f import (
19
24
  MOdin10G1S2P,
20
25
  MOdin10G1S2P_b,
21
26
  MOdin10G1S2P_c,
@@ -25,31 +30,32 @@ from .internals.hli.modules.modules_l23.family_f import (
25
30
  MOdin10G1S6P_b,
26
31
  MOdin10G1S12P,
27
32
  MOdin10G6S6P_a,
33
+ MOdin100G3S1P,
34
+ MOdin1G3S6PT1RJ45,
35
+ MOdin10G4S2PCombi,
36
+ MOdin10G4S2PCombi_b,
37
+ MOdin40G2S2P,
38
+ MOdin40G2S2PB,
28
39
  )
29
- from .internals.hli.modules.modules_l23.family_g import (
40
+ from .internals.hli.modules.modules_l23.family_loki import (
30
41
  MLoki100G3S1P,
31
42
  MLoki100G3S1P_b,
32
43
  MLoki100G3S1PSE,
33
44
  MLoki100G3S1PB,
34
45
  MLoki100G3S1PB_b,
35
46
  MLoki100G5S4P_a,
36
- )
37
- from .internals.hli.modules.modules_l23.family_h import (
38
47
  MLoki100G5S1P,
39
- MOdin100G3S1P,
48
+ MLoki100G5S2P,
40
49
  )
41
- from .internals.hli.modules.modules_l23.family_i import MLoki100G5S2P
42
- from .internals.hli.modules.modules_l23.family_j import MThor100G5S4P
43
- from .internals.hli.modules.modules_l23.family_k import (
50
+ from .internals.hli.modules.modules_l23.family_thor import (
51
+ MThor100G5S4P,
44
52
  MThor400G7S1P,
45
53
  MThor400G7S1PLE,
46
- )
47
- from .internals.hli.modules.modules_l23.family_l import (
48
54
  MThor400G7S1P_b,
49
55
  MThor400G7S1P_c,
50
56
  MThor400G7S1P_d,
51
57
  )
52
- from .internals.hli.modules.modules_l23.family_l1 import (
58
+ from .internals.hli.modules.modules_l23.family_freya import (
53
59
  MFreya800G1S1P_a,
54
60
  MFreya800G1S1P_b,
55
61
  MFreya800G1S1POSFP_a,
@@ -99,33 +105,11 @@ from .internals.hli.modules.modules_l23.family_l1 import (
99
105
  MFreya800G4S1POSFP_e_g2,
100
106
  MFreya800G4S1POSFP_f_g2,
101
107
  )
102
- from .internals.hli.modules.modules_l23.family_m import MOdin1G3S6PT1RJ45
103
- from .internals.hli.modules.modules_l23.family_n import (
104
- MOdin40G2S2P,
105
- MOdin40G2S2PB,
106
- )
107
- from .internals.hli.modules.modules_l23.family_combi import (
108
- MOdin10G4S2PCombi,
109
- MOdin10G4S2PCombi_b,
110
- )
111
- from .internals.hli.modules.module_l23ve import ModuleL23VE
112
- from .internals.hli.modules.module_chimera import (
113
- ModuleChimera,
114
- MChi100G5S2P,
115
- MChi100G5S2P_b,
116
- MChi40G2S2P,
117
- )
118
- from .internals.hli.modules.module_l47 import ModuleL47
119
- from .internals.hli.modules.module_l47ve import ModuleL47VE
120
-
121
108
  from .internals.hli.modules.modules_l23.family_edun import (
122
109
  MEdun800G3S1PSMPX_a,
123
110
  MEdun1600G4S1POSFP_a
124
111
  )
125
-
126
- import typing
127
-
128
- Z10OdinModule = typing.Union[
112
+ Z10OdinModule = Union[
129
113
  MOdin1G3S2PT,
130
114
  MOdin1G3S6P,
131
115
  MOdin1G3S6P_b,
@@ -152,7 +136,7 @@ Z10OdinModule = typing.Union[
152
136
  MOdin100G3S1P,
153
137
  ]
154
138
 
155
- Z100LokiModule = typing.Union[
139
+ Z100LokiModule = Union[
156
140
  MLoki100G3S1P,
157
141
  MLoki100G3S1P_b,
158
142
  MLoki100G3S1PSE,
@@ -163,7 +147,7 @@ Z100LokiModule = typing.Union[
163
147
  MLoki100G5S4P_a,
164
148
  ]
165
149
 
166
- Z400ThorModule = typing.Union[
150
+ Z400ThorModule = Union[
167
151
  MThor100G5S4P,
168
152
  MThor400G7S1P,
169
153
  MThor400G7S1PLE,
@@ -172,7 +156,7 @@ Z400ThorModule = typing.Union[
172
156
  MThor400G7S1P_d,
173
157
  ]
174
158
 
175
- Z800FreyaModule = typing.Union[
159
+ Z800FreyaModule = Union[
176
160
  MFreya800G1S1P_a,
177
161
  MFreya800G1S1P_b,
178
162
  MFreya800G1S1POSFP_a,
@@ -223,25 +207,25 @@ Z800FreyaModule = typing.Union[
223
207
  MFreya800G4S1POSFP_f_g2,
224
208
  ]
225
209
 
226
- Z1600EdunModule = typing.Union[
210
+ Z1600EdunModule = Union[
227
211
  MEdun800G3S1PSMPX_a,
228
212
  MEdun1600G4S1POSFP_a
229
213
  ]
230
214
 
231
- E100ChimeraModule = typing.Union[
215
+ E100ChimeraModule = Union[
232
216
  ModuleChimera,
233
217
  MChi100G5S2P,
234
218
  MChi100G5S2P_b,
235
219
  MChi40G2S2P,
236
220
  ]
237
221
 
238
- LegacyModule = typing.Union[
222
+ LegacyModule = Union[
239
223
  ModuleL23VE,
240
224
  ModuleL47,
241
225
  ModuleL47VE,
242
226
  ]
243
227
 
244
- GenericL23Module = typing.Union[
228
+ GenericL23Module = Union[
245
229
  "MOdin1G3S2PT",
246
230
  "MOdin1G3S6P",
247
231
  "MOdin1G3S6P_b",
@@ -336,7 +320,7 @@ GenericL23Module = typing.Union[
336
320
  "MEdun1600G4S1POSFP_a",
337
321
  ]
338
322
 
339
- GenericAnyModule = typing.Union[
323
+ GenericAnyModule = Union[
340
324
  GenericL23Module,
341
325
 
342
326
  "ModuleL23VE",
xoa_driver/ports.py CHANGED
@@ -13,30 +13,21 @@ from .internals.hli.ports.port_l23.chimera.port_chimera import (
13
13
  PChi40G2S2P,
14
14
  )
15
15
 
16
- from .internals.hli.ports.port_l23.bases.port_l23 import BasePortL23
17
- from xoa_driver.internals.hli.ports.port_l23.family_combi import (
16
+ from .internals.hli.ports.port_l23.trafficgen.port_l23 import BasePortL23
17
+ from xoa_driver.internals.hli.ports.port_l23.family_odin import (
18
18
  POdin1G4S4PCombi,
19
19
  POdin1G4S4PCombi_b,
20
20
  POdin10G4S2PCombi,
21
21
  POdin10G4S2PCombi_b,
22
- )
23
-
24
- from xoa_driver.internals.hli.ports.port_l23.family_d import (
25
22
  POdin1G3S2PT,
26
23
  POdin1G3S6P,
27
24
  POdin1G3S6P_b,
28
25
  POdin1G3S6PE,
29
- )
30
-
31
- from xoa_driver.internals.hli.ports.port_l23.family_e import (
32
26
  POdin5G4S6PCU,
33
27
  POdin10G3S2PCU,
34
28
  POdin10G3S6PCU,
35
29
  POdin10G5S6PCU,
36
30
  POdin10G5S6PCU_b,
37
- )
38
-
39
- from xoa_driver.internals.hli.ports.port_l23.family_f import (
40
31
  POdin10G1S2P,
41
32
  POdin10G1S2P_b,
42
33
  POdin10G1S2P_c,
@@ -48,35 +39,28 @@ from xoa_driver.internals.hli.ports.port_l23.family_f import (
48
39
  POdin40G2S2P,
49
40
  POdin40G2S2PB,
50
41
  POdin10G6S6P_a,
42
+ POdin100G3S1P,
43
+ POdin1G3S6PT1RJ45,
51
44
  )
52
-
53
- from xoa_driver.internals.hli.ports.port_l23.family_g import (
45
+ from xoa_driver.internals.hli.ports.port_l23.family_loki import (
54
46
  PLoki100G3S1P,
55
47
  PLoki100G3S1P_b,
56
48
  PLoki100G3S1PSE,
57
49
  PLoki100G3S1PB,
58
50
  PLoki100G3S1PB_b,
59
51
  PLoki100G5S4P_a,
60
- )
61
-
62
- from xoa_driver.internals.hli.ports.port_l23.family_h import (
63
52
  PLoki100G5S1P,
64
- POdin100G3S1P,
53
+ PLoki100G5S2P,
65
54
  )
66
-
67
- from xoa_driver.internals.hli.ports.port_l23.family_i import PLoki100G5S2P
68
- from xoa_driver.internals.hli.ports.port_l23.family_j import PThor100G5S4P
69
- from xoa_driver.internals.hli.ports.port_l23.family_k import (
55
+ from xoa_driver.internals.hli.ports.port_l23.family_thor import (
56
+ PThor100G5S4P,
70
57
  PThor400G7S1P,
71
58
  PThor400G7S1PLE,
72
- )
73
- from xoa_driver.internals.hli.ports.port_l23.family_l import (
74
59
  PThor400G7S1P_b,
75
60
  PThor400G7S1P_c,
76
61
  PThor400G7S1P_d,
77
62
  )
78
-
79
- from xoa_driver.internals.hli.ports.port_l23.family_l1 import (
63
+ from xoa_driver.internals.hli.ports.port_l23.family_freya import (
80
64
  PFreya800G1S1P_a,
81
65
  PFreya800G1S1P_b,
82
66
  PFreya800G1S1POSFP_a,
@@ -95,12 +79,9 @@ from xoa_driver.internals.hli.ports.port_l23.family_l1 import (
95
79
  PFreya800G4S1POSFP_e,
96
80
  PFreya800G4S1POSFP_f,
97
81
  )
98
-
99
- from xoa_driver.internals.hli.ports.port_l23.family_m import POdin1G3S6PT1RJ45
100
-
101
82
  from xoa_driver.internals.hli.ports.port_l23.family_edun import (
102
83
  PEdun800G3S1PSMPX_a,
103
- PEdun1600G4S1POSFP_a
84
+ PEdun1600G4S1POSFP_a,
104
85
  )
105
86
 
106
87
  Z10OdinPort = typing.Union[
@@ -1,75 +0,0 @@
1
- import typing
2
- from xoa_driver import ports
3
- from xoa_driver.internals.hli import revisions
4
- from xoa_driver.internals.utils.managers import ports_manager as pm
5
-
6
-
7
- if typing.TYPE_CHECKING:
8
- from xoa_driver.internals.core import interfaces as itf
9
- from .. import __interfaces as m_itf
10
-
11
- from .module_l23_base import ModuleL23
12
-
13
-
14
- @typing.final
15
- @revisions.register_valkyrie_module(rev="Odin-1G-3S-6P")
16
- class MOdin1G3S6P(ModuleL23):
17
- """Test module Odin-1G-3S-6P"""
18
-
19
- def __init__(self, conn: "itf.IConnection", init_data: "m_itf.ModuleInitData") -> None:
20
- super().__init__(conn, init_data)
21
- self.ports: pm.PortsManager[ports.POdin1G3S6P] = pm.PortsManager(
22
- conn=conn,
23
- ports_type=ports.POdin1G3S6P,
24
- module_id=self.module_id,
25
- ports_count=self.ports_count
26
- )
27
- """Port Index Manager of Odin-1G-3S-6P"""
28
-
29
-
30
- @typing.final
31
- @revisions.register_valkyrie_module(rev="Odin-1G-3S-6P[b]")
32
- class MOdin1G3S6P_b(ModuleL23):
33
- """Test module Odin-1G-3S-6P[b]"""
34
-
35
- def __init__(self, conn: "itf.IConnection", init_data: "m_itf.ModuleInitData") -> None:
36
- super().__init__(conn, init_data)
37
- self.ports: pm.PortsManager[ports.POdin1G3S6P_b] = pm.PortsManager(
38
- conn=conn,
39
- ports_type=ports.POdin1G3S6P_b,
40
- module_id=self.module_id,
41
- ports_count=self.ports_count
42
- )
43
- """Port Index Manager of Odin-1G-3S-6P[b]"""
44
-
45
-
46
- @typing.final
47
- @revisions.register_valkyrie_module(rev="Odin-1G-3S-6P-E")
48
- class MOdin1G3S6PE(ModuleL23):
49
- """Test module Odin-1G-3S-6P-E"""
50
-
51
- def __init__(self, conn: "itf.IConnection", init_data: "m_itf.ModuleInitData") -> None:
52
- super().__init__(conn, init_data)
53
- self.ports: pm.PortsManager[ports.POdin1G3S6PE] = pm.PortsManager(
54
- conn=conn,
55
- ports_type=ports.POdin1G3S6PE,
56
- module_id=self.module_id,
57
- ports_count=self.ports_count
58
- )
59
- """Port Index Manager of Odin-1G-3S-6P-E"""
60
-
61
-
62
- @typing.final
63
- @revisions.register_valkyrie_module(rev="Odin-1G-3S-2P-T")
64
- class MOdin1G3S2PT(ModuleL23):
65
- """Test module Odin-1G-3S-2P-T"""
66
-
67
- def __init__(self, conn: "itf.IConnection", init_data: "m_itf.ModuleInitData") -> None:
68
- super().__init__(conn, init_data)
69
- self.ports: pm.PortsManager[ports.POdin1G3S2PT] = pm.PortsManager(
70
- conn=conn,
71
- ports_type=ports.POdin1G3S2PT,
72
- module_id=self.module_id,
73
- ports_count=self.ports_count
74
- )
75
- """Port Index Manager of Odin-1G-3S-2P-T"""
@@ -1,85 +0,0 @@
1
- import typing
2
- from xoa_driver import ports
3
- from xoa_driver.internals.hli import revisions
4
- from xoa_driver.internals.utils.managers import ports_manager as pm
5
-
6
- if typing.TYPE_CHECKING:
7
- from xoa_driver.internals.core import interfaces as itf
8
- from .. import __interfaces as m_itf
9
-
10
- from .module_l23_base import ModuleL23
11
-
12
-
13
- @typing.final
14
- @revisions.register_valkyrie_module(rev="Odin-5G-4S-6P-CU")
15
- class MOdin5G4S6PCU(ModuleL23):
16
- """Test module Odin-5G-4S-6P-CU"""
17
- def __init__(self, conn: "itf.IConnection", init_data: "m_itf.ModuleInitData") -> None:
18
- super().__init__(conn, init_data)
19
- self.ports: pm.PortsManager[ports.POdin5G4S6PCU] = pm.PortsManager(
20
- conn=conn,
21
- ports_type=ports.POdin5G4S6PCU,
22
- module_id=self.module_id,
23
- ports_count=self.ports_count
24
- )
25
- """Port Index Manager of Odin-5G-4S-6P-CU"""
26
-
27
-
28
- @typing.final
29
- @revisions.register_valkyrie_module(rev="Odin-10G-5S-6P-CU")
30
- class MOdin10G5S6PCU(ModuleL23):
31
- """Test module Odin-10G-5S-6P-CU"""
32
- def __init__(self, conn: "itf.IConnection", init_data: "m_itf.ModuleInitData") -> None:
33
- super().__init__(conn, init_data)
34
- self.ports: pm.PortsManager[ports.POdin10G5S6PCU] = pm.PortsManager(
35
- conn=conn,
36
- ports_type=ports.POdin10G5S6PCU,
37
- module_id=self.module_id,
38
- ports_count=self.ports_count
39
- )
40
- """Port Index Manager of Odin-10G-5S-6P-CU"""
41
-
42
-
43
- @typing.final
44
- @revisions.register_valkyrie_module(rev="Odin-10G-5S-6P-CU[b]")
45
- class MOdin10G5S6PCU_b(ModuleL23):
46
- """Test module Odin-10G-5S-6P-CU[b]"""
47
- def __init__(self, conn: "itf.IConnection", init_data: "m_itf.ModuleInitData") -> None:
48
- super().__init__(conn, init_data)
49
- self.ports: pm.PortsManager[ports.POdin10G5S6PCU_b] = pm.PortsManager(
50
- conn=conn,
51
- ports_type=ports.POdin10G5S6PCU_b,
52
- module_id=self.module_id,
53
- ports_count=self.ports_count
54
- )
55
- """Port Index Manager of Odin-10G-5S-6P-CU[b]"""
56
-
57
-
58
- @typing.final
59
- @revisions.register_valkyrie_module(rev="Odin-10G-3S-6P-CU")
60
- class MOdin10G3S6PCU(ModuleL23):
61
- """Test module Odin-10G-3S-6P-CU"""
62
- def __init__(self, conn: "itf.IConnection", init_data: "m_itf.ModuleInitData") -> None:
63
- super().__init__(conn, init_data)
64
- self.ports: pm.PortsManager[ports.POdin10G3S6PCU] = pm.PortsManager(
65
- conn=conn,
66
- ports_type=ports.POdin10G3S6PCU,
67
- module_id=self.module_id,
68
- ports_count=self.ports_count
69
- )
70
- """Port Index Manager of Odin-10G-3S-6P-CU"""
71
-
72
-
73
- @typing.final
74
- @revisions.register_valkyrie_module(rev="Odin-10G-3S-2P-CU")
75
- class MOdin10G3S2PCU(ModuleL23):
76
- """Test module Odin-10G-3S-2P-CU"""
77
- def __init__(self, conn: "itf.IConnection", init_data: "m_itf.ModuleInitData") -> None:
78
- super().__init__(conn, init_data)
79
- self.ports: pm.PortsManager[ports.POdin10G3S2PCU] = pm.PortsManager(
80
- conn=conn,
81
- ports_type=ports.POdin10G3S2PCU,
82
- module_id=self.module_id,
83
- ports_count=self.ports_count
84
- )
85
- """Port Index Manager of Odin-10G-3S-2P-CU"""