Пример #1
0
        public void ApiVersionsResponse(
            [Values(
                 ErrorResponseCode.None,
                 ErrorResponseCode.BrokerNotAvailable
                 )] ErrorResponseCode errorCode
            )
        {
            var supported = new List <ApiVersionsResponse.VersionSupport>();

            for (short apiKey = 0; apiKey <= 18; apiKey++)
            {
                supported.Add(new ApiVersionsResponse.VersionSupport((ApiKeyRequestType)apiKey, 0, (short)_randomizer.Next(0, 2)));
            }
            var response = new ApiVersionsResponse(errorCode, supported);

            response.AssertCanEncodeDecodeResponse(0);
        }
Пример #2
0
        public void ApiVersionsResponse(
            [Values(
                 ErrorCode.NONE,
                 ErrorCode.BROKER_NOT_AVAILABLE
                 )] ErrorCode errorCode
            )
        {
            var supported = new List <ApiVersionsResponse.VersionSupport>();

            for (short apiKey = 0; apiKey <= 18; apiKey++)
            {
                supported.Add(new ApiVersionsResponse.VersionSupport((ApiKey)apiKey, 0, (short)_randomizer.Next(0, 2)));
            }
            var response = new ApiVersionsResponse(errorCode, supported);

            response.AssertCanEncodeDecodeResponse(0);
        }
Пример #3
0
        private static bool TryEncodeResponse(IKafkaWriter writer, IRequestContext context, ApiVersionsResponse response)
        {
            if (response == null)
            {
                return(false);
            }

            writer.Write(response.error_code)
            .Write(response.api_versions.Count);
            foreach (var versionSupport in response.api_versions)
            {
                writer.Write((short)versionSupport.api_key)
                .Write(versionSupport.min_version)
                .Write(versionSupport.max_version);
            }
            return(true);
        }
Пример #4
0
        private static bool TryEncodeResponse(IKafkaWriter writer, IRequestContext context, ApiVersionsResponse response)
        {
            if (response == null)
            {
                return(false);
            }

            writer.Write(response.ErrorCode)
            .Write(response.SupportedVersions.Count);
            foreach (var versionSupport in response.SupportedVersions)
            {
                writer.Write((short)versionSupport.ApiKey)
                .Write(versionSupport.MinVersion)
                .Write(versionSupport.MaxVersion);
            }
            return(true);
        }