@classmethod
def from_metadata(cls, metadata, handler, socket_timeout_ms,
    offsets_channel_socket_timeout_ms, buffer_size=64 * 1024, source_host=
    '', source_port=0, ssl_config=None, broker_version='0.9.0',
    api_versions=None):
    """Create a Broker using BrokerMetadata

        :param metadata: Metadata that describes the broker.
        :type metadata: :class:`pykafka.protocol.BrokerMetadata.`
        :param handler: A Handler instance that will be used to service requests
            and responses
        :type handler: :class:`pykafka.handlers.Handler`
        :param socket_timeout_ms: The socket timeout for network requests
        :type socket_timeout_ms: int
        :param offsets_channel_socket_timeout_ms: The socket timeout for network
            requests on the offsets channel
        :type offsets_channel_socket_timeout_ms: int
        :param buffer_size: The size (bytes) of the internal buffer used to
            receive network responses
        :type buffer_size: int
        :param source_host: The host portion of the source address for
            socket connections
        :type source_host: str
        :param source_port: The port portion of the source address for
            socket connections
        :type source_port: int
        :param ssl_config: Config object for SSL connection
        :type ssl_config: :class:`pykafka.connection.SslConfig`
        :param broker_version: The protocol version of the cluster being connected to.
            If this parameter doesn't match the actual broker version, some pykafka
            features may not work properly.
        :type broker_version: str
        :param api_versions: A sequence of :class:`pykafka.protocol.ApiVersionsSpec`
            objects indicating the API version compatibility of this broker
        :type api_versions: Iterable of :class:`pykafka.protocol.ApiVersionsSpec`
        """
    return cls(metadata.id, metadata.host, metadata.port, handler,
        socket_timeout_ms, offsets_channel_socket_timeout_ms, buffer_size=
        buffer_size, source_host=source_host, source_port=source_port,
        ssl_config=ssl_config, broker_version=broker_version, api_versions=
        api_versions)
