Documentation
¶
Index ¶
- Constants
- Variables
- func Contains(array []int, value int) bool
- func CreateServiceFile(s Service) (string, int)
- func CreateServiceMongo(s Service) (string, int)
- func DeleteServiceFile(service Service) (string, int)
- func DeleteServiceMongo(s Service) (string, int)
- func GetMatchURI(uri string) string
- func GetMatchingURIRegex(uri string) string
- func InitServiceDiscovery()
- func ListAllAvailableHosts() ([]string, error)
- func NormalizeServicesFile() error
- func NormalizeServicesMongo() error
- func UpdateFile(service Service, serviceExists Service) (string, int)
- func UpdateMongo(service Service, serviceExists Service) (string, int)
- func ValidateURL(url string) bool
- type ApplicationGroup
- type Service
- func FindFile(service Service) (Service, error)
- func FindMongo(s Service) (Service, error)
- func ListServicesFile(page int, filterQuery string) []Service
- func ListServicesMongo(page int, filterQuery string, viewAllPermission bool) []Service
- func ValidateServiceBody(c *routing.Context) (Service, error)
- func ValidateServiceExists(s Service) (Service, error)
- func (service *Service) BalanceUrl() string
- func (service *Service) Call(method string, uri string, headers map[string]string, body string) *fasthttp.Response
- func (service *Service) GenerateId() bson.ObjectId
- func (service *Service) GetGroup() (ServiceGroup, error)
- func (service *Service) GetHost() string
- func (service *Service) GetManagementEndpoint(managementType string) string
- func (service *Service) GetManagementEndpointMethod(managementType string) string
- func (service *Service) IsReachableFromExternal(sd ServiceDiscovery) bool
- func (service *Service) NormalizeService()
- func (service *Service) ServiceManagementCall(managementType string) (bool, string)
- type ServiceDiscovery
- func (sd *ServiceDiscovery) AddServiceToGroup(serviceGroupId string, serviceId string) error
- func (serviceDisc *ServiceDiscovery) FindService(service Service) (Service, error)
- func (serviceDisc *ServiceDiscovery) FindServiceWithMatchingPrefix(uri string) (Service, error)
- func (serviceDisc *ServiceDiscovery) GetAllServices() ([]Service, error)
- func (serviceDisc *ServiceDiscovery) GetEndpointForUri(uri string) (Service, error)
- func (sd *ServiceDiscovery) GetListOfServicesGroup() ([]ServiceGroup, error)
- func (service *ServiceDiscovery) IsExternalRequest(requestContxt *routing.Context) bool
- func (service *ServiceDiscovery) IsService() bool
- func (service *ServiceDiscovery) SaveServicesToFile()
- func (service *ServiceDiscovery) SetIsService(isServ bool)
- func (serviceDisc *ServiceDiscovery) SetRegisteredServices(rs []Service)
- func (serviceDisc *ServiceDiscovery) UpdateService(service Service) (Service, error)
- type ServiceGroup
- type ServicesConfig
Constants ¶
View Source
const ( SERVICES_COLLECTION = "services" SERVICE_GROUP_COLLECTION = "services_groups" SERVICE_APPS_GROUP_COLLECTION = "services_apps_groups" )
Variables ¶
View Source
var Methods = map[string]map[string]interface{}{ "mongo": { "delete": DeleteServiceMongo, "update": UpdateMongo, "create": CreateServiceMongo, "list": ListServicesMongo, "get": FindMongo, "normalize": NormalizeServicesMongo}, "file": { "delete": DeleteServiceFile, "update": UpdateFile, "create": CreateServiceFile, "list": ListServicesFile, "get": FindFile, "normalize": NormalizeServicesFile}}
View Source
var PAGE_LENGTH = 10
View Source
var SD_TYPE = "file"
View Source
var SERVICE_NAME = "/service-discovery"
Functions ¶
func CreateServiceFile ¶
func CreateServiceMongo ¶
func DeleteServiceFile ¶
func DeleteServiceMongo ¶
func GetMatchURI ¶
func GetMatchingURIRegex ¶
func InitServiceDiscovery ¶
func InitServiceDiscovery()
func ListAllAvailableHosts ¶
func NormalizeServicesFile ¶
func NormalizeServicesFile() error
func NormalizeServicesMongo ¶
func NormalizeServicesMongo() error
func ValidateURL ¶
Types ¶
type ApplicationGroup ¶
type Service ¶
type Service struct {
Id bson.ObjectId `bson:"_id" json:"Id"`
Name string
Hosts []string
Domain string
Port string
MatchingURI string
MatchingURIRegex string
ToURI string
Protected bool
APIDocumentation string
IsCachingActive bool
IsActive bool
HealthcheckUrl string
LastActiveTime int64
ServiceManagementHost string
ServiceManagementPort string
ServiceManagementEndpoints map[string]string
RateLimit int
RateLimitExpirationTime int64
IsReachable bool
GroupId bson.ObjectId `bson:"groupid,omitempty" json:"GroupId"`
GroupVisibility bool
UseGroupAttributes bool
ProtectedExclude map[string]string
}
func ListServicesFile ¶
func ListServicesMongo ¶
func ValidateServiceExists ¶
func (*Service) BalanceUrl ¶
func (*Service) GenerateId ¶
func (*Service) GetGroup ¶
func (service *Service) GetGroup() (ServiceGroup, error)
func (*Service) GetManagementEndpoint ¶
func (*Service) GetManagementEndpointMethod ¶
func (*Service) IsReachableFromExternal ¶
func (service *Service) IsReachableFromExternal(sd ServiceDiscovery) bool
func (*Service) NormalizeService ¶
func (service *Service) NormalizeService()
type ServiceDiscovery ¶
type ServiceDiscovery struct {
// contains filtered or unexported fields
}
func GetServiceDiscoveryObject ¶
func GetServiceDiscoveryObject() *ServiceDiscovery
func (*ServiceDiscovery) AddServiceToGroup ¶
func (sd *ServiceDiscovery) AddServiceToGroup(serviceGroupId string, serviceId string) error
func (*ServiceDiscovery) FindService ¶
func (serviceDisc *ServiceDiscovery) FindService(service Service) (Service, error)
func (*ServiceDiscovery) FindServiceWithMatchingPrefix ¶
func (serviceDisc *ServiceDiscovery) FindServiceWithMatchingPrefix(uri string) (Service, error)
func (*ServiceDiscovery) GetAllServices ¶
func (serviceDisc *ServiceDiscovery) GetAllServices() ([]Service, error)
func (*ServiceDiscovery) GetEndpointForUri ¶
func (serviceDisc *ServiceDiscovery) GetEndpointForUri(uri string) (Service, error)
func (*ServiceDiscovery) GetListOfServicesGroup ¶
func (sd *ServiceDiscovery) GetListOfServicesGroup() ([]ServiceGroup, error)
func (*ServiceDiscovery) IsExternalRequest ¶
func (service *ServiceDiscovery) IsExternalRequest(requestContxt *routing.Context) bool
func (*ServiceDiscovery) IsService ¶
func (service *ServiceDiscovery) IsService() bool
func (*ServiceDiscovery) SaveServicesToFile ¶
func (service *ServiceDiscovery) SaveServicesToFile()
func (*ServiceDiscovery) SetIsService ¶
func (service *ServiceDiscovery) SetIsService(isServ bool)
func (*ServiceDiscovery) SetRegisteredServices ¶
func (serviceDisc *ServiceDiscovery) SetRegisteredServices(rs []Service)
func (*ServiceDiscovery) UpdateService ¶
func (serviceDisc *ServiceDiscovery) UpdateService(service Service) (Service, error)
type ServiceGroup ¶
type ServiceGroup struct {
Id bson.ObjectId `bson:"_id" json:"Id"`
Name string
IsReachable bool
HostsEnabled []string
Services []bson.ObjectId
}
func ValidateServiceGroupBody ¶
func ValidateServiceGroupBody(c *routing.Context) (ServiceGroup, error)
func (*ServiceGroup) Contains ¶
func (sg *ServiceGroup) Contains(s Service) bool
type ServicesConfig ¶
type ServicesConfig struct {
Services []Service `json:"services"`
}
func LoadServicesConfiguration ¶
func LoadServicesConfiguration() ServicesConfig
Click to show internal directories.
Click to hide internal directories.