endpoints

package
v0.0.0-...-8be9c10 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 6, 2016 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DefaultFaultRule

type DefaultFaultRule struct {
	XMLName       string      `xml:"DefaultFaultRule" hcl:"-"`
	Name          string      `xml:"name,attr" hcl:"-"`
	Condition     string      `xml:",omitempty" hcl:"condition"`
	Steps         []*FlowStep `xml:",innerxml" hcl:"step"`
	AlwaysEnforce bool        `xml:",omitempty" hcl:"always_enforce"`
}

DefaultFaultRule represents a <DefaultFaultRule/> element for ProxyEndpoint and TargetEndpoint definitions.

Documentation: http://docs.apigee.com/api-services/content/fault-handling

type EnvironmentVariable

type EnvironmentVariable struct {
	XMLName string      `xml:"EnvironmentVariable" hcl:"-"`
	Name    string      `xml:"name,attr" hcl:",key"`
	Value   interface{} `xml:",chardata" hcl:"-"`
}

EnvironmentVariable represents an <EnvironmentVariable/> element in a ScriptTarget.

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#targetendpoint-targetendpointconfigurationelements

type FaultRule

type FaultRule struct {
	XMLName   string      `xml:"FaultRule" hcl:"-"`
	Name      string      `xml:"name,attr" hcl:"-"`
	Condition string      `xml:",omitempty" hcl:"condition"`
	Steps     []*FlowStep `xml:",innerxml" hcl:"step"`
}

FaultRule represents a <FaultRule/> element for ProxyEndpoint and TargetEndpoint definitions.

Documentation: http://docs.apigee.com/api-services/content/fault-handling

type Flow

type Flow struct {
	XMLName   string       `xml:"Flow" hcl:"-"`
	Name      string       `xml:"name,attr" hcl:"-"`
	Condition string       `xml:",omitempty" hcl:"condition"`
	Request   FlowRequest  `hcl:"request"`
	Response  FlowResponse `hcl:"response"`
}

Flow represents a <Flow/> element for ProxyEndpoint and TargetEndpoint definitions.

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#flows

type FlowRequest

type FlowRequest struct {
	XMLName string      `xml:"Request" hcl:"-"`
	Steps   []*FlowStep `xml:",innerxml" hcl:"step"`
}

FlowRequest represents a <Request/> element for PreFlow, Flow, PostFlow, and PostClientFlow definitions

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#watchaquickhowtovideo-flowconfigurationelements

type FlowResponse

type FlowResponse struct {
	XMLName string      `xml:"Response" hcl:"-"`
	Steps   []*FlowStep `xml:",innerxml" hcl:"step"`
}

FlowResponse represents a <Response/> element for PreFlow, Flow, PostFlow, and PostClientFlow definitions

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#watchaquickhowtovideo-flowconfigurationelements

type FlowStep

type FlowStep struct {
	XMLName   string `xml:"Step"`
	Name      string
	Condition string `xml:",omitempty" hcl:"condition"`
}

FlowStep represents a <Step/> element for Request and Response flows in ProxyEndpoint and TargetEndpoint definitions.

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#policies-policyattachment

type HTTPProxyConnection

type HTTPProxyConnection struct {
	XMLName      string                 `xml:"HTTPProxyConnection" hcl:"-"`
	BasePath     string                 `hcl:"base_path"`
	VirtualHosts []string               `xml:"VirtualHost" hcl:"virtual_host"`
	Properties   []*properties.Property `xml:"Properties>Property" hcl:"properties"`
}

HTTPProxyConnection represents an <HTTPProxyConnection/> element in a ProxyEndpoint.

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#proxyendpoint-proxyendpointconfigurationelements

type HTTPTargetConnection

type HTTPTargetConnection struct {
	XMLName      string                 `xml:"HTTPTargetConnection" hcl:"-"`
	URL          string                 `hcl:"url"`
	LoadBalancer *LoadBalancer          `hcl:"load_balancer"`
	Properties   []*properties.Property `xml:"Properties>Property" hcl:"properties"`
}

