Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions scaleway-async/scaleway_async/webhosting/v1/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
from .types import AutoConfigDomainDns
from .types import PlatformControlPanelUrls
from .types import HostingDomainCustomDomain
from .types import ControlPanel
from .types import OfferOption
from .types import PlatformControlPanel
from .types import BackupItem
Expand All @@ -49,7 +50,6 @@
from .types import Platform
from .types import BackupItemGroup
from .types import Backup
from .types import ControlPanel
from .types import DatabaseUser
from .types import Database
from .types import FtpAccount
Expand Down Expand Up @@ -175,6 +175,7 @@
"AutoConfigDomainDns",
"PlatformControlPanelUrls",
"HostingDomainCustomDomain",
"ControlPanel",
"OfferOption",
"PlatformControlPanel",
"BackupItem",
Expand All @@ -191,7 +192,6 @@
"Platform",
"BackupItemGroup",
"Backup",
"ControlPanel",
"DatabaseUser",
"Database",
"FtpAccount",
Expand Down
84 changes: 46 additions & 38 deletions scaleway-async/scaleway_async/webhosting/v1/marshalling.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@
DnsRecords,
Domain,
PlatformControlPanelUrls,
ControlPanel,
OfferOption,
PlatformControlPanel,
HostingUser,
Expand All @@ -59,7 +60,6 @@
BackupItemGroup,
ListBackupItemsResponse,
ListBackupsResponse,
ControlPanel,
ListControlPanelsResponse,
ListDatabaseUsersResponse,
ListDatabasesResponse,
Expand Down Expand Up @@ -734,6 +734,43 @@ def unmarshal_PlatformControlPanelUrls(data: Any) -> PlatformControlPanelUrls:
return PlatformControlPanelUrls(**args)


def unmarshal_ControlPanel(data: Any) -> ControlPanel:
if not isinstance(data, dict):
raise TypeError(
"Unmarshalling the type 'ControlPanel' failed as data isn't a dictionary."
)

args: dict[str, Any] = {}

field = data.get("name", None)
if field is not None:
args["name"] = field
else:
args["name"] = None

field = data.get("available", None)
if field is not None:
args["available"] = field
else:
args["available"] = False

field = data.get("logo_url", None)
if field is not None:
args["logo_url"] = field
else:
args["logo_url"] = None

field = data.get("available_languages", None)
if field is not None:
args["available_languages"] = (
[StdLanguageCode(v) for v in field] if field is not None else None
)
else:
args["available_languages"] = []

return ControlPanel(**args)


