示例#1
0
        public static ReadOnlySequence <byte> NewProducer(string topic, long producerId, long requestId, string producerName, bool encrypted, IDictionary <string, string> metadata, ISchemaInfo schemaInfo, long epoch, bool userProvidedProducerName, Common.ProducerAccessMode accessMode)
        {
            var producer = new CommandProducer
            {
                Topic              = topic,
                ProducerId         = (ulong)producerId,
                RequestId          = (ulong)requestId,
                Epoch              = (ulong)epoch,
                ProducerAccessMode = ConvertProducerAccessMode(accessMode)
            };

            if (!ReferenceEquals(producerName, null))
            {
                producer.ProducerName = producerName;
            }
            producer.UserProvidedProducerName = userProvidedProducerName;
            producer.Encrypted = encrypted;

            producer.Metadatas.AddRange(CommandUtils.ToKeyValueList(metadata));

            if (null != schemaInfo)
            {
                producer.Schema = GetSchema(schemaInfo);
            }

            return(Serializer.Serialize(producer.ToBaseCommand()));
        }
示例#2
0
 public ProducerConfigBuilder <T> AccessMode(Common.ProducerAccessMode accessMode)
 {
     _conf.AccessMode = accessMode;
     return(this);
 }