# Path: acos_client/errors.py
# class RequiredAttributeNotSpecified(Exception):
# class ACOSException(Exception):
# class ACOSUnsupportedVersion(ACOSException):
# class ACOSUnknownError(ACOSException):
# class AddressSpecifiedIsInUse(ACOSException):
# class AuthenticationFailure(ACOSException):
# class InvalidSessionID(ACOSException):
# class Exists(ACOSException):
# class NotFound(ACOSException):
# class NoSuchServiceGroup(ACOSException):
# class NotImplemented(ACOSException):
# class InUse(ACOSException):
# class InvalidPartitionParameter(ACOSException):
# class MemoryFault(ACOSException):
# class InvalidParameter(ACOSException):
# class OutOfPartitions(ACOSException):
# class PartitionIdExists(ACOSException):
# class HMMissingHttpPassive(ACOSException):
# class AxapiJsonFormatError(ACOSException):
# class ConfigManagerNotReady(ACOSException):
# class DhcpAcquireFailed(ACOSException):
# class InvalidInteger(ACOSException):
# class CertificateParsingFailed(ACOSException):
# class KeyParsingFailed(ACOSException):
# class FeatureNotSupported(ACOSException):
# class ACOSSystemNotReady(ACOSException):
# class ACOSSystemIsBusy(ACOSException):
# class LicenseOptionNotAllowed(ACOSException):
#     def __init__(self, url, attribute, requires=[]):
#     def __init__(self, code=1, msg=''):
#     def __str__(self):
# 
# Path: acos_client/v30/base.py
# class BaseV30(object):
#     def __init__(self, client):
#     def minimal_dict(self, my_dict, exclude=[]):
#     def url(self, action):
#     def _request(self, method, action, params, retry_count=0, max_retries=None,
#                  timeout=None, axapi_args=None, **kwargs):
#     def _get(self, action, params={}, max_retries=None, timeout=None, axapi_args=None, **kwargs):
#     def _post(self, action, params={}, max_retries=None, timeout=None, axapi_args=None, **kwargs):
#     def _put(self, action, params={}, max_retries=None, timeout=None, axapi_args=None, **kwargs):
#     def _delete(self, action, params={}, max_retries=None, timeout=None, axapi_args=None, **kwargs):
#     def _is_ipv6(self, ip_address):


from acos_client import errors as ae
from acos_client.v30 import base

    def _update(
        self,
        virtual_server_name,
        name,
        protocol,
        protocol_port,
        service_group_name,
        s_pers_name=None,
        c_pers_name=None,
        status=1,
        autosnat=None,
        ipinip=None,
        no_dest_nat=None,
        source_nat_pool=None,
        ha_conn_mirror=None,
        use_rcv_hop=None,
        conn_limit=None,
        virtual_port_templates=None,
        tcp_template=None,
        udp_template=None,
        template_server_ssl=None,
        template_client_ssl=None,
        sampling_enable=None,
        aflex_scripts=None,
        **kwargs
    ):

        vp = self.get(virtual_server_name, name, protocol, protocol_port)
        if vp is None:

# Path: acos_client/errors.py
# class RequiredAttributeNotSpecified(Exception):
# class ACOSException(Exception):
# class ACOSUnsupportedVersion(ACOSException):
# class ACOSUnknownError(ACOSException):
# class AddressSpecifiedIsInUse(ACOSException):
# class AuthenticationFailure(ACOSException):
# class InvalidSessionID(ACOSException):
# class Exists(ACOSException):
# class NotFound(ACOSException):
# class NoSuchServiceGroup(ACOSException):
# class NotImplemented(ACOSException):
# class InUse(ACOSException):
# class InvalidPartitionParameter(ACOSException):
# class MemoryFault(ACOSException):
# class InvalidParameter(ACOSException):
# class OutOfPartitions(ACOSException):
# class PartitionIdExists(ACOSException):
# class HMMissingHttpPassive(ACOSException):
# class AxapiJsonFormatError(ACOSException):
# class ConfigManagerNotReady(ACOSException):
# class DhcpAcquireFailed(ACOSException):
# class InvalidInteger(ACOSException):
# class CertificateParsingFailed(ACOSException):
# class KeyParsingFailed(ACOSException):
# class FeatureNotSupported(ACOSException):
# class ACOSSystemNotReady(ACOSException):
# class ACOSSystemIsBusy(ACOSException):
# class LicenseOptionNotAllowed(ACOSException):
#     def __init__(self, url, attribute, requires=[]):
#     def __init__(self, code=1, msg=''):
#     def __str__(self):
# 
# Path: acos_client/v30/base.py
# class BaseV30(object):
#     def __init__(self, client):
#     def minimal_dict(self, my_dict, exclude=[]):
#     def url(self, action):
#     def _request(self, method, action, params, retry_count=0, max_retries=None,
#                  timeout=None, axapi_args=None, **kwargs):
#     def _get(self, action, params={}, max_retries=None, timeout=None, axapi_args=None, **kwargs):
#     def _post(self, action, params={}, max_retries=None, timeout=None, axapi_args=None, **kwargs):
#     def _put(self, action, params={}, max_retries=None, timeout=None, axapi_args=None, **kwargs):
#     def _delete(self, action, params={}, max_retries=None, timeout=None, axapi_args=None, **kwargs):
#     def _is_ipv6(self, ip_address):


# Path: acos_client/v30/slb/virtual_port.py
from acos_client import errors as ae
from acos_client.v30 import base


    def _update(
        self,
        virtual_server_name,
        name,
        protocol,
        protocol_port,
        service_group_name,
        s_pers_name=None,
        c_pers_name=None,
        status=1,
        autosnat=None,
        ipinip=None,
        no_dest_nat=None,
        source_nat_pool=None,
        ha_conn_mirror=None,
        use_rcv_hop=None,
        conn_limit=None,
        virtual_port_templates=None,
        tcp_template=None,
        udp_template=None,
        template_server_ssl=None,
        template_client_ssl=None,
        sampling_enable=None,
        aflex_scripts=None,
        **kwargs
    ):

        vp = self.get(virtual_server_name, name, protocol, protocol_port)
        if vp is None:

            raise ae.NotFound()