def unmarshal_OfferOption(data: Any) -> OfferOption:
if not isinstance(data, dict):
raise TypeError(
Expand Down Expand Up @@ -909,6 +946,14 @@ def unmarshal_Offer(data: Any) -> Offer:
else:
args["quota_warning"] = OfferOptionWarning.UNKNOWN_WARNING

field = data.get("control_panels", None)
if field is not None:
args["control_panels"] = (
[unmarshal_ControlPanel(v) for v in field] if field is not None else None
)
else:
args["control_panels"] = []

field = data.get("region", None)
if field is not None:
args["region"] = field
Expand Down Expand Up @@ -1200,43 +1245,6 @@ def unmarshal_ListBackupsResponse(data: Any) -> ListBackupsResponse:
return ListBackupsResponse(**args)


def unmarshal_ControlPanel(data: Any) -> ControlPanel:
if not isinstance(data, dict):
raise TypeError(
"Unmarshalling the type 'ControlPanel' failed as data isn't a dictionary."
)

args: dict[str, Any] = {}

field = data.get("name", None)
if field is not None:
args["name"] = field
else:
args["name"] = None

field = data.get("available", None)
if field is not None:
args["available"] = field
else:
args["available"] = False

field = data.get("logo_url", None)
if field is not None:
args["logo_url"] = field
else:
args["logo_url"] = None

field = data.get("available_languages", None)
if field is not None:
args["available_languages"] = (
[StdLanguageCode(v) for v in field] if field is not None else None
)
else:
args["available_languages"] = []

return ControlPanel(**args)


def unmarshal_ListControlPanelsResponse(data: Any) -> ListControlPanelsResponse:
if not isinstance(data, dict):
raise TypeError(
Expand Down
51 changes: 28 additions & 23 deletions scaleway-async/scaleway_async/webhosting/v1/types.py
Original file line number Diff line number Diff line change
Expand Up @@ -367,6 +367,29 @@ class HostingDomainCustomDomain:
"""


@dataclass
class ControlPanel:
name: str
"""
Control panel name.
"""

available: bool
"""
Define if the control panel type is available to order.
"""

logo_url: str
"""
URL of the control panel's logo.
"""

available_languages: list[StdLanguageCode]
"""
List of available languages for the control panel.
"""


@dataclass
class OfferOption:
id: str
Expand Down Expand Up @@ -636,6 +659,11 @@ class Offer:
Defines a warning if the maximum value for an option in the offer is exceeded.
"""

control_panels: list[ControlPanel]
"""
Lists available control panels for the specified offer.
"""

region: ScwRegion
"""
Region where the offer is hosted.
Expand Down Expand Up @@ -721,29 +749,6 @@ class Backup:
"""


@dataclass
class ControlPanel:
name: str
"""
Control panel name.
"""

available: bool
"""
Define if the control panel type is available to order.
"""

logo_url: str
"""
URL of the control panel's logo.
"""

available_languages: list[StdLanguageCode]
"""
List of available languages for the control panel.
"""


@dataclass
class DatabaseUser:
username: str
Expand Down
4 changes: 2 additions & 2 deletions scaleway/scaleway/webhosting/v1/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
from .types import AutoConfigDomainDns
from .types import PlatformControlPanelUrls
from .types import HostingDomainCustomDomain
from .types import ControlPanel
from .types import OfferOption
from .types import PlatformControlPanel
from .types import BackupItem
Expand All @@ -49,7 +50,6 @@
from .types import Platform
from .types import BackupItemGroup
from .types import Backup
from .types import ControlPanel
from .types import DatabaseUser
from .types import Database
from .types import FtpAccount
Expand Down Expand Up @@ -175,6 +175,7 @@
"AutoConfigDomainDns",
"PlatformControlPanelUrls",
"HostingDomainCustomDomain",
"ControlPanel",
"OfferOption",
"PlatformControlPanel",
"BackupItem",
Expand All @@ -191,7 +192,6 @@
"Platform",
"BackupItemGroup",
"Backup",
"ControlPanel",
"DatabaseUser",
"Database",
"FtpAccount",
Expand Down
84 changes: 46 additions & 38 deletions scaleway/scaleway/webhosting/v1/marshalling.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@
DnsRecords,
Domain,
PlatformControlPanelUrls,
ControlPanel,
OfferOption,
PlatformControlPanel,
HostingUser,
Expand All @@ -59,7 +60,6 @@
BackupItemGroup,
ListBackupItemsResponse,
ListBackupsResponse,
ControlPanel,
ListControlPanelsResponse,
ListDatabaseUsersResponse,
ListDatabasesResponse,
Expand Down Expand Up @@ -734,6 +734,43 @@ def unmarshal_PlatformControlPanelUrls(data: Any) -> PlatformControlPanelUrls:
return PlatformControlPanelUrls(**args)


def unmarshal_ControlPanel(data: Any) -> ControlPanel:
if not isinstance(data, dict):
raise TypeError(
"Unmarshalling the type 'ControlPanel' failed as data isn't a dictionary."
)

args: dict[str, Any] = {}

field = data.get("name", None)
if field is not None:
args["name"] = field
else:
args["name"] = None

field = data.get("available", None)
if field is not None:
args["available"] = field
else:
args["available"] = False

field = data.get("logo_url", None)
if field is not None:
args["logo_url"] = field
else:
args["logo_url"] = None

field = data.get("available_languages", None)
if field is not None:
args["available_languages"] = (
[StdLanguageCode(v) for v in field] if field is not None else None
)
else:
args["available_languages"] = []

return ControlPanel(**args)


def unmarshal_OfferOption(data: Any) -> OfferOption:
if not isinstance(data, dict):
raise TypeError(
Expand Down Expand Up @@ -909,6 +946,14 @@ def unmarshal_Offer(data: Any) -> Offer:
else:
args["quota_warning"] = OfferOptionWarning.UNKNOWN_WARNING

field = data.get("control_panels", None)
if field is not None:
args["control_panels"] = (
[unmarshal_ControlPanel(v) for v in field] if field is not None else None
)
else:
args["control_panels"] = []

field = data.get("region", None)
if field is not None:
args["region"] = field
Expand Down Expand Up @@ -1200,43 +1245,6 @@ def unmarshal_ListBackupsResponse(data: Any) -> ListBackupsResponse:
return ListBackupsResponse(**args)


def unmarshal_ControlPanel(data: Any) -> ControlPanel:
if not isinstance(data, dict):
raise TypeError(
"Unmarshalling the type 'ControlPanel' failed as data isn't a dictionary."
)

args: dict[str, Any] = {}

field = data.get("name", None)
if field is not None:
args["name"] = field
else:
args["name"] = None

field = data.get("available", None)
if field is not None:
args["available"] = field
else:
args["available"] = False

field = data.get("logo_url", None)
if field is not None:
args["logo_url"] = field
else:
args["logo_url"] = None

field = data.get("available_languages", None)
if field is not None:
args["available_languages"] = (
[StdLanguageCode(v) for v in field] if field is not None else None
)
else:
args["available_languages"] = []

return ControlPanel(**args)


def unmarshal_ListControlPanelsResponse(data: Any) -> ListControlPanelsResponse:
if not isinstance(data, dict):
raise TypeError(
Expand Down
Loading