consul/agent/structs/structs.deepcopy.go

895 lines
26 KiB
Go
Raw Normal View History

// generated by deep-copy -pointer-receiver -o ./structs.deepcopy.go -type CARoot -type CheckServiceNode -type CheckType -type CompiledDiscoveryChain -type ConnectProxyConfig -type DiscoveryFailover -type DiscoveryGraphNode -type DiscoveryResolver -type DiscoveryRoute -type DiscoverySplit -type ExposeConfig -type GatewayService -type GatewayServiceTLSConfig -type HTTPHeaderModifiers -type HashPolicy -type HealthCheck -type IndexedCARoots -type IngressListener -type Intention -type IntentionPermission -type LoadBalancer -type MeshConfigEntry -type MeshDirectionalTLSConfig -type MeshTLSConfig -type Node -type NodeService -type PeeringServiceMeta -type ServiceConfigEntry -type ServiceConfigResponse -type ServiceConnect -type ServiceDefinition -type ServiceResolverConfigEntry -type ServiceResolverFailover -type ServiceRoute -type ServiceRouteDestination -type ServiceRouteMatch -type Upstream -type UpstreamConfiguration ./; DO NOT EDIT.
package structs
import (
"github.com/hashicorp/consul/types"
)
// DeepCopy generates a deep copy of *CARoot
func (o *CARoot) DeepCopy() *CARoot {
var cp CARoot = *o
if o.IntermediateCerts != nil {
cp.IntermediateCerts = make([]string, len(o.IntermediateCerts))
copy(cp.IntermediateCerts, o.IntermediateCerts)
}
return &cp
}
// DeepCopy generates a deep copy of *CheckServiceNode
func (o *CheckServiceNode) DeepCopy() *CheckServiceNode {
var cp CheckServiceNode = *o
if o.Node != nil {
cp.Node = o.Node.DeepCopy()
}
if o.Service != nil {
cp.Service = o.Service.DeepCopy()
}
if o.Checks != nil {
cp.Checks = make([]*HealthCheck, len(o.Checks))
copy(cp.Checks, o.Checks)
for i2 := range o.Checks {
if o.Checks[i2] != nil {
cp.Checks[i2] = o.Checks[i2].DeepCopy()
}
}
}
return &cp
}
// DeepCopy generates a deep copy of *CheckType
func (o *CheckType) DeepCopy() *CheckType {
var cp CheckType = *o
if o.ScriptArgs != nil {
cp.ScriptArgs = make([]string, len(o.ScriptArgs))
copy(cp.ScriptArgs, o.ScriptArgs)
}
if o.Header != nil {
cp.Header = make(map[string][]string, len(o.Header))
for k2, v2 := range o.Header {
var cp_Header_v2 []string
if v2 != nil {
cp_Header_v2 = make([]string, len(v2))
copy(cp_Header_v2, v2)
}
cp.Header[k2] = cp_Header_v2
}
}
return &cp
}
// DeepCopy generates a deep copy of *CompiledDiscoveryChain
func (o *CompiledDiscoveryChain) DeepCopy() *CompiledDiscoveryChain {
var cp CompiledDiscoveryChain = *o
if o.ServiceMeta != nil {
cp.ServiceMeta = make(map[string]string, len(o.ServiceMeta))
for k2, v2 := range o.ServiceMeta {
cp.ServiceMeta[k2] = v2
}
}
if o.EnvoyExtensions != nil {
cp.EnvoyExtensions = make([]EnvoyExtension, len(o.EnvoyExtensions))
copy(cp.EnvoyExtensions, o.EnvoyExtensions)
for i2 := range o.EnvoyExtensions {
if o.EnvoyExtensions[i2].Arguments != nil {
cp.EnvoyExtensions[i2].Arguments = make(map[string]interface{}, len(o.EnvoyExtensions[i2].Arguments))
for k4, v4 := range o.EnvoyExtensions[i2].Arguments {
cp.EnvoyExtensions[i2].Arguments[k4] = v4
}
}
}
}
if o.Nodes != nil {
cp.Nodes = make(map[string]*DiscoveryGraphNode, len(o.Nodes))
for k2, v2 := range o.Nodes {
var cp_Nodes_v2 *DiscoveryGraphNode
if v2 != nil {
cp_Nodes_v2 = v2.DeepCopy()
}
cp.Nodes[k2] = cp_Nodes_v2
}
}
if o.Targets != nil {
cp.Targets = make(map[string]*DiscoveryTarget, len(o.Targets))
for k2, v2 := range o.Targets {
var cp_Targets_v2 *DiscoveryTarget
if v2 != nil {
cp_Targets_v2 = new(DiscoveryTarget)
*cp_Targets_v2 = *v2
}
cp.Targets[k2] = cp_Targets_v2
}
}
return &cp
}
// DeepCopy generates a deep copy of *ConnectProxyConfig
func (o *ConnectProxyConfig) DeepCopy() *ConnectProxyConfig {
var cp ConnectProxyConfig = *o
if o.EnvoyExtensions != nil {
cp.EnvoyExtensions = make([]EnvoyExtension, len(o.EnvoyExtensions))
copy(cp.EnvoyExtensions, o.EnvoyExtensions)
for i2 := range o.EnvoyExtensions {
if o.EnvoyExtensions[i2].Arguments != nil {
cp.EnvoyExtensions[i2].Arguments = make(map[string]interface{}, len(o.EnvoyExtensions[i2].Arguments))
for k4, v4 := range o.EnvoyExtensions[i2].Arguments {
cp.EnvoyExtensions[i2].Arguments[k4] = v4
}
}
}
}
if o.Config != nil {
cp.Config = make(map[string]interface{}, len(o.Config))
for k2, v2 := range o.Config {
cp.Config[k2] = v2
}
}
if o.Upstreams != nil {
cp.Upstreams = make([]Upstream, len(o.Upstreams))
copy(cp.Upstreams, o.Upstreams)
for i2 := range o.Upstreams {
{
retV := o.Upstreams[i2].DeepCopy()
cp.Upstreams[i2] = *retV
}
}
}
{
retV := o.Expose.DeepCopy()
cp.Expose = *retV
}
return &cp
}
// DeepCopy generates a deep copy of *DiscoveryFailover
func (o *DiscoveryFailover) DeepCopy() *DiscoveryFailover {
var cp DiscoveryFailover = *o
if o.Targets != nil {
cp.Targets = make([]string, len(o.Targets))
copy(cp.Targets, o.Targets)
}
return &cp
}
// DeepCopy generates a deep copy of *DiscoveryGraphNode
func (o *DiscoveryGraphNode) DeepCopy() *DiscoveryGraphNode {
var cp DiscoveryGraphNode = *o
if o.Routes != nil {
cp.Routes = make([]*DiscoveryRoute, len(o.Routes))
copy(cp.Routes, o.Routes)
for i2 := range o.Routes {
if o.Routes[i2] != nil {
cp.Routes[i2] = o.Routes[i2].DeepCopy()
}
}
}
if o.Splits != nil {
cp.Splits = make([]*DiscoverySplit, len(o.Splits))
copy(cp.Splits, o.Splits)
for i2 := range o.Splits {
if o.Splits[i2] != nil {
cp.Splits[i2] = o.Splits[i2].DeepCopy()
}
}
}
if o.Resolver != nil {
cp.Resolver = o.Resolver.DeepCopy()
}
if o.LoadBalancer != nil {
cp.LoadBalancer = o.LoadBalancer.DeepCopy()
}
return &cp
}
// DeepCopy generates a deep copy of *DiscoveryResolver
func (o *DiscoveryResolver) DeepCopy() *DiscoveryResolver {
var cp DiscoveryResolver = *o
if o.Failover != nil {
cp.Failover = o.Failover.DeepCopy()
}
return &cp
}
// DeepCopy generates a deep copy of *DiscoveryRoute
func (o *DiscoveryRoute) DeepCopy() *DiscoveryRoute {
var cp DiscoveryRoute = *o
if o.Definition != nil {
cp.Definition = o.Definition.DeepCopy()
}
return &cp
}
// DeepCopy generates a deep copy of *DiscoverySplit
func (o *DiscoverySplit) DeepCopy() *DiscoverySplit {
var cp DiscoverySplit = *o
if o.Definition != nil {
cp.Definition = new(ServiceSplit)
*cp.Definition = *o.Definition
if o.Definition.RequestHeaders != nil {
cp.Definition.RequestHeaders = o.Definition.RequestHeaders.DeepCopy()
}
if o.Definition.ResponseHeaders != nil {
cp.Definition.ResponseHeaders = o.Definition.ResponseHeaders.DeepCopy()
}
}
return &cp
}
// DeepCopy generates a deep copy of *ExposeConfig
func (o *ExposeConfig) DeepCopy() *ExposeConfig {
var cp ExposeConfig = *o
if o.Paths != nil {
cp.Paths = make([]ExposePath, len(o.Paths))
copy(cp.Paths, o.Paths)
}
return &cp
}
// DeepCopy generates a deep copy of *GatewayService
func (o *GatewayService) DeepCopy() *GatewayService {
var cp GatewayService = *o
if o.Hosts != nil {
cp.Hosts = make([]string, len(o.Hosts))
copy(cp.Hosts, o.Hosts)
}
return &cp
}
// DeepCopy generates a deep copy of *GatewayServiceTLSConfig
func (o *GatewayServiceTLSConfig) DeepCopy() *GatewayServiceTLSConfig {
var cp GatewayServiceTLSConfig = *o
if o.SDS != nil {
cp.SDS = new(GatewayTLSSDSConfig)
*cp.SDS = *o.SDS
}
return &cp
}
// DeepCopy generates a deep copy of *HTTPHeaderModifiers
func (o *HTTPHeaderModifiers) DeepCopy() *HTTPHeaderModifiers {
var cp HTTPHeaderModifiers = *o
if o.Add != nil {
cp.Add = make(map[string]string, len(o.Add))
for k2, v2 := range o.Add {
cp.Add[k2] = v2
}
}
if o.Set != nil {
cp.Set = make(map[string]string, len(o.Set))
for k2, v2 := range o.Set {
cp.Set[k2] = v2
}
}
if o.Remove != nil {
cp.Remove = make([]string, len(o.Remove))
copy(cp.Remove, o.Remove)
}
return &cp
}
// DeepCopy generates a deep copy of *HashPolicy
func (o *HashPolicy) DeepCopy() *HashPolicy {
var cp HashPolicy = *o
if o.CookieConfig != nil {
cp.CookieConfig = new(CookieConfig)
*cp.CookieConfig = *o.CookieConfig
}
return &cp
}
// DeepCopy generates a deep copy of *HealthCheck
func (o *HealthCheck) DeepCopy() *HealthCheck {
var cp HealthCheck = *o
if o.ServiceTags != nil {
cp.ServiceTags = make([]string, len(o.ServiceTags))
copy(cp.ServiceTags, o.ServiceTags)
}
if o.Definition.Header != nil {
cp.Definition.Header = make(map[string][]string, len(o.Definition.Header))
for k3, v3 := range o.Definition.Header {
var cp_Definition_Header_v3 []string
if v3 != nil {
cp_Definition_Header_v3 = make([]string, len(v3))
copy(cp_Definition_Header_v3, v3)
}
cp.Definition.Header[k3] = cp_Definition_Header_v3
}
}
if o.Definition.ScriptArgs != nil {
cp.Definition.ScriptArgs = make([]string, len(o.Definition.ScriptArgs))
copy(cp.Definition.ScriptArgs, o.Definition.ScriptArgs)
}
return &cp
}
// DeepCopy generates a deep copy of *IndexedCARoots
func (o *IndexedCARoots) DeepCopy() *IndexedCARoots {
var cp IndexedCARoots = *o
if o.Roots != nil {
cp.Roots = make([]*CARoot, len(o.Roots))
copy(cp.Roots, o.Roots)
for i2 := range o.Roots {
if o.Roots[i2] != nil {
cp.Roots[i2] = o.Roots[i2].DeepCopy()
}
}
}
return &cp
}
// DeepCopy generates a deep copy of *IngressListener
func (o *IngressListener) DeepCopy() *IngressListener {
var cp IngressListener = *o
if o.TLS != nil {
cp.TLS = new(GatewayTLSConfig)
*cp.TLS = *o.TLS
if o.TLS.SDS != nil {
cp.TLS.SDS = new(GatewayTLSSDSConfig)
*cp.TLS.SDS = *o.TLS.SDS
}
if o.TLS.CipherSuites != nil {
cp.TLS.CipherSuites = make([]types.TLSCipherSuite, len(o.TLS.CipherSuites))
copy(cp.TLS.CipherSuites, o.TLS.CipherSuites)
}
}
if o.Services != nil {
cp.Services = make([]IngressService, len(o.Services))
copy(cp.Services, o.Services)
for i2 := range o.Services {
if o.Services[i2].Hosts != nil {
cp.Services[i2].Hosts = make([]string, len(o.Services[i2].Hosts))
copy(cp.Services[i2].Hosts, o.Services[i2].Hosts)
}
if o.Services[i2].TLS != nil {
cp.Services[i2].TLS = o.Services[i2].TLS.DeepCopy()
}
if o.Services[i2].RequestHeaders != nil {
cp.Services[i2].RequestHeaders = o.Services[i2].RequestHeaders.DeepCopy()
}
if o.Services[i2].ResponseHeaders != nil {
cp.Services[i2].ResponseHeaders = o.Services[i2].ResponseHeaders.DeepCopy()
}
if o.Services[i2].PassiveHealthCheck != nil {
cp.Services[i2].PassiveHealthCheck = new(PassiveHealthCheck)
*cp.Services[i2].PassiveHealthCheck = *o.Services[i2].PassiveHealthCheck
if o.Services[i2].PassiveHealthCheck.EnforcingConsecutive5xx != nil {
cp.Services[i2].PassiveHealthCheck.EnforcingConsecutive5xx = new(uint32)
*cp.Services[i2].PassiveHealthCheck.EnforcingConsecutive5xx = *o.Services[i2].PassiveHealthCheck.EnforcingConsecutive5xx
}
}
if o.Services[i2].Meta != nil {
cp.Services[i2].Meta = make(map[string]string, len(o.Services[i2].Meta))
for k4, v4 := range o.Services[i2].Meta {
cp.Services[i2].Meta[k4] = v4
}
}
}
}
return &cp
}
// DeepCopy generates a deep copy of *Intention
func (o *Intention) DeepCopy() *Intention {
var cp Intention = *o
if o.Permissions != nil {
cp.Permissions = make([]*IntentionPermission, len(o.Permissions))
copy(cp.Permissions, o.Permissions)
for i2 := range o.Permissions {
if o.Permissions[i2] != nil {
cp.Permissions[i2] = o.Permissions[i2].DeepCopy()
}
}
}
if o.Meta != nil {
cp.Meta = make(map[string]string, len(o.Meta))
for k2, v2 := range o.Meta {
cp.Meta[k2] = v2
}
}
if o.Hash != nil {
cp.Hash = make([]byte, len(o.Hash))
copy(cp.Hash, o.Hash)
}
return &cp
}
// DeepCopy generates a deep copy of *IntentionPermission
func (o *IntentionPermission) DeepCopy() *IntentionPermission {
var cp IntentionPermission = *o
if o.HTTP != nil {
cp.HTTP = new(IntentionHTTPPermission)
*cp.HTTP = *o.HTTP
if o.HTTP.Header != nil {
cp.HTTP.Header = make([]IntentionHTTPHeaderPermission, len(o.HTTP.Header))
copy(cp.HTTP.Header, o.HTTP.Header)
}
if o.HTTP.Methods != nil {
cp.HTTP.Methods = make([]string, len(o.HTTP.Methods))
copy(cp.HTTP.Methods, o.HTTP.Methods)
}
}
return &cp
}
// DeepCopy generates a deep copy of *LoadBalancer
func (o *LoadBalancer) DeepCopy() *LoadBalancer {
var cp LoadBalancer = *o
if o.RingHashConfig != nil {
cp.RingHashConfig = new(RingHashConfig)
*cp.RingHashConfig = *o.RingHashConfig
}
if o.LeastRequestConfig != nil {
cp.LeastRequestConfig = new(LeastRequestConfig)
*cp.LeastRequestConfig = *o.LeastRequestConfig
}
if o.HashPolicies != nil {
cp.HashPolicies = make([]HashPolicy, len(o.HashPolicies))
copy(cp.HashPolicies, o.HashPolicies)
for i2 := range o.HashPolicies {
{
retV := o.HashPolicies[i2].DeepCopy()
cp.HashPolicies[i2] = *retV
}
}
}
return &cp
}
// DeepCopy generates a deep copy of *MeshConfigEntry
func (o *MeshConfigEntry) DeepCopy() *MeshConfigEntry {
var cp MeshConfigEntry = *o
if o.TLS != nil {
cp.TLS = o.TLS.DeepCopy()
}
if o.HTTP != nil {
cp.HTTP = new(MeshHTTPConfig)
*cp.HTTP = *o.HTTP
}
if o.Peering != nil {
cp.Peering = new(PeeringMeshConfig)
*cp.Peering = *o.Peering
}
if o.Meta != nil {
cp.Meta = make(map[string]string, len(o.Meta))
for k2, v2 := range o.Meta {
cp.Meta[k2] = v2
}
}
return &cp
}
// DeepCopy generates a deep copy of *MeshDirectionalTLSConfig
func (o *MeshDirectionalTLSConfig) DeepCopy() *MeshDirectionalTLSConfig {
var cp MeshDirectionalTLSConfig = *o
if o.CipherSuites != nil {
cp.CipherSuites = make([]types.TLSCipherSuite, len(o.CipherSuites))
copy(cp.CipherSuites, o.CipherSuites)
}
return &cp
}
// DeepCopy generates a deep copy of *MeshTLSConfig
func (o *MeshTLSConfig) DeepCopy() *MeshTLSConfig {
var cp MeshTLSConfig = *o
if o.Incoming != nil {
cp.Incoming = o.Incoming.DeepCopy()
}
if o.Outgoing != nil {
cp.Outgoing = o.Outgoing.DeepCopy()
}
return &cp
}
// DeepCopy generates a deep copy of *Node
func (o *Node) DeepCopy() *Node {
var cp Node = *o
if o.TaggedAddresses != nil {
cp.TaggedAddresses = make(map[string]string, len(o.TaggedAddresses))
for k2, v2 := range o.TaggedAddresses {
cp.TaggedAddresses[k2] = v2
}
}
if o.Meta != nil {
cp.Meta = make(map[string]string, len(o.Meta))
for k2, v2 := range o.Meta {
cp.Meta[k2] = v2
}
}
return &cp
}
// DeepCopy generates a deep copy of *NodeService
func (o *NodeService) DeepCopy() *NodeService {
var cp NodeService = *o
if o.Tags != nil {
cp.Tags = make([]string, len(o.Tags))
copy(cp.Tags, o.Tags)
}
if o.TaggedAddresses != nil {
cp.TaggedAddresses = make(map[string]ServiceAddress, len(o.TaggedAddresses))
for k2, v2 := range o.TaggedAddresses {
cp.TaggedAddresses[k2] = v2
}
}
if o.Meta != nil {
cp.Meta = make(map[string]string, len(o.Meta))
for k2, v2 := range o.Meta {
cp.Meta[k2] = v2
}
}
if o.Weights != nil {
cp.Weights = new(Weights)
*cp.Weights = *o.Weights
}
{
retV := o.Proxy.DeepCopy()
cp.Proxy = *retV
}
{
retV := o.Connect.DeepCopy()
cp.Connect = *retV
}
return &cp
}
// DeepCopy generates a deep copy of *PeeringServiceMeta
func (o *PeeringServiceMeta) DeepCopy() *PeeringServiceMeta {
var cp PeeringServiceMeta = *o
if o.SNI != nil {
cp.SNI = make([]string, len(o.SNI))
copy(cp.SNI, o.SNI)
}
if o.SpiffeID != nil {
cp.SpiffeID = make([]string, len(o.SpiffeID))
copy(cp.SpiffeID, o.SpiffeID)
}
return &cp
}
// DeepCopy generates a deep copy of *ServiceConfigEntry
func (o *ServiceConfigEntry) DeepCopy() *ServiceConfigEntry {
var cp ServiceConfigEntry = *o
{
retV := o.Expose.DeepCopy()
cp.Expose = *retV
}
if o.UpstreamConfig != nil {
cp.UpstreamConfig = o.UpstreamConfig.DeepCopy()
}
if o.Destination != nil {
cp.Destination = new(DestinationConfig)
*cp.Destination = *o.Destination
if o.Destination.Addresses != nil {
cp.Destination.Addresses = make([]string, len(o.Destination.Addresses))
copy(cp.Destination.Addresses, o.Destination.Addresses)
}
}
if o.EnvoyExtensions != nil {
cp.EnvoyExtensions = make([]EnvoyExtension, len(o.EnvoyExtensions))
copy(cp.EnvoyExtensions, o.EnvoyExtensions)
for i2 := range o.EnvoyExtensions {
if o.EnvoyExtensions[i2].Arguments != nil {
cp.EnvoyExtensions[i2].Arguments = make(map[string]interface{}, len(o.EnvoyExtensions[i2].Arguments))
for k4, v4 := range o.EnvoyExtensions[i2].Arguments {
cp.EnvoyExtensions[i2].Arguments[k4] = v4
}
}
}
}
if o.Meta != nil {
cp.Meta = make(map[string]string, len(o.Meta))
for k2, v2 := range o.Meta {
cp.Meta[k2] = v2
}
}
return &cp
}
// DeepCopy generates a deep copy of *ServiceConfigResponse
func (o *ServiceConfigResponse) DeepCopy() *ServiceConfigResponse {
var cp ServiceConfigResponse = *o
if o.ProxyConfig != nil {
cp.ProxyConfig = make(map[string]interface{}, len(o.ProxyConfig))
for k2, v2 := range o.ProxyConfig {
cp.ProxyConfig[k2] = v2
}
}
if o.UpstreamConfigs != nil {
cp.UpstreamConfigs = make(map[string]map[string]interface{}, len(o.UpstreamConfigs))
for k2, v2 := range o.UpstreamConfigs {
var cp_UpstreamConfigs_v2 map[string]interface{}
if v2 != nil {
cp_UpstreamConfigs_v2 = make(map[string]interface{}, len(v2))
for k3, v3 := range v2 {
cp_UpstreamConfigs_v2[k3] = v3
}
}
cp.UpstreamConfigs[k2] = cp_UpstreamConfigs_v2
}
}
if o.UpstreamIDConfigs != nil {
cp.UpstreamIDConfigs = make([]OpaqueUpstreamConfig, len(o.UpstreamIDConfigs))
copy(cp.UpstreamIDConfigs, o.UpstreamIDConfigs)
for i2 := range o.UpstreamIDConfigs {
if o.UpstreamIDConfigs[i2].Config != nil {
cp.UpstreamIDConfigs[i2].Config = make(map[string]interface{}, len(o.UpstreamIDConfigs[i2].Config))
for k4, v4 := range o.UpstreamIDConfigs[i2].Config {
cp.UpstreamIDConfigs[i2].Config[k4] = v4
}
}
}
}
{
retV := o.Expose.DeepCopy()
cp.Expose = *retV
}
if o.Destination.Addresses != nil {
cp.Destination.Addresses = make([]string, len(o.Destination.Addresses))
copy(cp.Destination.Addresses, o.Destination.Addresses)
}
if o.Meta != nil {
cp.Meta = make(map[string]string, len(o.Meta))
for k2, v2 := range o.Meta {
cp.Meta[k2] = v2
}
}
if o.EnvoyExtensions != nil {
cp.EnvoyExtensions = make([]EnvoyExtension, len(o.EnvoyExtensions))
copy(cp.EnvoyExtensions, o.EnvoyExtensions)
for i2 := range o.EnvoyExtensions {
if o.EnvoyExtensions[i2].Arguments != nil {
cp.EnvoyExtensions[i2].Arguments = make(map[string]interface{}, len(o.EnvoyExtensions[i2].Arguments))
for k4, v4 := range o.EnvoyExtensions[i2].Arguments {
cp.EnvoyExtensions[i2].Arguments[k4] = v4
}
}
}
}
return &cp
}
// DeepCopy generates a deep copy of *ServiceConnect
func (o *ServiceConnect) DeepCopy() *ServiceConnect {
var cp ServiceConnect = *o
if o.SidecarService != nil {
cp.SidecarService = o.SidecarService.DeepCopy()
}
if o.PeerMeta != nil {
cp.PeerMeta = o.PeerMeta.DeepCopy()
}
return &cp
}
// DeepCopy generates a deep copy of *ServiceDefinition
func (o *ServiceDefinition) DeepCopy() *ServiceDefinition {
var cp ServiceDefinition = *o
if o.Tags != nil {
cp.Tags = make([]string, len(o.Tags))
copy(cp.Tags, o.Tags)
}
if o.TaggedAddresses != nil {
cp.TaggedAddresses = make(map[string]ServiceAddress, len(o.TaggedAddresses))
for k2, v2 := range o.TaggedAddresses {
cp.TaggedAddresses[k2] = v2
}
}
if o.Meta != nil {
cp.Meta = make(map[string]string, len(o.Meta))
for k2, v2 := range o.Meta {
cp.Meta[k2] = v2
}
}
{
retV := o.Check.DeepCopy()
cp.Check = *retV
}
if o.Checks != nil {
cp.Checks = make([]*CheckType, len(o.Checks))
copy(cp.Checks, o.Checks)
for i2 := range o.Checks {
if o.Checks[i2] != nil {
cp.Checks[i2] = o.Checks[i2].DeepCopy()
}
}
}
if o.Weights != nil {
cp.Weights = new(Weights)
*cp.Weights = *o.Weights
}
if o.Proxy != nil {
cp.Proxy = o.Proxy.DeepCopy()
}
if o.Connect != nil {
cp.Connect = o.Connect.DeepCopy()
}
return &cp
}
// DeepCopy generates a deep copy of *ServiceResolverConfigEntry
func (o *ServiceResolverConfigEntry) DeepCopy() *ServiceResolverConfigEntry {
var cp ServiceResolverConfigEntry = *o
if o.Subsets != nil {
cp.Subsets = make(map[string]ServiceResolverSubset, len(o.Subsets))
for k2, v2 := range o.Subsets {
cp.Subsets[k2] = v2
}
}
if o.Redirect != nil {
cp.Redirect = new(ServiceResolverRedirect)
*cp.Redirect = *o.Redirect
}
if o.Failover != nil {
cp.Failover = make(map[string]ServiceResolverFailover, len(o.Failover))
for k2, v2 := range o.Failover {
var cp_Failover_v2 ServiceResolverFailover
{
retV := v2.DeepCopy()
cp_Failover_v2 = *retV
}
cp.Failover[k2] = cp_Failover_v2
}
}
if o.LoadBalancer != nil {
cp.LoadBalancer = o.LoadBalancer.DeepCopy()
}
if o.Meta != nil {
cp.Meta = make(map[string]string, len(o.Meta))
for k2, v2 := range o.Meta {
cp.Meta[k2] = v2
}
}
return &cp
}
// DeepCopy generates a deep copy of *ServiceResolverFailover
func (o *ServiceResolverFailover) DeepCopy() *ServiceResolverFailover {
var cp ServiceResolverFailover = *o
if o.Datacenters != nil {
cp.Datacenters = make([]string, len(o.Datacenters))
copy(cp.Datacenters, o.Datacenters)
}
if o.Targets != nil {
cp.Targets = make([]ServiceResolverFailoverTarget, len(o.Targets))
copy(cp.Targets, o.Targets)
}
return &cp
}
// DeepCopy generates a deep copy of *ServiceRoute
func (o *ServiceRoute) DeepCopy() *ServiceRoute {
var cp ServiceRoute = *o
if o.Match != nil {
cp.Match = o.Match.DeepCopy()
}
if o.Destination != nil {
cp.Destination = o.Destination.DeepCopy()
}
return &cp
}
// DeepCopy generates a deep copy of *ServiceRouteDestination
func (o *ServiceRouteDestination) DeepCopy() *ServiceRouteDestination {
var cp ServiceRouteDestination = *o
if o.RetryOn != nil {
cp.RetryOn = make([]string, len(o.RetryOn))
copy(cp.RetryOn, o.RetryOn)
}
if o.RetryOnStatusCodes != nil {
cp.RetryOnStatusCodes = make([]uint32, len(o.RetryOnStatusCodes))
copy(cp.RetryOnStatusCodes, o.RetryOnStatusCodes)
}
if o.RequestHeaders != nil {
cp.RequestHeaders = o.RequestHeaders.DeepCopy()
}
if o.ResponseHeaders != nil {
cp.ResponseHeaders = o.ResponseHeaders.DeepCopy()
}
return &cp
}
// DeepCopy generates a deep copy of *ServiceRouteMatch
func (o *ServiceRouteMatch) DeepCopy() *ServiceRouteMatch {
var cp ServiceRouteMatch = *o
if o.HTTP != nil {
cp.HTTP = new(ServiceRouteHTTPMatch)
*cp.HTTP = *o.HTTP
if o.HTTP.Header != nil {
cp.HTTP.Header = make([]ServiceRouteHTTPMatchHeader, len(o.HTTP.Header))
copy(cp.HTTP.Header, o.HTTP.Header)
}
if o.HTTP.QueryParam != nil {
cp.HTTP.QueryParam = make([]ServiceRouteHTTPMatchQueryParam, len(o.HTTP.QueryParam))
copy(cp.HTTP.QueryParam, o.HTTP.QueryParam)
}
if o.HTTP.Methods != nil {
cp.HTTP.Methods = make([]string, len(o.HTTP.Methods))
copy(cp.HTTP.Methods, o.HTTP.Methods)
}
}
return &cp
}
// DeepCopy generates a deep copy of *Upstream
func (o *Upstream) DeepCopy() *Upstream {
var cp Upstream = *o
if o.Config != nil {
cp.Config = make(map[string]interface{}, len(o.Config))
for k2, v2 := range o.Config {
cp.Config[k2] = v2
}
}
if o.IngressHosts != nil {
cp.IngressHosts = make([]string, len(o.IngressHosts))
copy(cp.IngressHosts, o.IngressHosts)
}
return &cp
}
// DeepCopy generates a deep copy of *UpstreamConfiguration
func (o *UpstreamConfiguration) DeepCopy() *UpstreamConfiguration {
var cp UpstreamConfiguration = *o
if o.Overrides != nil {
cp.Overrides = make([]*UpstreamConfig, len(o.Overrides))
copy(cp.Overrides, o.Overrides)
for i2 := range o.Overrides {
if o.Overrides[i2] != nil {
cp.Overrides[i2] = new(UpstreamConfig)
*cp.Overrides[i2] = *o.Overrides[i2]
if o.Overrides[i2].Limits != nil {
cp.Overrides[i2].Limits = new(UpstreamLimits)
*cp.Overrides[i2].Limits = *o.Overrides[i2].Limits
if o.Overrides[i2].Limits.MaxConnections != nil {
cp.Overrides[i2].Limits.MaxConnections = new(int)
*cp.Overrides[i2].Limits.MaxConnections = *o.Overrides[i2].Limits.MaxConnections
}
if o.Overrides[i2].Limits.MaxPendingRequests != nil {
cp.Overrides[i2].Limits.MaxPendingRequests = new(int)
*cp.Overrides[i2].Limits.MaxPendingRequests = *o.Overrides[i2].Limits.MaxPendingRequests
}
if o.Overrides[i2].Limits.MaxConcurrentRequests != nil {
cp.Overrides[i2].Limits.MaxConcurrentRequests = new(int)
*cp.Overrides[i2].Limits.MaxConcurrentRequests = *o.Overrides[i2].Limits.MaxConcurrentRequests
}
}
if o.Overrides[i2].PassiveHealthCheck != nil {
cp.Overrides[i2].PassiveHealthCheck = new(PassiveHealthCheck)
*cp.Overrides[i2].PassiveHealthCheck = *o.Overrides[i2].PassiveHealthCheck
if o.Overrides[i2].PassiveHealthCheck.EnforcingConsecutive5xx != nil {
cp.Overrides[i2].PassiveHealthCheck.EnforcingConsecutive5xx = new(uint32)
*cp.Overrides[i2].PassiveHealthCheck.EnforcingConsecutive5xx = *o.Overrides[i2].PassiveHealthCheck.EnforcingConsecutive5xx
}
}
}
}
}
if o.Defaults != nil {
cp.Defaults = new(UpstreamConfig)
*cp.Defaults = *o.Defaults
if o.Defaults.Limits != nil {
cp.Defaults.Limits = new(UpstreamLimits)
*cp.Defaults.Limits = *o.Defaults.Limits
if o.Defaults.Limits.MaxConnections != nil {
cp.Defaults.Limits.MaxConnections = new(int)
*cp.Defaults.Limits.MaxConnections = *o.Defaults.Limits.MaxConnections
}
if o.Defaults.Limits.MaxPendingRequests != nil {
cp.Defaults.Limits.MaxPendingRequests = new(int)
*cp.Defaults.Limits.MaxPendingRequests = *o.Defaults.Limits.MaxPendingRequests
}
if o.Defaults.Limits.MaxConcurrentRequests != nil {
cp.Defaults.Limits.MaxConcurrentRequests = new(int)
*cp.Defaults.Limits.MaxConcurrentRequests = *o.Defaults.Limits.MaxConcurrentRequests
}
}
if o.Defaults.PassiveHealthCheck != nil {
cp.Defaults.PassiveHealthCheck = new(PassiveHealthCheck)
*cp.Defaults.PassiveHealthCheck = *o.Defaults.PassiveHealthCheck
if o.Defaults.PassiveHealthCheck.EnforcingConsecutive5xx != nil {
cp.Defaults.PassiveHealthCheck.EnforcingConsecutive5xx = new(uint32)
*cp.Defaults.PassiveHealthCheck.EnforcingConsecutive5xx = *o.Defaults.PassiveHealthCheck.EnforcingConsecutive5xx
}
}
}
return &cp
}