@@ -36,20 +36,13 @@ type EndpointData struct {
36
36
Sandbox * Endpoint `yaml:"sandbox" json:"sandbox_endpoints,omitempty"`
37
37
}
38
38
39
- // EndpointsListData contains details about endpoints mainly to be used in load balancing (or failover)
40
- type EndpointsListData struct {
41
- // Endpoint type (can be "load_balance" or "failover")
42
- EndpointType string `yaml:"endpointType" json:"endpoint_type,omitempty"`
43
- // Production endpoints list for load balancing and failover endpoint types
39
+ // LoadBalanceEndpointsData contains details about endpoints mainly to be used in load balancing
40
+ type LoadBalanceEndpointsData struct {
41
+ EndpointType string `yaml:"endpoint_type" json:"endpoint_type"`
42
+ // Production endpoints list for load balancing
44
43
Production []Endpoint `yaml:"production" json:"production_endpoints,omitempty"`
45
- // Production failover endpoints list for failover endpoint types
46
- ProductionFailovers []Endpoint `yaml:"productionFailovers" json:"production_failovers,omitempty"`
47
- // Sandbox endpoints list for load balancing and failover endpoint types
44
+ // Sandbox endpoints list for load balancing
48
45
Sandbox []Endpoint `yaml:"sandbox" json:"sandbox_endpoints,omitempty"`
49
- // Production failover endpoints list for failover endpoint types
50
- SandboxFailovers []Endpoint `yaml:"sandboxFailovers" json:"sandbox_failovers,omitempty"`
51
- // To enable failover endpoints
52
- Failover bool `yaml:"failOver" json:"failOver,omitempty"`
53
46
// Session management method from the load balancing group. Values can be "none", "transport" (by default), "soap", "simpleClientSession" (Client ID)
54
47
SessionManagement string `yaml:"sessionManagement" json:"sessionManagement,omitempty"`
55
48
// Session timeout means the number of milliseconds after which the session would time out
@@ -58,6 +51,21 @@ type EndpointsListData struct {
58
51
AlgorithmClassName string `yaml:"algoClassName" json:"algoClassName,omitempty"`
59
52
}
60
53
54
+ // FailoverEndpointsData contains details about endpoints mainly to be used in load balancing
55
+ type FailoverEndpointsData struct {
56
+ EndpointType string `yaml:"endpoint_type" json:"endpoint_type"`
57
+ // Primary production endpoint for failover
58
+ Production * Endpoint `yaml:"production" json:"production_endpoints,omitempty"`
59
+ // Production failover endpoints list for failover
60
+ ProductionFailovers []Endpoint `yaml:"productionFailovers" json:"production_failovers,omitempty"`
61
+ // Primary sandbox endpoint for failover
62
+ Sandbox * Endpoint `yaml:"sandbox" json:"sandbox_endpoints,omitempty"`
63
+ // Production failover endpoints list for failover endpoint types
64
+ SandboxFailovers []Endpoint `yaml:"sandboxFailovers" json:"sandbox_failovers,omitempty"`
65
+ // To enable failover endpoints
66
+ Failover bool `yaml:"failOver" json:"failOver,omitempty"`
67
+ }
68
+
61
69
// Cert stores certificate details
62
70
type Cert struct {
63
71
// Host of the certificate
@@ -76,8 +84,10 @@ type Environment struct {
76
84
Name string `yaml:"name"`
77
85
// Endpoints contain details about endpoints in a configuration
78
86
Endpoints * EndpointData `yaml:"endpoints"`
79
- // EndpointsList contain details about endpoints in a configuration for load balancing or failover scenarios
80
- EndpointsList * EndpointsListData `yaml:"endpointsList"`
87
+ // LoadBalanceEndpoints contain details about endpoints in a configuration for load balancing scenarios
88
+ LoadBalanceEndpoints * LoadBalanceEndpointsData `yaml:"loadBalanceEndpoints"`
89
+ // FailoverEndpoints contain details about endpoints in a configuration for failover scenarios
90
+ FailoverEndpoints * FailoverEndpointsData `yaml:"failoverEndpoints"`
81
91
// GatewayEnvironments contains environments that used to deploy API
82
92
GatewayEnvironments []string `yaml:"gatewayEnvironments"`
83
93
// Certs for environment
0 commit comments