async def update_system( self, name: str = None, location: str = None, contact: str = None, default_gateway: IpAddress = None, device_operation_mode: DeviceOperationModeEnum = None ) -> SystemModel: input_data = dict(name=name, location=location, contact=contact, device_operation_mode=device_operation_mode, default_gateway=default_gateway) data_to_send = SystemBase._update_system_validate_input_and_return_data_to_send( input_data=input_data) r = await self._session.put(url=self._system_base_url, json=data_to_send) validate_200(r) return SystemModel(**r.json())
async def update_system_time( self, time_server_protocol: TimeServerProtocolEnum, time_servers: List[IpAddress], use_sntp_unicast: bool, local_utc_offset_in_seconds: int = None, auto_adjust_dst: bool = None) -> SystemTimeModel: if time_server_protocol: time_server_protocol = time_server_protocol.value input_data = dict( local_utc_offset_in_seconds=local_utc_offset_in_seconds, auto_adjust_dst=auto_adjust_dst, time_server_protocol=time_server_protocol, time_servers=time_servers, use_sntp_unicast=use_sntp_unicast) data_to_send = SystemBase._update_system_time_validate_input_and_return_data_to_send( input_data=input_data) print(data_to_send) r = await self._session.put(url=f"{self._system_base_url}/time", json=data_to_send) validate_200(r) return SystemTimeModel(**r.json())
async def get_all_ip_address(self) -> IpAddressSubnetList: r = await self._session.get(url=self._ipaddress_base_url) validate_200(r) return IpAddressSubnetList(**r.json())
async def get_mac_authentication(self) -> MacAuthenticationModel: r = await self._session.get(url=self._mac_authentication_base_url) validate_200(r) return MacAuthenticationModel(**r.json())
async def get_authentication_console(self) -> AuthenticationConsole: r = await self._session.get( url=f"{self._authentication_base_url}/console") validate_200(r) return AuthenticationConsole(**r.json())
async def get_mac_table_vlan(self, vlan_id: str) -> MacTableEntryList: r = await self._session.get( url=f"vlans/{vlan_id}/{self._mac_table_base_url}") validate_200(r) return MacTableEntryList(**r.json())
async def get_mac_table(self) -> MacTableEntryList: r = await self._session.get(url=self._mac_table_base_url) validate_200(r) return MacTableEntryList(**r.json())
async def get_stp_ports(self) -> SpanningTreePortList: r = await self._session.get(url=f"{self._stp_base_url}/ports") validate_200(r) return SpanningTreePortList(**r.json())
async def get_syslog(self) -> SyslogModel: r = await self._session.get(url=self._syslog_base_url) validate_200(r) return SyslogModel(**r.json())
async def get_snmp_server(self) -> SnmpServerModel: r = await self._session.get(url=self._snmp_server_base_url) validate_200(r) return SnmpServerModel(**r.json())
async def get_dot1x_port_security(self) -> Dot1xPortSecurityList: r = await self._session.get(url=f"{self._dot1x_base_url}/port_security" ) validate_200(r) return Dot1xPortSecurityList(**r.json())
async def get_dot1x_authenticator(self) -> Dot1xAuthenticatorPortList: r = await self._session.get(url=f"{self._dot1x_base_url}/authenticator" ) validate_200(r) return Dot1xAuthenticatorPortList(**r.json())
async def get_dot1x(self) -> Dot1xModel: r = await self._session.get(url=self._dot1x_base_url) validate_200(r) return Dot1xModel(**r.json())
async def get_snmpv3_users(self) -> SnmpV3UserList: r = await self._session.get(url=f"{self._snmpv3_base_url}/users") validate_200(r) return SnmpV3UserList(**r.json())
async def get_snmpv3(self) -> SnmpV3Model: r = await self._session.get(url=self._snmpv3_base_url) validate_200(r) return SnmpV3Model(**r.json())
async def get_tacacs_profile(self) -> TacacsProfileModel: r = await self._session.get(url=self._tacacs_profile_base_url) validate_200(r) return TacacsProfileModel(**r.json())
def get_system(self) -> SystemModel: r = self._session.get(url=self._system_base_url) validate_200(r) return SystemModel(**r.json())
async def get_snmp_server_communities(self) -> SnmpServerCommunityList: r = await self._session.get( url=f"{self._snmp_server_base_url}/communities") validate_200(r) return SnmpServerCommunityList(**r.json())
async def get_stp(self) -> SpanningTreeModel: r = await self._session.get(url=self._stp_base_url) validate_200(r) return SpanningTreeModel(**r.json())
async def get_snmp_server_hosts(self) -> SnmpServerHostList: r = await self._session.get(url=f"{self._snmp_server_base_url}/hosts") validate_200(r) return SnmpServerHostList(**r.json())
def get_mac_table_port(self, port_id: str) -> MacTableEntryList: r = self._session.get( url=f"ports/{port_id}/{self._mac_table_base_url}") validate_200(r) return MacTableEntryList(**r.json())
async def get_snmp_server_traps(self) -> SnmpServerTraps: r = await self._session.get(url=f"{self._snmp_server_base_url}/traps") validate_200(r) return SnmpServerTraps(**r.json())
async def get_mac_table_mac_address(self, mac_address: str) -> MacTableEntry: r = await self._session.get( url=f"{self._mac_table_base_url}/{mac_address}") validate_200(r) return MacTableEntry(**r.json())
async def get_transceivers(self) -> TransceiverList: r = await self._session.get(url=self._transceivers_base_url) validate_200(r) return TransceiverList(**r.json())
def get_authentication(self) -> AuthenticationModel: r = self._session.get(url=self._authentication_base_url) validate_200(r) return AuthenticationModel(**r.json())
async def get_system_status(self) -> SystemStatusModel: r = await self._session.get(url=f"{self._system_base_url}/status") validate_200(r) return SystemStatusModel(**r.json())
async def get_authentication_ssh(self) -> AuthenticationSsh: r = await self._session.get(url=f"{self._authentication_base_url}/ssh") validate_200(r) return AuthenticationSsh(**r.json())
async def get_system_time(self) -> SystemTimeModel: r = await self._session.get(url=f"{self._system_base_url}/time") validate_200(r) return SystemTimeModel(**r.json())
async def get_mac_authentication_ports(self) -> MacAuthenticationPortList: r = await self._session.get(url=f"{self._mac_authentication_base_url}/port") validate_200(r) return MacAuthenticationPortList(**r.json())
async def send_command(self, cmd: str) -> CliCommandResult: data = {"cmd": cmd} r = await self._session.post(url=self._cli_base_url, json=data) validate_200(r) return CliCommandResult(**r.json())