예제 #1
0
    public ConsumerWithToken CreateConsumer(CreateConsumerRequest request, string owner)
    {
        var wrapper = _provider.CreateConsumer(request.Name, request.Config, request.KeyType, request.ValueType,
                                               TimeSpan.FromMilliseconds(request.ExpirationTimeoutMs), owner);

        _logger.LogDebug("Created consumer '{Id}' ('{Name}')", wrapper.Id, wrapper.Name);
        return(MapConsumerWithToken(wrapper));
    }
예제 #2
0
        public static async Task <ConfluentResponse <ConsumerInstance> > CreateConsumerInstance(IConfluentClient client,
                                                                                                string instanceId, string consumerGroupName)
        {
            var request = new CreateConsumerRequest
            {
                AutoCommitEnabled = true,
                InstanceId        = instanceId,
                MessageFormat     = MessageFormat.Avro
            };

            return(await client.CreateConsumerAsync(consumerGroupName, request));
        }
예제 #3
0
        public async Task <ConfluentResponse <ConsumerInstance> > CreateConsumerAsync(
            string consumerGroupName,
            CreateConsumerRequest createConsumerRequest,
            CancellationToken cancellationToken)
        {
            string requestUri = string.Format("/consumers/{0}", consumerGroupName);

            HttpRequestMessage request = CreateRequestMessage(HttpMethod.Post, requestUri)
                                         .WithContent(createConsumerRequest, ContentTypeKafkaDefault)
                                         .WithHostHeader(_clientSettings.KafkaBaseUrl);

            return(await ProcessRequest <ConsumerInstance>(request, cancellationToken).ConfigureAwait(false));
        }
예제 #4
0
    public ActionResult <Responses.Consumer> CreateConsumer([Required] CreateConsumerRequest request)
    {
        var consumer = _service.CreateConsumer(request, User.Identity?.Name);

        return(CreatedAtAction(nameof(GetConsumer), new { consumerId = consumer.Id }, consumer));
    }
예제 #5
0
 public async Task <ConfluentResponse <ConsumerInstance> > CreateConsumerAsync(
     string consumerGroupName,
     CreateConsumerRequest createConsumerRequest)
 {
     return(await CreateConsumerAsync(consumerGroupName, createConsumerRequest, CancellationToken.None).ConfigureAwait(false));
 }