Documentation
¶
Index ¶
- Constants
- type Engine
- type Environment
- type Event
- func (m *Event) GetBody() []byte
- func (m *Event) GetCorrelationId() string
- func (m *Event) GetData() interface{}
- func (m *Event) GetDebug() bool
- func (m *Event) GetExchange() string
- func (m *Event) GetName() string
- func (m *Event) GetReplyTo() IReplyTo
- func (m *Event) GetRoutingKey() string
- func (m *Event) NilBody() bool
- type GrpcClient
- type GrpcConfig
- type GrpcServer
- type HttpServer
- type IEnvironment
- type IEvent
- type IFrameworkRabbitMQPublisher
- type IGrpcClient
- type IGrpcConfig
- type IGrpcServer
- type IGrpcServiceClient
- type IHttpServer
- type IMongoDB
- type IMongoDBRepository
- type IMySQL
- type IMySQLRepository
- type IRabbitBody
- type IRabbitMQConfig
- type IRabbitMQConsumer
- type IRabbitMQDsn
- type IRabbitMQPublisher
- type IRabbitMQServer
- type IRabbitMQServiceClient
- type IRedis
- type IRedisRepository
- type IReplyTo
- type ITcpClient
- type ITcpConfig
- type ITcpServer
- type ITcpServiceClient
- type ITcpServiceHandler
- type IWebSocketBody
- type IWebSocketEvent
- type IWebSocketEventHandler
- type IWebSocketRoute
- type IWebSocketServer
- type IdentityNetwork
- type IdentityService
- type IdentitySource
- type MongoDB
- type MySQL
- func (mysql *MySQL) DebugMode() bool
- func (mysql *MySQL) GetCharset() string
- func (mysql *MySQL) GetDatabase() string
- func (mysql *MySQL) GetDisableNestedTransaction() bool
- func (mysql *MySQL) GetDsn() string
- func (mysql *MySQL) GetHost() string
- func (mysql *MySQL) GetLoc() string
- func (mysql *MySQL) GetParseTime() string
- func (mysql *MySQL) GetPassword() string
- func (mysql *MySQL) GetPort() string
- func (mysql *MySQL) GetQueryFields() bool
- func (mysql *MySQL) GetRepositories() []IMySQLRepository
- func (mysql *MySQL) GetUsername() string
- func (mysql *MySQL) Migration() bool
- type RabbitBody
- type RabbitMQConfig
- type RabbitMQConsumer
- func (r *RabbitMQConsumer) GenerateReplyTo() (replyTo ReplyTo)
- func (r *RabbitMQConsumer) GetBody() IRabbitBody
- func (r *RabbitMQConsumer) GetDebug() bool
- func (r *RabbitMQConsumer) GetExchange() string
- func (r *RabbitMQConsumer) GetExchangeType() string
- func (r *RabbitMQConsumer) GetListener() func(Engine)
- func (r *RabbitMQConsumer) GetName() string
- func (r *RabbitMQConsumer) GetQueue() string
- func (r *RabbitMQConsumer) GetRoutingKey() string
- type RabbitMQDsn
- type RabbitMQPublisher
- type RabbitMQServer
- func (r *RabbitMQServer) GetAutoAck() bool
- func (r *RabbitMQServer) GetConsumers() []IRabbitMQConsumer
- func (r *RabbitMQServer) GetHost() string
- func (r *RabbitMQServer) GetPassword() string
- func (r *RabbitMQServer) GetPort() string
- func (r *RabbitMQServer) GetPublishers() []IRabbitMQPublisher
- func (r *RabbitMQServer) GetUsername() string
- func (r *RabbitMQServer) GetVHost() string
- type Redis
- type Replica
- type ReplyTo
- type Response
- type TcpClient
- type TcpConfig
- type TcpServer
- type WebSocketBody
- type WebSocketEvent
- type WebSocketEventHandler
- type WebSocketRoute
- type WebSocketServer
Constants ¶
const ( CLIENT_GRPC_NAME = "lets-service" CLIENT_GRPC_HOST = "127.0.0.1" CLIENT_GRPC_PORT = "5100" )
Default grpc configuration
const ( SERVER_HTTP_PORT = "5000" SERVER_HTTP_MODE = "debug" )
Default gRPC configuration
const ( MONGODB_DSN = "mongodb://localhost:27017" MONGODB_DATABASE = "default" )
const ( MYSQL_DB_HOST = "localhost" MYSQL_DB_PORT = "3306" MYSQL_DB_USERNAME = "root" MYSQL_DB_PASSWORD = "" MYSQL_DB_DATABASE = "lets" MYSQL_DB_CHARSET = "utf8" MYSQL_DB_PARSE_TIME = "True" MYSQL_DB_LOC = "Local" MYSQL_DB_MIGRATION = false )
const ( LISTEN_RABBIT_NAME = "Default Manager" LISTEN_RABBIT_VHOST = "/" LISTEN_RABBIT_EXCHANGE = "" LISTEN_RABBIT_EXCHANGE_TYPE = amqp091.ExchangeDirect LISTEN_RABBIT_ROUTING_KEY = "" LISTEN_RABBIT_QUEUE = "" LISTEN_RABBIT_DEBUG = true )
Default configuration
const ( RQ_USERNAME = "guest" RQ_PASSWORD = "guest" RQ_HOST = "localhost" RQ_PORT = "5672" RQ_VHOST = "/" )
Default configuration
const ( CALLER_RABBIT_NAME_EXAMPLE = "default-name" CALLER_RABBIT_EXCHANGE_EXAMPLE = "default-exchange" CALLER_RABBIT_DEBUG_EXAMPLE = false )
Default configuration
const ( RABBIT_HOST = "localhost" RABBIT_PORT = "5672" RABBIT_USERNAME = "guest" RABBIT_PASSWORD = "guest" RABBIT_VHOST = "/" )
Default configuration
const ( REDIS_HOST = "localhost" REDIS_PORT = "6379" REDIS_USERNAME = "default" REDIS_PASSWORD = "" REDIS_DATABASE = 0 )
const ( CLIENT_TCP_NAME = "lets-connect-tcp" CLIENT_TCP_HOST = "127.0.0.1" CLIENT_TCP_PORT = "5050" CLIENT_TCP_MODE = "debug" )
Default grpc configuration
const ( SERVER_TCP_PORT = "5050" SERVER_TCP_MODE = "debug" )
Default gRPC configuration
const ( SERVER_WS_PORT = "5050" SERVER_WS_MODE = "debug" )
Default gRPC configuration
const (
SERVER_GRPC_PORT = "5100"
)
Default grpc server configuration
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Environment ¶
Serve information
func (*Environment) GetDebug ¶
func (e *Environment) GetDebug() string
func (*Environment) GetName ¶
func (e *Environment) GetName() string
type Event ¶
type Event struct {
Name string
Exchange string // Service exchange.
RoutingKey string // Service routing key.
Data interface{}
ReplyTo IReplyTo
CorrelationId string
Debug bool
Body IRabbitBody
}
func (*Event) GetCorrelationId ¶
func (*Event) GetExchange ¶
func (*Event) GetReplyTo ¶
func (*Event) GetRoutingKey ¶
type GrpcClient ¶
type GrpcClient struct {
Name string
Host string
Port string
ClientOptions []grpc.DialOption
Clients []IGrpcServiceClient
}
Client information
func (*GrpcClient) GetClientOptions ¶
func (gc *GrpcClient) GetClientOptions() []grpc.DialOption
Get Client Option
type GrpcConfig ¶
type GrpcConfig struct {
Server IGrpcServer
Clients []IGrpcClient
}
GRPC configuration struct
func (*GrpcConfig) GetClients ¶
func (g *GrpcConfig) GetClients() []IGrpcClient
Get gRPC client configuration
func (*GrpcConfig) GetServer ¶
func (g *GrpcConfig) GetServer() IGrpcServer
Get gRPC server configuration
type GrpcServer ¶
type GrpcServer struct {
Port string
Router func(*grpc.Server)
ServerOptions []grpc.ServerOption
}
Server information
func (*GrpcServer) GetServerOptions ¶
func (g *GrpcServer) GetServerOptions() []grpc.ServerOption
Get Router
type HttpServer ¶
type HttpServer struct {
Port string
Mode string
Middleware func(*gin.Engine)
Router func(*gin.Engine)
Gzip bool
}
Serve information
func (*HttpServer) GetMiddleware ¶
func (hs *HttpServer) GetMiddleware() func(*gin.Engine)
Get Middleware
type IEnvironment ¶
type IGrpcClient ¶
type IGrpcClient interface {
GetName() string
GetHost() string
GetPort() string
GetClientOptions() []grpc.DialOption
GetClients() []IGrpcServiceClient
}
Interface for grpc method
type IGrpcConfig ¶
type IGrpcConfig interface {
GetServer() IGrpcServer
GetClients() []IGrpcClient
}
GRPC configuration interface
type IGrpcServer ¶
type IGrpcServer interface {
GetPort() string
GetRouter() func(*grpc.Server)
GetServerOptions() []grpc.ServerOption
}
Interface for gRPC
type IGrpcServiceClient ¶
type IGrpcServiceClient interface {
SetConnection(*grpc.ClientConn)
}
type IHttpServer ¶
type IHttpServer interface {
GetPort() string
GetMode() string
GetMiddleware() func(*gin.Engine)
GetRouter() func(*gin.Engine)
GetGzip() bool
}
Interface for accessable method
type IMongoDB ¶
type IMongoDB interface {
GetDsn() string
GetDatabase() string
GetRepositories() []IMongoDBRepository
}
type IMongoDBRepository ¶
type IMySQL ¶
type IMySQL interface {
GetHost() string
GetPort() string
GetUsername() string
GetPassword() string
GetDatabase() string
GetCharset() string
GetParseTime() string
GetLoc() string
DebugMode() bool
GetRepositories() []IMySQLRepository
GetDsn() string
Migration() bool
GetQueryFields() bool
GetDisableNestedTransaction() bool
}
type IMySQLRepository ¶
type IRabbitBody ¶
type IRabbitMQConfig ¶
type IRabbitMQConfig interface {
GetServers() []IRabbitMQServer
}
type IRabbitMQConsumer ¶
type IRabbitMQConsumer interface {
GetName() string
GetExchange() string
GetExchangeType() string
GetRoutingKey() string
GetQueue() string
GetDebug() bool
GetListener() func(Engine)
GenerateReplyTo() ReplyTo
GetBody() IRabbitBody
}
Interface for dsn accessable method
type IRabbitMQDsn ¶
type IRabbitMQDsn interface {
GetHost() string
GetPort() string
GetUsername() string
GetPassword() string
GetVirtualHost() string
}
Interface for dsn accessable method
type IRabbitMQPublisher ¶
type IRabbitMQPublisher interface {
GetName() string
GetClients() []IRabbitMQServiceClient
}
Interface for dsn accessable method
type IRabbitMQServer ¶
type IRabbitMQServer interface {
GetHost() string
GetPort() string
GetUsername() string
GetPassword() string
GetVHost() string
GetConsumers() []IRabbitMQConsumer
GetPublishers() []IRabbitMQPublisher
GetAutoAck() bool
}
type IRabbitMQServiceClient ¶
type IRabbitMQServiceClient interface {
SetConnection(IFrameworkRabbitMQPublisher)
}
type IRedisRepository ¶
type ITcpClient ¶
type ITcpClient interface {
GetName() string
GetHost() string
GetPort() string
GetMode() string
GetClients() []ITcpServiceClient
}
Interface for grpc method
type ITcpConfig ¶
type ITcpConfig interface {
GetServers() []ITcpServer
GetClients() []ITcpClient
}
GRPC configuration interface
type ITcpServer ¶
type ITcpServer interface {
GetPort() string
GetMode() string
GetHandler() ITcpServiceHandler
}
Interface for accessable method
type ITcpServiceClient ¶
type ITcpServiceClient interface {
OnConnect()
OnDisconnect()
}
type ITcpServiceHandler ¶
type ITcpServiceHandler interface {
OnConnect()
OnDisconnect()
}
type IWebSocketBody ¶
type IWebSocketEvent ¶
type IWebSocketEventHandler ¶
type IWebSocketEventHandler interface {
Event(string, func(IWebSocketEvent))
Call(string, IWebSocketEvent)
}
Engine for controller
type IWebSocketRoute ¶
type IWebSocketServer ¶
type IWebSocketServer interface {
GetPort() string
GetMode() string
GetRoutes() []IWebSocketRoute
}
Interface for accessable method
type IdentityNetwork ¶ added in v1.4.7
type IdentityService ¶
type IdentityService struct {
Name string
Description string
ServiceDns string `desc:"Service DNS"`
Layer string `desc:"Microservice Layer"`
Author string
}
Serve information
type IdentitySource ¶
type MongoDB ¶
type MongoDB struct {
Dsn string
Database string
Repositories []IMongoDBRepository
}
func (*MongoDB) GetDatabase ¶
func (*MongoDB) GetRepositories ¶
func (r *MongoDB) GetRepositories() []IMongoDBRepository
type MySQL ¶
type MySQL struct {
Host string
Port string
Username string
Password string
Database string
Charset string
ParseTime string
Loc string
Debug bool
Gorm *gorm.DB
DB *sql.DB
Repositories []IMySQLRepository
EnableMigration bool
QueryFields bool
DisableNestedTransaction bool
}
func (*MySQL) GetCharset ¶
func (*MySQL) GetDatabase ¶
func (*MySQL) GetDisableNestedTransaction ¶ added in v1.4.4
func (*MySQL) GetParseTime ¶
func (*MySQL) GetPassword ¶
func (*MySQL) GetQueryFields ¶ added in v1.4.4
func (*MySQL) GetRepositories ¶
func (mysql *MySQL) GetRepositories() []IMySQLRepository
func (*MySQL) GetUsername ¶
type RabbitBody ¶
type RabbitBody struct {
Payload interface{}
Event string `json:"event"`
Data interface{} `json:"data"`
}
func (*RabbitBody) Setup ¶
func (rb *RabbitBody) Setup()
type RabbitMQConfig ¶
type RabbitMQConfig struct {
Servers []IRabbitMQServer
}
func (*RabbitMQConfig) GetServers ¶
func (r *RabbitMQConfig) GetServers() []IRabbitMQServer
type RabbitMQConsumer ¶
type RabbitMQConsumer struct {
Name string `json:"name"`
Exchange string `json:"exchange"`
ExchangeType string `json:"type"`
RoutingKey string `json:"routing_key"`
Queue string `json:"queue"`
Debug string `json:"debug"`
Listener func(Engine)
CustomPayload IRabbitBody `json:"custom_payload"`
}
Target host information.
func (*RabbitMQConsumer) GenerateReplyTo ¶
func (r *RabbitMQConsumer) GenerateReplyTo() (replyTo ReplyTo)
Generating reply to payload.
func (*RabbitMQConsumer) GetBody ¶
func (r *RabbitMQConsumer) GetBody() IRabbitBody
Get payload structure for received message.
func (*RabbitMQConsumer) GetExchange ¶
func (r *RabbitMQConsumer) GetExchange() string
Get Exchange.
func (*RabbitMQConsumer) GetExchangeType ¶
func (r *RabbitMQConsumer) GetExchangeType() string
Get Exchange Type.
func (*RabbitMQConsumer) GetListener ¶
func (r *RabbitMQConsumer) GetListener() func(Engine)
Get Listener.
func (*RabbitMQConsumer) GetRoutingKey ¶
func (r *RabbitMQConsumer) GetRoutingKey() string
Get Routing Key.
type RabbitMQDsn ¶
type RabbitMQDsn struct {
Host, Port, Username, Password, VirtualHost string
}
Target host information.
func (*RabbitMQDsn) GetVirtualHost ¶
func (rtm *RabbitMQDsn) GetVirtualHost() string
Get VirtualHost.
type RabbitMQPublisher ¶
type RabbitMQPublisher struct {
Name string `json:"name"`
Clients []IRabbitMQServiceClient
}
Target host information.
func (*RabbitMQPublisher) GetClients ¶
func (r *RabbitMQPublisher) GetClients() []IRabbitMQServiceClient
Get Clients.
type RabbitMQServer ¶
type RabbitMQServer struct {
Host string
Port string
Username string
Password string
VirtualHost string
Consumers []IRabbitMQConsumer
Publishers []IRabbitMQPublisher
AutoAck bool
}
Target host information.
func (*RabbitMQServer) GetConsumers ¶
func (r *RabbitMQServer) GetConsumers() []IRabbitMQConsumer
Get Consumers.
func (*RabbitMQServer) GetPublishers ¶
func (r *RabbitMQServer) GetPublishers() []IRabbitMQPublisher
Get Publisher.
type Redis ¶
type Redis struct {
Host string
Port string
Username string
Password string
Database int
Debug bool
Repositories []IRedisRepository
}
func (*Redis) GetDatabase ¶
func (*Redis) GetPassword ¶
func (*Redis) GetRepositories ¶
func (r *Redis) GetRepositories() []IRedisRepository
func (*Redis) GetUsername ¶
type ReplyTo ¶
func (*ReplyTo) SetRoutingKey ¶
type Response ¶
type Response struct {
Code int `json:"code"`
Status string `json:"status"`
Message string `json:"message,omitempty"`
}
Extender internal response
type TcpClient ¶
type TcpClient struct {
Name string
Host string
Port string
Mode string
Clients []ITcpServiceClient
}
Client information
type TcpConfig ¶
type TcpConfig struct {
Servers []ITcpServer
Clients []ITcpClient
}
GRPC configuration struct
func (*TcpConfig) GetClients ¶
func (tcp *TcpConfig) GetClients() []ITcpClient
Get gRPC client configuration
func (*TcpConfig) GetServers ¶
func (tcp *TcpConfig) GetServers() []ITcpServer
Get gRPC server configuration
type TcpServer ¶
type TcpServer struct {
Port string
Mode string
Handler ITcpServiceHandler
}
Serve information
type WebSocketBody ¶
type WebSocketBody struct {
Action string `json:"action"`
Data interface{} `json:"data"`
}
func (*WebSocketBody) GetAction ¶
func (wsb *WebSocketBody) GetAction() string
func (*WebSocketBody) GetData ¶
func (wsb *WebSocketBody) GetData() interface{}
func (*WebSocketBody) SetAction ¶
func (wsb *WebSocketBody) SetAction(action string)
func (*WebSocketBody) SetData ¶
func (wsb *WebSocketBody) SetData(data interface{})
func (*WebSocketBody) Setup ¶
func (wsb *WebSocketBody) Setup()
type WebSocketEvent ¶
type WebSocketEvent struct {
Connection *websocket.Conn
Name string
Data interface{}
Debug bool
Body IWebSocketBody
}
func (*WebSocketEvent) GetBody ¶
func (m *WebSocketEvent) GetBody() []byte
func (*WebSocketEvent) GetConnection ¶
func (m *WebSocketEvent) GetConnection() *websocket.Conn
func (*WebSocketEvent) GetData ¶
func (m *WebSocketEvent) GetData() interface{}
func (*WebSocketEvent) GetDebug ¶
func (m *WebSocketEvent) GetDebug() bool
func (*WebSocketEvent) GetName ¶
func (m *WebSocketEvent) GetName() string
func (*WebSocketEvent) NilBody ¶
func (m *WebSocketEvent) NilBody() bool
type WebSocketEventHandler ¶
type WebSocketEventHandler struct {
Debug bool
// contains filtered or unexported fields
}
Engine for controller
func (*WebSocketEventHandler) Call ¶
func (me *WebSocketEventHandler) Call(name string, event IWebSocketEvent)
func (*WebSocketEventHandler) Event ¶
func (me *WebSocketEventHandler) Event(name string, handler func(IWebSocketEvent))
type WebSocketRoute ¶
type WebSocketRoute struct {
Path string
Handlers func(IWebSocketEventHandler) // Service to inject
CustomPayload IWebSocketBody
// contains filtered or unexported fields
}
func (*WebSocketRoute) Initialize ¶
func (wsr *WebSocketRoute) Initialize(server *gin.Engine, debug bool)
func (*WebSocketRoute) SetupHandler ¶
func (wsr *WebSocketRoute) SetupHandler()
type WebSocketServer ¶
type WebSocketServer struct {
Port string
Mode string
Routes []IWebSocketRoute
}
Serve information
func (*WebSocketServer) GetRoutes ¶
func (wss *WebSocketServer) GetRoutes() []IWebSocketRoute
Get Router
Source Files
¶
- environment.go
- grpc.client.go
- grpc.go
- grpc.server.go
- http.server.go
- identity.go
- mongo.go
- mongo.repository.go
- mysql.go
- mysql.repository.go
- rabbit.consumer.go
- rabbit.dsn.go
- rabbit.engine.go
- rabbit.event.go
- rabbit.message.go
- rabbit.publisher.go
- rabbitmq.go
- redis.go
- redis.repository.go
- response.go
- tcp.client.go
- tcp.go
- tcp.server.go
- websocket.engine.go
- websocket.event.go
- websocket.go
- websocket.message.go
- websocket.router.go