Skip to content

Switch

Product block for Switch products.

SwitchModel

Bases: strEnum

Enumerator for the different types of switches.

Source code in gso/products/product_blocks/switch.py
class SwitchModel(strEnum):
    """Enumerator for the different types of switches."""

    EX3400_24T = "EX3400 - 24T"
    """Juniper EX3400 24T."""
    EX3400_48T = "EX3400 - 48T"
    """Juniper EX3400 48T."""
    EX4300_32F = "EX4300 - 32F"
    """Juniper EX4300 32F."""

EX3400_24T = 'EX3400 - 24T' class-attribute instance-attribute

Juniper EX3400 24T.

EX3400_48T = 'EX3400 - 48T' class-attribute instance-attribute

Juniper EX3400 48T.

EX4300_32F = 'EX4300 - 32F' class-attribute instance-attribute

Juniper EX4300 32F.

SwitchBlockInactive

Bases: ProductBlockModel

A switch that's being currently inactive. See SwitchBlock.

Source code in gso/products/product_blocks/switch.py
class SwitchBlockInactive(
    ProductBlockModel,
    lifecycle=[SubscriptionLifecycle.INITIAL],
    product_block_name="SwitchBlock",
):
    """A switch that's being currently inactive. See `SwitchBlock`."""

    fqdn: str | None = None
    ts_port: PortNumber | None = None
    site: SiteBlockInactive | None = None
    switch_vendor: Vendor | None = None
    switch_model: SwitchModel | None = None

SwitchBlockProvisioning

Bases: SwitchBlockInactive

A switch that's being provisioned. See SwitchBlock.

Source code in gso/products/product_blocks/switch.py
class SwitchBlockProvisioning(SwitchBlockInactive, lifecycle=[SubscriptionLifecycle.PROVISIONING]):
    """A switch that's being provisioned. See `SwitchBlock`."""

    fqdn: str
    ts_port: PortNumber
    site: SiteBlockProvisioning
    switch_vendor: Vendor
    switch_model: SwitchModel

SwitchBlock

Bases: SwitchBlockProvisioning

A switch that's currently deployed in the network.

Attributes:

Name Type Description
fqdn str

The FQDN of the switch.

ts_port PortNumber

The port of the terminal server that this switch is connected to. Used to offer out of band access.

site SiteBlock

The site that this switch resides in. Both physically and computationally.

switch_vendor Vendor

The vendor of the switch.

switch_model SwitchModel

The model of the switch.

Source code in gso/products/product_blocks/switch.py
class SwitchBlock(SwitchBlockProvisioning, lifecycle=[SubscriptionLifecycle.ACTIVE]):
    """A switch that's currently deployed in the network.

    Attributes:
        fqdn: The FQDN of the switch.
        ts_port: The port of the terminal server that this switch is connected to. Used to offer out of band access.
        site: The site that this switch resides in. Both physically and computationally.
        switch_vendor: The vendor of the switch.
        switch_model: The model of the switch.
    """

    fqdn: str
    ts_port: PortNumber
    site: SiteBlock
    switch_vendor: Vendor
    switch_model: SwitchModel