consumers

package
v0.0.0-...-c5d900d Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 10, 2019 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ConsumerService = fx.Provide(func(lc fx.Lifecycle, params ConsumerParams) (Consumer, error) {
	logger := params.Logger
	if logger == nil {
		logger = log15.New()
		logger.SetHandler(log15.DiscardHandler())
	}
	c, err := NewConsumer(params.Args, params.Redis, logger)
	if err != nil {
		return nil, err
	}
	utils.Append(lc, c, logger)
	return c, nil
})

Functions

This section is empty.

Types

type Consumer

type Consumer interface {
	utils.Service
	Consume(features *models.FeaturesMail) error
}
var StderrConsumer Consumer = Writer{WriteCloser: os.Stderr, /* contains filtered or unexported fields */}
var StdoutConsumer Consumer = Writer{WriteCloser: os.Stdout, /* contains filtered or unexported fields */}

func NewConsumer

func NewConsumer(args *arguments.Args, redis utils.RedisConn, logger log15.Logger) (Consumer, error)

func NewFileConsumer

func NewFileConsumer(args arguments.ConsumerArgs) (Consumer, error)

func NewHTTPConsumer

func NewHTTPConsumer(args arguments.ConsumerArgs) (Consumer, error)

func NewRabbitConsumer

func NewRabbitConsumer(args arguments.RabbitArgs, logger log15.Logger) (Consumer, error)

type ConsumerParams

type ConsumerParams struct {
	fx.In
	Args   *arguments.Args
	Logger log15.Logger    `optional:"true"`
	Redis  utils.RedisConn `name:"consumer" optional:"true"`
}

type ElasticsearchConsumer

type ElasticsearchConsumer struct {
	// contains filtered or unexported fields
}

func NewElasticsearchConsumer

func NewElasticsearchConsumer(urls []string, indexName string, logger log15.Logger) (*ElasticsearchConsumer, error)

func (*ElasticsearchConsumer) Close

func (c *ElasticsearchConsumer) Close() (err error)

func (*ElasticsearchConsumer) Consume

func (c *ElasticsearchConsumer) Consume(features *models.FeaturesMail) error

func (*ElasticsearchConsumer) Name

func (c *ElasticsearchConsumer) Name() string

func (*ElasticsearchConsumer) Prestart

func (c *ElasticsearchConsumer) Prestart() error

type HTTPConsumer

type HTTPConsumer struct {
	// contains filtered or unexported fields
}

func (*HTTPConsumer) Consume

func (c *HTTPConsumer) Consume(features *models.FeaturesMail) error

func (*HTTPConsumer) Name

func (c *HTTPConsumer) Name() string

type KafkaConsumer

type KafkaConsumer struct {
	// contains filtered or unexported fields
}

func NewKafkaConsumer

func NewKafkaConsumer(brokers []string, topic string, logger log15.Logger) (*KafkaConsumer, error)

func (*KafkaConsumer) Consume

func (c *KafkaConsumer) Consume(features *models.FeaturesMail) error

func (*KafkaConsumer) Name

func (c *KafkaConsumer) Name() string

func (*KafkaConsumer) Start

func (c *KafkaConsumer) Start(ctx context.Context) error

type RabbitConsumer

type RabbitConsumer struct {
	// contains filtered or unexported fields
}

func (*RabbitConsumer) Close

func (c *RabbitConsumer) Close() error

func (*RabbitConsumer) Consume

func (c *RabbitConsumer) Consume(features *models.FeaturesMail) error

func (*RabbitConsumer) Name

func (c *RabbitConsumer) Name() string

func (*RabbitConsumer) Start

func (c *RabbitConsumer) Start(ctx context.Context) error

type RedisConsumer

type RedisConsumer struct {
	// contains filtered or unexported fields
}

func NewRedisConsumer

func NewRedisConsumer(args arguments.RedisArgs, redis utils.RedisConn) (*RedisConsumer, error)

func (*RedisConsumer) Consume

func (c *RedisConsumer) Consume(features *models.FeaturesMail) error

func (*RedisConsumer) Name

func (c *RedisConsumer) Name() string

type Writer

type Writer struct {
	io.WriteCloser
	// contains filtered or unexported fields
}

func (Writer) Consume

func (w Writer) Consume(features *models.FeaturesMail) (err error)

func (Writer) Name

func (w Writer) Name() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL