mirror of
https://github.com/emo2007/block-accounting.git
synced 2024-09-20 09:06:27 +00:00
40 lines
656 B
Go
40 lines
656 B
Go
package rmq
|
|
|
|
import (
|
|
"log"
|
|
|
|
amqp "github.com/rabbitmq/amqp091-go"
|
|
)
|
|
|
|
type RMQClient struct {
|
|
cc *amqp.Connection
|
|
}
|
|
|
|
// NewClient creates a new RabbitMQ client. Will panic if there are an error while dealing
|
|
func NewClient(
|
|
address string,
|
|
user string,
|
|
password string,
|
|
) *RMQClient {
|
|
cc, err := amqp.Dial("amqp://" + user + ":" + password + "@localhost:5672/")
|
|
if err != nil {
|
|
log.Fatal("error connect to rabbitmq server", err)
|
|
}
|
|
|
|
return &RMQClient{
|
|
cc: cc,
|
|
}
|
|
}
|
|
|
|
func NewWithConnection(
|
|
cc *amqp.Connection,
|
|
) *RMQClient {
|
|
return &RMQClient{
|
|
cc: cc,
|
|
}
|
|
}
|
|
|
|
func (r *RMQClient) Channel() (*amqp.Channel, error) {
|
|
return r.cc.Channel()
|
|
}
|