'Create a new ConnectionParameters instance. See `Parameters` for
default values.
:param str host: Hostname or IP Address to connect to
:param int port: TCP port to connect to
:param str virtual_host: RabbitMQ virtual host to use
:param pika.credentials.Credentials credentials: auth credentials
:param int channel_max: Maximum number of channels to allow
:param int frame_max: The maximum byte size for an AMQP frame
:param int heartbeat: Heartbeat timeout. Max between this value
and server\'s proposal will be used as the heartbeat timeout. Use 0
to deactivate heartbeats and None to accept server\'s proposal.
:param bool ssl: Enable SSL
:param dict ssl_options: None or a dict of arguments to be passed to
ssl.wrap_socket
:param int connection_attempts: Maximum number of retry attempts
:param int|float retry_delay: Time to wait in seconds, before the next
:param int|float socket_timeout: Use for high latency networks
:param str locale: Set the locale value
:param bool backpressure_detection: DEPRECATED in favor of
`Connection.Blocked` and `Connection.Unblocked`. See
`Connection.add_on_connection_blocked_callback`.
:param blocked_connection_timeout: If not None,
the value is a non-negative timeout, in seconds, for the
connection to remain blocked (triggered by Connection.Blocked from
broker); if the timeout expires before connection becomes unblocked,
the connection will be torn down, triggering the adapter-specific
mechanism for informing client app about the closed connection (
e.g., on_close_callback or ConnectionClosed exception) with
`reason_code` of `InternalCloseReasons.BLOCKED_CONNECTION_TIMEOUT`.
:type blocked_connection_timeout: None, int, float
:param client_properties: None or dict of client properties used to
override the fields in the default client poperties reported to
RabbitMQ via `Connection.StartOk` method.
:param heartbeat_interval: DEPRECATED; use `heartbeat` instead, and
don\'t pass both'

def __init__(self, host=_DEFAULT, port=_DEFAULT, virtual_host=_DEFAULT, credentials=_DEFAULT, channel_max=_DEFAULT, frame_max=_DEFAULT, heartbeat=_DEFAULT, ssl=_DEFAULT, ssl_options=_DEFAULT, connection_attempts=_DEFAULT, retry_delay=_DEFAULT, socket_timeout=_DEFAULT, locale=_DEFAULT, backpressure_detection=_DEFAULT, blocked_connection_timeout=_DEFAULT, client_properties=_DEFAULT, **kwargs):

    super(ConnectionParameters, self).__init__()
    if (backpressure_detection is not self._DEFAULT):
        self.backpressure_detection = backpressure_detection
    if (blocked_connection_timeout is not self._DEFAULT):
        self.blocked_connection_timeout = blocked_connection_timeout
    if (channel_max is not self._DEFAULT):
        self.channel_max = channel_max
    if (client_properties is not self._DEFAULT):
        self.client_properties = client_properties
    if (connection_attempts is not self._DEFAULT):
        self.connection_attempts = connection_attempts
    if (credentials is not self._DEFAULT):
        self.credentials = credentials
    if (frame_max is not self._DEFAULT):
        self.frame_max = frame_max
    if (heartbeat is not self._DEFAULT):
        self.heartbeat = heartbeat
    try:
        heartbeat_interval = kwargs.pop('heartbeat_interval')
    except KeyError:
        pass
    else:
        warnings.warn('heartbeat_interval    is    deprecated,    use    heartbeat', DeprecationWarning, stacklevel=2)
        if (heartbeat is not self._DEFAULT):
            raise TypeError('heartbeat    and    deprecated    heartbeat_interval    are    mutually-exclusive')
        self.heartbeat = heartbeat_interval
    if (host is not self._DEFAULT):
        self.host = host
    if (locale is not self._DEFAULT):
        self.locale = locale
    if (retry_delay is not self._DEFAULT):
        self.retry_delay = retry_delay
    if (socket_timeout is not self._DEFAULT):
        self.socket_timeout = socket_timeout
    if (ssl is not self._DEFAULT):
        self.ssl = ssl
    if (ssl_options is not self._DEFAULT):
        self.ssl_options = ssl_options
    if (port is not self._DEFAULT):
        self.port = port
    elif (ssl is not self._DEFAULT):
        self.port = (self.DEFAULT_SSL_PORT if self.ssl else self.DEFAULT_PORT)
    if (virtual_host is not self._DEFAULT):
        self.virtual_host = virtual_host
    if kwargs:
        raise TypeError(('Unexpected    kwargs:    %r' % (kwargs,)))
