Commit bd079eb0 authored by Adrian Pino's avatar Adrian Pino
Browse files

Add kwargs variables in _network_catalog. Add scs_as_id check

parent 5fa21734
Loading
Loading
Loading
Loading
+14 −6
Original line number Diff line number Diff line
@@ -21,16 +21,24 @@ def _edgecloud_catalog(client_name: str, base_url: str, **kwargs):
        )


def _network_catalog(client_name: str, base_url: str, scs_as_id: str):
def _network_catalog(client_name: str, base_url: str, **kwargs):
    if "scs_as_id" not in kwargs:
        raise ValueError("Missing required 'scs_as_id' for network clients.")
    scs_as_id = kwargs.pop("scs_as_id")

    network_factory = {
        "open5gs": lambda url, scs_id: Open5GSClient(base_url=url, scs_as_id=scs_id),
        "oai": lambda url, scs_id: OaiCoreClient(base_url=url, scs_as_id=scs_id),
        "open5gcore": lambda url, scs_id: Open5GCoreClient(
            base_url=url, scs_as_id=scs_id
        "open5gs": lambda url, scs_id, **kw: Open5GSClient(
            base_url=url, scs_as_id=scs_id, **kw
        ),
        "oai": lambda url, scs_id, **kw: OaiCoreClient(
            base_url=url, scs_as_id=scs_id, **kw
        ),
        "open5gcore": lambda url, scs_id, **kw: Open5GCoreClient(
            base_url=url, scs_as_id=scs_id, **kw
        ),
    }
    try:
        return network_factory[client_name](base_url, scs_as_id)
        return network_factory[client_name](base_url, scs_as_id, **kwargs)
    except KeyError:
        raise ValueError(
            f"Invalid network client '{client_name}'. Available: {list(network_factory)}"