HTTPTargetConnection represents an <HTTPTargetConnection/> element in a TargetEndpoint.

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#targetendpoint-targetendpointconfigurationelements

func DecodeHTTPTargetConnectionHCL

func DecodeHTTPTargetConnectionHCL(item *ast.ObjectItem) (*HTTPTargetConnection, error)

DecodeHTTPTargetConnectionHCL converts an HCL ast.ObjectItem into an HTTPTargetConnection object.

type LoadBalancer

type LoadBalancer struct {
	XMLName      string                `xml:"LoadBalancer" hcl:"-"`
	Algorithm    string                `hcl:"algorithm"`
	Servers      []*LoadBalancerServer `xml:"Server" hcl:"server"`
	MaxFailures  int                   `xml:",omitempty" hcl:"max_failures"`
	RetryEnabled bool                  `xml:",omitempty" hcl:"retry_enabled"`
}

LoadBalancer represents a <LoadBalancer/> element in an HTTPTargetConnection.

Documentation: http://docs.apigee.com/api-platform/content/load-balance-api-traffic-across-multiple-backend-servers#configuringatargetendpointtoloadbalanceacrossnamedtargetservers

type LoadBalancerServer

type LoadBalancerServer struct {
	XMLName    string `xml:"Server" hcl:"-"`
	Name       string `xml:"name,attr" hcl:"-"`
	Weight     int    `xml:",omitempty" hcl:"weight"`
	IsFallback bool   `xml:",omitempty" hcl:"is_fallback"`
}

LoadBalancerServer represents a <LoadBalancerServer/> element in a LoadBalancer.

Documentation: http://docs.apigee.com/api-platform/content/load-balance-api-traffic-across-multiple-backend-servers#configuringatargetendpointtoloadbalanceacrossnamedtargetservers

type LocalTargetConnection

type LocalTargetConnection struct {
	XMLName       string `xml:"LocalTargetConnection" hcl:"-"`
	APIProxy      string `xml:",omitempty" hcl:"api_proxy"`
	ProxyEndpoint string `xml:",omitempty" hcl:"proxy_endpoint"`
	Path          string `xml:",omitempty" hcl:"path"`
}

LocalTargetConnection represents a <LocalTargetConnection/> element in a TargetEndpoint.

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#targetendpoint-targetendpointconfigurationelements

type PostClientFlow

type PostClientFlow struct {
	XMLName  string       `xml:"PostClientFlow" hcl:"-"`
	Request  FlowRequest  `hcl:"request"`
	Response FlowResponse `hcl:"response"`
}

PostClientFlow represents a <PostClientFlow/> element for ProxyEndpoint definitions.

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#flows

type PostFlow

type PostFlow struct {
	XMLName  string       `xml:"PostFlow" hcl:"-"`
	Request  FlowRequest  `hcl:"request"`
	Response FlowResponse `hcl:"response"`
}

PostFlow represents a <PostFlow/> element for ProxyEndpoint and TargetEndpoint definitions.

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#flows

type PreFlow

type PreFlow struct {
	XMLName  string       `xml:"PreFlow" hcl:"-"`
	Request  FlowRequest  `hcl:"request"`
	Response FlowResponse `hcl:"response"`
}

PreFlow represents a <PreFlow/> element for ProxyEndpoint and TargetEndpoint definitions.

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#flows

type ProxyEndpoint

type ProxyEndpoint struct {
	XMLName             string               `xml:"ProxyEndpoint" hcl:"-"`
	Name                string               `xml:"name,attr" hcl:"-"`
	PreFlow             *PreFlow             `hcl:"pre_flow"`
	Flows               []*Flow              `xml:"Flows>Flow" hcl:"flows"`
	PostFlow            *PostFlow            `hcl:"post_flow"`
	PostClientFlow      *PostClientFlow      `hcl:"post_client_flow"`
	FaultRules          []*FaultRule         `xml:"FaultRules>FaultRule" hcl:"fault_rules"`
	DefaultFaultRule    *DefaultFaultRule    `hcl:"default_fault_rule"`
	HTTPProxyConnection *HTTPProxyConnection `hcl:"http_proxy_connection"`
	RouteRules          []*RouteRule         `xml:"RouteRule" hcl:"route_rule"`
}

ProxyEndpoint represents a <ProxyEndpoint/> element.

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#proxyendpoint

func DecodeProxyEndpointHCL

func DecodeProxyEndpointHCL(item *ast.ObjectItem) (*ProxyEndpoint, error)

DecodeProxyEndpointHCL converts an HCL ast.ObjectItem into a ProxyEndpoint.

type RouteRule

type RouteRule struct {
	XMLName        string `xml:"RouteRule"`
	Name           string `xml:"name,attr" hcl:"-"`
	Condition      string `xml:",omitempty" hcl:"condition"`
	TargetEndpoint string `xml:",omitempty" hcl:"target_endpoint"`
	URL            string `xml:",omitempty" hcl:"url"`
}

RouteRule represents a <RouteRule/> element in an HTTPProxyConnection

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#proxyendpoint-proxyendpointconfigurationelements

type SSLInfo

type SSLInfo struct {
	XMLName           string   `xml:"SSLInfo" hcl:"-"`
	Enabled           bool     `xml:",omitempty" hcl:"enabled"`
	TrustStore        string   `xml:",omitempty" hcl:"trust_store"`
	ClientAuthEnabled bool     `xml:",omitempty" hcl:"client_auth_enabled"`
	KeyStore          string   `xml:",omitempty" hcl:"key_store"`
	KeyAlias          string   `xml:",omitempty" hcl:"key_alias"`
	Ciphers           []string `xml:"Ciphers>Cipher" hcl:"ciphers"`
	Protocols         []string `xml:"Protocols>Protocol" hcl:"protocols"`
}

SSLInfo represents an <SSLInfo/> element in a TargetEndpoint.

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#tlsssltargetendpointconfiguration-tlsssltargetendpointconfigurationelements

type ScriptTarget

type ScriptTarget struct {
	XMLName              string                 `xml:"ScriptTarget" hcl:"-"`
	ResourceURL          string                 `hcl:"resource_url"`
	EnvironmentVariables []*EnvironmentVariable `xml:"EnvironmentVariables>EnvironmentVariable" hcl:"environment_variables"`
	Arguments            []string               `xml:"Arguments>Argument" hcl:"arguments"`
}

ScriptTarget represents a <ScriptTarget/> element in a TargetEndpoint.

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#targetendpoint-targetendpointconfigurationelements

type TargetEndpoint

type TargetEndpoint struct {
	XMLName               string                 `xml:"TargetEndpoint" hcl:"-"`
	Name                  string                 `xml:"name,attr" hcl:"-"`
	PreFlow               *PreFlow               `hcl:"pre_flow"`
	Flows                 []*Flow                `xml:"Flows,omitempty>Flow" hcl:"flows"`
	PostFlow              *PostFlow              `hcl:"post_flow"`
	FaultRules            []*FaultRule           `xml:"FaultRules,omitempty>FaultRule" hcl:"fault_rules"`
	DefaultFaultRule      *DefaultFaultRule      `hcl:"default_fault_rule"`
	HTTPTargetConnection  *HTTPTargetConnection  `hcl:"http_target_connection"`
	LocalTargetConnection *LocalTargetConnection `xml:",omitempty" hcl:"local_target_connection"`
	ScriptTarget          *ScriptTarget          `xml:",omitempty" hcl:"script_target"`
	SSLInfo               *SSLInfo               `xml:",omitempty" hcl:"ssl_info"`
}

TargetEndpoint represents a <TargetEndpoint/> element.

Documentation: http://docs.apigee.com/api-services/reference/api-proxy-configuration-reference#targetendpoint

func DecodeTargetEndpointHCL

func DecodeTargetEndpointHCL(item *ast.ObjectItem) (*TargetEndpoint, error)

DecodeTargetEndpointHCL converts an HCL ast.ObjectItem into a TargetEndpoint object.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL