proute

package
v1.0.2 Latest Latest
Warning

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

Go to latest
Published: Apr 11, 2021 License: AGPL-3.0 Imports: 34 Imported by: 0

Documentation

Overview

proute or Paramaterised-Routes allow for customisable paths with arbitrary parameters that can be generated to produce a full request. This is our intermediate representation between kitebuilder and kiterunner. This also can further be extended for programmatic use allowing for fuzzable parameters

Index

Constants

View Source
const (
	DefaultFormDataBoundary = "hahahahahformboundaryhahahaha"
)

Variables

View Source
var (
	ErrInvalidLengthProute        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowProute          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupProute = fmt.Errorf("proto: unexpected end of group")
)
View Source
var (
	ASCIINum              = "0123456789"
	ASCIIHex              = "0123456789abcdefABCDEF"
	ASCIIPrintableNoSpace = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!\"#$%&\\'()*+,-./:;<=>?@[\\\\]^_`{|}~"
	ASCIISpecia           = "!\"#$%&\\'()*+,-./:;<=>?@[\\\\]^_`{|}~"
	ASCIIAlpha            = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
	ASCIIAlphaNum         = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
	DefaultCharSet        = ASCIINum
)

Functions

func APIsToKiterunnerRoutes

func APIsToKiterunnerRoutes(api []API) ([]*http.Route, error)

func CrumbToParameter

func CrumbToParameter(c Crumb) kitebuilder.Parameter

func CrumbToSchema

func CrumbToSchema(c Crumb) kitebuilder.Schema

func CrumbToSecurityDefinition

func CrumbToSecurityDefinition(c Crumb) kitebuilder.SecurityDefinition

func DefaultValTagFunc

func DefaultValTagFunc(defaultv []byte, m map[string][]byte) func(w io.Writer, tag string) (int, error)

func MarshalXMLCrumb

func MarshalXMLCrumb(c Crumb, opts ...CrumbOption) string

MarshalXMLCrumb will create an XML object containing just that crumb. The object name is set to the crumb name and the child value is set to the child value of the crumb

func RandomString

func RandomString(rng *rand.Rand, charset string, length int) string

func RegisterGobs

func RegisterGobs()

RegisterGobs will register globally the gobs needed to serialize and deserialize an API

func ToKiterunnerRoutes

func ToKiterunnerRoutes(api API) ([]*http.Route, error)

func XMLAddChildCrumb

func XMLAddChildCrumb(xml XMLer, c Crumb, nameOverride string, opts ...CrumbOption) error

XMLAddChildCrumb is a dirty method of building an XML document using strings if the child is to be an object, we need to unmarshal it to get a etree elemtn we can append otherwise it'll encode our xml object. Fuck this is stupid

Types

type API

type API struct {
	URL    string  // the URL source of the API
	ID     string  // the Ksuid for this API which can be any UUID really... but KSUID is convenient
	Routes []Route // a list of routes

	// Crumbs to add to all the Routes
	QueryCrumbs []Crumb

	HeaderCrumbs []Crumb

	BodyCrumbs []Crumb

	CookieCrumbs []Crumb
	// contains filtered or unexported fields
}

API encapsulates all the routes and required headers for the routes

func FromKitebuilderAPI

func FromKitebuilderAPI(src kitebuilder.API) (API, error)

FromKitebuilderAPI will convert an kitebuilder API to a proute API. Errors are swallowed and printed to stdout because we hate ourselves other developers who try to use this. I can't believe I have to parse json types into usable data future readers beware. https://www.youtube.com/watch?v=LZWnM_u7Vfg

func FromKitebuilderAPIs

func FromKitebuilderAPIs(src []kitebuilder.API) ([]API, error)

func FromStringSlice

func FromStringSlice(in []string, source string, opts ...PRouteOption) (API, error)

FromStringSlice will convert a string slice of paths into a Proute API. You can provide options to configure all the proutes at the same time, but not any individually

func FromStringSliceReader

func FromStringSliceReader(r io.Reader, source string, opts ...PRouteOption) (API, error)

func NewAPI

func NewAPI(id string, url string) API

func (API) BodyParams

func (a API) BodyParams(generate bool) []KV

func (API) CookieParams

func (a API) CookieParams(generate bool) []KV

func (API) DebugPrint

func (a API) DebugPrint()

func (API) Headers

func (a API) Headers(generate bool) []KV

func (API) ProtoAPI

func (p API) ProtoAPI() ProtoAPI

func (API) QueryParams

func (a API) QueryParams(generate bool) []KV

func (API) ToKitebuilderAPI

func (a API) ToKitebuilderAPI() (kitebuilder.API, error)

type APIS

type APIS []API

APIS are multiple APIs, defined as a type for convenience

func DecodeAPIGobFile

func DecodeAPIGobFile(filename string) (APIS, error)

DecodeAPIGobFile will decode the API from the given file

func DecodeAPIProtoFile

func DecodeAPIProtoFile(filename string) (APIS, error)

DecodeAPIProtoFile will decode the API from the given file

func DecodeGobAPI

func DecodeGobAPI(r io.Reader) (APIS, error)

DecodeGobAPI will decode from the given reader, returning the decoded APIs

func DecodeProtoAPI

func DecodeProtoAPI(r io.Reader) (APIS, error)

DecodeProtoAPI will decode from the given reader, returning the decoded APIs

func FromAPISlice

func FromAPISlice(a []API) APIS

func (APIS) EncodeGob

func (a APIS) EncodeGob(w io.Writer) error

EncodeGob will encode the APIs into a gob format that can be easily and quickly decoded

func (APIS) EncodeGobFile

func (a APIS) EncodeGobFile(filename string) error

EncodeGobFile will encode the APIS to the specified filename, overwriting any existing file

func (APIS) EncodeProto

func (a APIS) EncodeProto(w io.Writer) error

EncodeProto will encode the APIs into a gob format that can be easily and quickly decoded

func (APIS) EncodeProtoFile

func (a APIS) EncodeProtoFile(filename string) error

EncodeProtoFile will encode the APIS to the specified filename, overwriting any existing file

func (APIS) EncodeStringSlice

func (a APIS) EncodeStringSlice(w io.Writer) error

func (APIS) First

func (a APIS) First(n int) APIS

func (APIS) ToKiteBuilderAPIS

func (a APIS) ToKiteBuilderAPIS() ([]kitebuilder.API, error)

type ArrayCrumb

type ArrayCrumb struct {
	Name    string
	Element Crumb
}

func (ArrayCrumb) IsNil

func (a ArrayCrumb) IsNil() bool

func (ArrayCrumb) Key

func (a ArrayCrumb) Key() string

func (ArrayCrumb) MarshalJSONArray

func (a ArrayCrumb) MarshalJSONArray(enc *gojay.Encoder)

func (ArrayCrumb) RawValue

func (a ArrayCrumb) RawValue(opts ...CrumbOption) interface{}

func (ArrayCrumb) Value

func (a ArrayCrumb) Value(opts ...CrumbOption) string

type BasicAuthCrumb

type BasicAuthCrumb struct {
	Name     string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"`
	User     string `protobuf:"bytes,2,opt,name=User,proto3" json:"User,omitempty"`
	Password string `protobuf:"bytes,3,opt,name=Password,proto3" json:"Password,omitempty"`
	Random   bool   `protobuf:"varint,4,opt,name=Random,proto3" json:"Random,omitempty"`
}

func (*BasicAuthCrumb) Descriptor

func (*BasicAuthCrumb) Descriptor() ([]byte, []int)

func (*BasicAuthCrumb) Equal

func (this *BasicAuthCrumb) Equal(that interface{}) bool

func (*BasicAuthCrumb) GetName

func (m *BasicAuthCrumb) GetName() string

func (*BasicAuthCrumb) GetPassword

func (m *BasicAuthCrumb) GetPassword() string

func (*BasicAuthCrumb) GetRandom

func (m *BasicAuthCrumb) GetRandom() bool

func (*BasicAuthCrumb) GetUser

func (m *BasicAuthCrumb) GetUser() string

func (*BasicAuthCrumb) GoString

func (this *BasicAuthCrumb) GoString() string

func (BasicAuthCrumb) Key

func (b BasicAuthCrumb) Key() string

func (*BasicAuthCrumb) Marshal

func (m *BasicAuthCrumb) Marshal() (dAtA []byte, err error)

func (*BasicAuthCrumb) MarshalTo

func (m *BasicAuthCrumb) MarshalTo(dAtA []byte) (int, error)

func (*BasicAuthCrumb) MarshalToSizedBuffer

func (m *BasicAuthCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*BasicAuthCrumb) ProtoMessage

func (*BasicAuthCrumb) ProtoMessage()

func (BasicAuthCrumb) RawValue

func (b BasicAuthCrumb) RawValue(opts ...CrumbOption) interface{}

func (*BasicAuthCrumb) Reset

func (m *BasicAuthCrumb) Reset()

func (*BasicAuthCrumb) Size

func (m *BasicAuthCrumb) Size() (n int)

func (*BasicAuthCrumb) String

func (this *BasicAuthCrumb) String() string

func (*BasicAuthCrumb) Unmarshal

func (m *BasicAuthCrumb) Unmarshal(dAtA []byte) error

func (BasicAuthCrumb) Value

func (b BasicAuthCrumb) Value(...CrumbOption) string

func (*BasicAuthCrumb) XXX_DiscardUnknown

func (m *BasicAuthCrumb) XXX_DiscardUnknown()

func (*BasicAuthCrumb) XXX_Marshal

func (m *BasicAuthCrumb) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*BasicAuthCrumb) XXX_Merge

func (m *BasicAuthCrumb) XXX_Merge(src proto.Message)

func (*BasicAuthCrumb) XXX_Size

func (m *BasicAuthCrumb) XXX_Size() int

func (*BasicAuthCrumb) XXX_Unmarshal

func (m *BasicAuthCrumb) XXX_Unmarshal(b []byte) error

type BoolCrumb

type BoolCrumb struct {
	Name  string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"`
	Fixed bool   `protobuf:"varint,2,opt,name=Fixed,proto3" json:"Fixed,omitempty"`
	Val   bool   `protobuf:"varint,3,opt,name=Val,proto3" json:"Val,omitempty"`
}

func (*BoolCrumb) Descriptor

func (*BoolCrumb) Descriptor() ([]byte, []int)

func (*BoolCrumb) Equal

func (this *BoolCrumb) Equal(that interface{}) bool

func (*BoolCrumb) GetFixed

func (m *BoolCrumb) GetFixed() bool

func (*BoolCrumb) GetName

func (m *BoolCrumb) GetName() string

func (*BoolCrumb) GetVal

func (m *BoolCrumb) GetVal() bool

func (*BoolCrumb) GoString

func (this *BoolCrumb) GoString() string

func (BoolCrumb) Key

func (b BoolCrumb) Key() string

func (*BoolCrumb) Marshal

func (m *BoolCrumb) Marshal() (dAtA []byte, err error)

func (*BoolCrumb) MarshalTo

func (m *BoolCrumb) MarshalTo(dAtA []byte) (int, error)

func (*BoolCrumb) MarshalToSizedBuffer

func (m *BoolCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*BoolCrumb) ProtoMessage

func (*BoolCrumb) ProtoMessage()

func (BoolCrumb) RawValue

func (b BoolCrumb) RawValue(...CrumbOption) interface{}

func (*BoolCrumb) Reset

func (m *BoolCrumb) Reset()

func (*BoolCrumb) Size

func (m *BoolCrumb) Size() (n int)

func (*BoolCrumb) String

func (this *BoolCrumb) String() string

func (*BoolCrumb) Unmarshal

func (m *BoolCrumb) Unmarshal(dAtA []byte) error

func (BoolCrumb) Value

func (b BoolCrumb) Value(opts ...CrumbOption) string

func (*BoolCrumb) XXX_DiscardUnknown

func (m *BoolCrumb) XXX_DiscardUnknown()

func (*BoolCrumb) XXX_Marshal

func (m *BoolCrumb) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*BoolCrumb) XXX_Merge

func (m *BoolCrumb) XXX_Merge(src proto.Message)

func (*BoolCrumb) XXX_Size

func (m *BoolCrumb) XXX_Size() int

func (*BoolCrumb) XXX_Unmarshal

func (m *BoolCrumb) XXX_Unmarshal(b []byte) error

type ContentType

type ContentType string
var (
	ContentTypeAny         ContentType = "any"
	ContentTypeJSON        ContentType = "application/json"
	ContentTypeFormData    ContentType = "multipart/form-data"
	ContentTypeXML         ContentType = "text/xml"
	ContentTypePlain       ContentType = "text/plain"
	ContentTypeFormEncoded ContentType = "application/x-www-form-urlencoded"
)

type Crumb

type Crumb interface {
	Value(...CrumbOption) string // we pass opts so at runtime we can determine if we want to configure any behaviour
	RawValue(...CrumbOption) interface{}
	Key() string
	// contains filtered or unexported methods
}

Crumb is a piece of a route, can be dynamically rendered or not

func FromProtoCrumbs

func FromProtoCrumbs(in []ProtoCrumb) (ret []Crumb)

type CrumbOption

type CrumbOption func(o *CrumbOptions)

func CrumbOptContentType

func CrumbOptContentType(v ContentType) CrumbOption

func CrumbOptFormDataBoundary

func CrumbOptFormDataBoundary(v string) CrumbOption

func CrumbOptIsChild

func CrumbOptIsChild(v bool) CrumbOption

type CrumbOptions

type CrumbOptions struct {
	ContentType      ContentType
	FormDataBoundary string
	IsChild          bool
	Random           bool
}

CrumbOptions provides options that can be used by any crumb when generating the values TODO: add rng as a source from the crumb options

func DefaultCrumbOptions

func DefaultCrumbOptions() *CrumbOptions

func NewCrumbOptions

func NewCrumbOptions(opts ...CrumbOption) *CrumbOptions

type FloatCrumb

type FloatCrumb struct {
	Name  string  `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"`
	Fixed bool    `protobuf:"varint,2,opt,name=Fixed,proto3" json:"Fixed,omitempty"`
	Val   float64 `protobuf:"fixed64,3,opt,name=Val,proto3" json:"Val,omitempty"`
}

func (*FloatCrumb) Descriptor

func (*FloatCrumb) Descriptor() ([]byte, []int)

func (*FloatCrumb) Equal

func (this *FloatCrumb) Equal(that interface{}) bool

func (*FloatCrumb) GetFixed

func (m *FloatCrumb) GetFixed() bool

func (*FloatCrumb) GetName

func (m *FloatCrumb) GetName() string

func (*FloatCrumb) GetVal

func (m *FloatCrumb) GetVal() float64

func (*FloatCrumb) GoString

func (this *FloatCrumb) GoString() string

func (FloatCrumb) Key

func (i FloatCrumb) Key() string

func (*FloatCrumb) Marshal

func (m *FloatCrumb) Marshal() (dAtA []byte, err error)

func (*FloatCrumb) MarshalTo

func (m *FloatCrumb) MarshalTo(dAtA []byte) (int, error)

func (*FloatCrumb) MarshalToSizedBuffer

func (m *FloatCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*FloatCrumb) ProtoMessage

func (*FloatCrumb) ProtoMessage()

func (FloatCrumb) RawValue

func (i FloatCrumb) RawValue(...CrumbOption) interface{}

func (*FloatCrumb) Reset

func (m *FloatCrumb) Reset()

func (*FloatCrumb) Size

func (m *FloatCrumb) Size() (n int)

func (*FloatCrumb) String

func (this *FloatCrumb) String() string

func (*FloatCrumb) Unmarshal

func (m *FloatCrumb) Unmarshal(dAtA []byte) error

func (FloatCrumb) Value

func (i FloatCrumb) Value(opts ...CrumbOption) string

func (*FloatCrumb) XXX_DiscardUnknown

func (m *FloatCrumb) XXX_DiscardUnknown()

func (*FloatCrumb) XXX_Marshal

func (m *FloatCrumb) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*FloatCrumb) XXX_Merge

func (m *FloatCrumb) XXX_Merge(src proto.Message)

func (*FloatCrumb) XXX_Size

func (m *FloatCrumb) XXX_Size() int

func (*FloatCrumb) XXX_Unmarshal

func (m *FloatCrumb) XXX_Unmarshal(b []byte) error

type IntCrumb

type IntCrumb struct {
	Min   int64  `protobuf:"varint,1,opt,name=Min,proto3" json:"Min,omitempty"`
	Max   int64  `protobuf:"varint,2,opt,name=Max,proto3" json:"Max,omitempty"`
	Val   int64  `protobuf:"varint,3,opt,name=Val,proto3" json:"Val,omitempty"`
	Fixed bool   `protobuf:"varint,4,opt,name=Fixed,proto3" json:"Fixed,omitempty"`
	Name  string `protobuf:"bytes,5,opt,name=Name,proto3" json:"Name,omitempty"`
}

func (*IntCrumb) Descriptor

func (*IntCrumb) Descriptor() ([]byte, []int)

func (*IntCrumb) Equal

func (this *IntCrumb) Equal(that interface{}) bool

func (*IntCrumb) GetFixed

func (m *IntCrumb) GetFixed() bool

func (*IntCrumb) GetMax

func (m *IntCrumb) GetMax() int64

func (*IntCrumb) GetMin

func (m *IntCrumb) GetMin() int64

func (*IntCrumb) GetName

func (m *IntCrumb) GetName() string

func (*IntCrumb) GetVal

func (m *IntCrumb) GetVal() int64

func (*IntCrumb) GoString

func (this *IntCrumb) GoString() string

func (IntCrumb) Key

func (i IntCrumb) Key() string

func (*IntCrumb) Marshal

func (m *IntCrumb) Marshal() (dAtA []byte, err error)

func (*IntCrumb) MarshalTo

func (m *IntCrumb) MarshalTo(dAtA []byte) (int, error)

func (*IntCrumb) MarshalToSizedBuffer

func (m *IntCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*IntCrumb) ProtoMessage

func (*IntCrumb) ProtoMessage()

func (IntCrumb) RawValue

func (i IntCrumb) RawValue(...CrumbOption) interface{}

func (*IntCrumb) Reset

func (m *IntCrumb) Reset()

func (*IntCrumb) Size

func (m *IntCrumb) Size() (n int)

func (*IntCrumb) String

func (this *IntCrumb) String() string

func (*IntCrumb) Unmarshal

func (m *IntCrumb) Unmarshal(dAtA []byte) error

func (IntCrumb) Value

func (i IntCrumb) Value(opts ...CrumbOption) string

func (*IntCrumb) XXX_DiscardUnknown

func (m *IntCrumb) XXX_DiscardUnknown()

func (*IntCrumb) XXX_Marshal

func (m *IntCrumb) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*IntCrumb) XXX_Merge

func (m *IntCrumb) XXX_Merge(src proto.Message)

func (*IntCrumb) XXX_Size

func (m *IntCrumb) XXX_Size() int

func (*IntCrumb) XXX_Unmarshal

func (m *IntCrumb) XXX_Unmarshal(b []byte) error

type KV

type KV struct {
	Key   string
	Value string
}

type ObjectCrumb

type ObjectCrumb struct {
	Name     string
	Elements []Crumb
}

func (ObjectCrumb) IsNil

func (o ObjectCrumb) IsNil() bool

func (ObjectCrumb) Key

func (o ObjectCrumb) Key() string

func (ObjectCrumb) MarshalJSONObject

func (o ObjectCrumb) MarshalJSONObject(enc *gojay.Encoder)

func (ObjectCrumb) RawValue

func (o ObjectCrumb) RawValue(opts ...CrumbOption) interface{}

func (ObjectCrumb) Value

func (o ObjectCrumb) Value(opts ...CrumbOption) string

type PRouteOption

type PRouteOption func(o *PRouteOptions)

func OptBody

func OptBody(c Crumb) PRouteOption

func OptContentType

func OptContentType(v string) PRouteOption

func OptHeader

func OptHeader(c Crumb) PRouteOption

func OptID

func OptID(ID string) PRouteOption

func OptMethod

func OptMethod(method string) PRouteOption

func OptPath

func OptPath(c Crumb) PRouteOption

func OptQuery

func OptQuery(c Crumb) PRouteOption

type PRouteOptions

type PRouteOptions struct {
	HeaderCrumbs []Crumb
	QueryCrumbs  []Crumb
	PathCrumbs   []Crumb
	BodyCrumbs   []Crumb
	Method       string
	ID           string
	ContentType  []ContentType
}

type ProtoAPI

type ProtoAPI struct {
	URL          string       `protobuf:"bytes,1,opt,name=URL,proto3" json:"URL,omitempty"`
	ID           string       `protobuf:"bytes,2,opt,name=ID,proto3" json:"ID,omitempty"`
	Routes       []ProtoRoute `protobuf:"bytes,3,rep,name=Routes,proto3" json:"Routes"`
	HeaderCrumbs []ProtoCrumb `protobuf:"bytes,4,rep,name=HeaderCrumbs,proto3" json:"HeaderCrumbs"`
	QueryCrumbs  []ProtoCrumb `protobuf:"bytes,5,rep,name=QueryCrumbs,proto3" json:"QueryCrumbs"`
	BodyCrumbs   []ProtoCrumb `protobuf:"bytes,6,rep,name=BodyCrumbs,proto3" json:"BodyCrumbs"`
	CookieCrumbs []ProtoCrumb `protobuf:"bytes,7,rep,name=CookieCrumbs,proto3" json:"CookieCrumbs"`
}

func (ProtoAPI) API

func (p ProtoAPI) API() API

func (*ProtoAPI) Descriptor

func (*ProtoAPI) Descriptor() ([]byte, []int)

func (*ProtoAPI) Equal

func (this *ProtoAPI) Equal(that interface{}) bool

func (*ProtoAPI) GetBodyCrumbs

func (m *ProtoAPI) GetBodyCrumbs() []ProtoCrumb

func (*ProtoAPI) GetCookieCrumbs

func (m *ProtoAPI) GetCookieCrumbs() []ProtoCrumb

func (*ProtoAPI) GetHeaderCrumbs

func (m *ProtoAPI) GetHeaderCrumbs() []ProtoCrumb

func (*ProtoAPI) GetID

func (m *ProtoAPI) GetID() string

func (*ProtoAPI) GetQueryCrumbs

func (m *ProtoAPI) GetQueryCrumbs() []ProtoCrumb

func (*ProtoAPI) GetRoutes

func (m *ProtoAPI) GetRoutes() []ProtoRoute

func (*ProtoAPI) GetURL

func (m *ProtoAPI) GetURL() string

func (*ProtoAPI) GoString

func (this *ProtoAPI) GoString() string

func (*ProtoAPI) Marshal

func (m *ProtoAPI) Marshal() (dAtA []byte, err error)

func (*ProtoAPI) MarshalTo

func (m *ProtoAPI) MarshalTo(dAtA []byte) (int, error)

func (*ProtoAPI) MarshalToSizedBuffer

func (m *ProtoAPI) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoAPI) ProtoMessage

func (*ProtoAPI) ProtoMessage()

func (*ProtoAPI) Reset

func (m *ProtoAPI) Reset()

func (*ProtoAPI) Size

func (m *ProtoAPI) Size() (n int)

func (*ProtoAPI) String

func (this *ProtoAPI) String() string

func (*ProtoAPI) Unmarshal

func (m *ProtoAPI) Unmarshal(dAtA []byte) error

func (*ProtoAPI) XXX_DiscardUnknown

func (m *ProtoAPI) XXX_DiscardUnknown()

func (*ProtoAPI) XXX_Marshal

func (m *ProtoAPI) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ProtoAPI) XXX_Merge

func (m *ProtoAPI) XXX_Merge(src proto.Message)

func (*ProtoAPI) XXX_Size

func (m *ProtoAPI) XXX_Size() int

func (*ProtoAPI) XXX_Unmarshal

func (m *ProtoAPI) XXX_Unmarshal(b []byte) error

type ProtoAPIS

type ProtoAPIS struct {
	APIs []ProtoAPI `protobuf:"bytes,1,rep,name=APIs,proto3" json:"APIs"`
}

func (ProtoAPIS) APIS

func (p ProtoAPIS) APIS() APIS

func (*ProtoAPIS) Descriptor

func (*ProtoAPIS) Descriptor() ([]byte, []int)

func (*ProtoAPIS) Equal

func (this *ProtoAPIS) Equal(that interface{}) bool

func (*ProtoAPIS) GetAPIs

func (m *ProtoAPIS) GetAPIs() []ProtoAPI

func (*ProtoAPIS) GoString

func (this *ProtoAPIS) GoString() string

func (*ProtoAPIS) Marshal

func (m *ProtoAPIS) Marshal() (dAtA []byte, err error)

func (*ProtoAPIS) MarshalTo

func (m *ProtoAPIS) MarshalTo(dAtA []byte) (int, error)

func (*ProtoAPIS) MarshalToSizedBuffer

func (m *ProtoAPIS) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoAPIS) ProtoMessage

func (*ProtoAPIS) ProtoMessage()

func (*ProtoAPIS) Reset

func (m *ProtoAPIS) Reset()

func (*ProtoAPIS) Size

func (m *ProtoAPIS) Size() (n int)

func (*ProtoAPIS) String

func (this *ProtoAPIS) String() string

func (*ProtoAPIS) Unmarshal

func (m *ProtoAPIS) Unmarshal(dAtA []byte) error

func (*ProtoAPIS) XXX_DiscardUnknown

func (m *ProtoAPIS) XXX_DiscardUnknown()

func (*ProtoAPIS) XXX_Marshal

func (m *ProtoAPIS) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ProtoAPIS) XXX_Merge

func (m *ProtoAPIS) XXX_Merge(src proto.Message)

func (*ProtoAPIS) XXX_Size

func (m *ProtoAPIS) XXX_Size() int

func (*ProtoAPIS) XXX_Unmarshal

func (m *ProtoAPIS) XXX_Unmarshal(b []byte) error

type ProtoArrayCrumb

type ProtoArrayCrumb struct {
	Name    string      `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"`
	Element *ProtoCrumb `protobuf:"bytes,2,opt,name=Element,proto3" json:"Element,omitempty"`
}

func (*ProtoArrayCrumb) Descriptor

func (*ProtoArrayCrumb) Descriptor() ([]byte, []int)

func (*ProtoArrayCrumb) Equal

func (this *ProtoArrayCrumb) Equal(that interface{}) bool

func (*ProtoArrayCrumb) GetElement

func (m *ProtoArrayCrumb) GetElement() *ProtoCrumb

func (*ProtoArrayCrumb) GetName

func (m *ProtoArrayCrumb) GetName() string

func (*ProtoArrayCrumb) GoString

func (this *ProtoArrayCrumb) GoString() string

func (*ProtoArrayCrumb) Marshal

func (m *ProtoArrayCrumb) Marshal() (dAtA []byte, err error)

func (*ProtoArrayCrumb) MarshalTo

func (m *ProtoArrayCrumb) MarshalTo(dAtA []byte) (int, error)

func (*ProtoArrayCrumb) MarshalToSizedBuffer

func (m *ProtoArrayCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoArrayCrumb) ProtoMessage

func (*ProtoArrayCrumb) ProtoMessage()

func (*ProtoArrayCrumb) Reset

func (m *ProtoArrayCrumb) Reset()

func (*ProtoArrayCrumb) Size

func (m *ProtoArrayCrumb) Size() (n int)

func (*ProtoArrayCrumb) String

func (this *ProtoArrayCrumb) String() string

func (*ProtoArrayCrumb) Unmarshal

func (m *ProtoArrayCrumb) Unmarshal(dAtA []byte) error

func (*ProtoArrayCrumb) XXX_DiscardUnknown

func (m *ProtoArrayCrumb) XXX_DiscardUnknown()

func (*ProtoArrayCrumb) XXX_Marshal

func (m *ProtoArrayCrumb) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ProtoArrayCrumb) XXX_Merge

func (m *ProtoArrayCrumb) XXX_Merge(src proto.Message)

func (*ProtoArrayCrumb) XXX_Size

func (m *ProtoArrayCrumb) XXX_Size() int

func (*ProtoArrayCrumb) XXX_Unmarshal

func (m *ProtoArrayCrumb) XXX_Unmarshal(b []byte) error

type ProtoCrumb

type ProtoCrumb struct {
	// Types that are valid to be assigned to Crumb:
	//	*ProtoCrumb_UuidCrumb
	//	*ProtoCrumb_StaticCrumb
	//	*ProtoCrumb_IntCrumb
	//	*ProtoCrumb_BoolCrumb
	//	*ProtoCrumb_FloatCrumb
	//	*ProtoCrumb_RandomStringCrumb
	//	*ProtoCrumb_RegexStringCrumb
	//	*ProtoCrumb_BasicAuthCrumb
	//	*ProtoCrumb_ArrayCrumb
	//	*ProtoCrumb_ObjectCrumb
	//	*ProtoCrumb_StringCrumbCrumb
	Crumb isProtoCrumb_Crumb `protobuf_oneof:"crumb"`
}

func FromCrumbs

func FromCrumbs(in []Crumb) (ret []ProtoCrumb)

func (*ProtoCrumb) Descriptor

func (*ProtoCrumb) Descriptor() ([]byte, []int)

func (*ProtoCrumb) Equal

func (this *ProtoCrumb) Equal(that interface{}) bool

func (*ProtoCrumb) GetArrayCrumb

func (m *ProtoCrumb) GetArrayCrumb() *ProtoArrayCrumb

func (*ProtoCrumb) GetBasicAuthCrumb

func (m *ProtoCrumb) GetBasicAuthCrumb() *BasicAuthCrumb

func (*ProtoCrumb) GetBoolCrumb

func (m *ProtoCrumb) GetBoolCrumb() *BoolCrumb

func (*ProtoCrumb) GetCrumb

func (m *ProtoCrumb) GetCrumb() isProtoCrumb_Crumb

func (*ProtoCrumb) GetFloatCrumb

func (m *ProtoCrumb) GetFloatCrumb() *FloatCrumb

func (*ProtoCrumb) GetIntCrumb

func (m *ProtoCrumb) GetIntCrumb() *IntCrumb

func (*ProtoCrumb) GetObjectCrumb

func (m *ProtoCrumb) GetObjectCrumb() *ProtoObjectCrumb

func (*ProtoCrumb) GetRandomStringCrumb

func (m *ProtoCrumb) GetRandomStringCrumb() *RandomStringCrumb

func (*ProtoCrumb) GetRawCrumb

func (m *ProtoCrumb) GetRawCrumb() Crumb

func (*ProtoCrumb) GetRegexStringCrumb

func (m *ProtoCrumb) GetRegexStringCrumb() *RegexStringCrumb

func (*ProtoCrumb) GetStaticCrumb

func (m *ProtoCrumb) GetStaticCrumb() *StaticCrumb

func (*ProtoCrumb) GetStringCrumbCrumb

func (m *ProtoCrumb) GetStringCrumbCrumb() *ProtoStringCrumbCrumb

func (*ProtoCrumb) GetUuidCrumb

func (m *ProtoCrumb) GetUuidCrumb() *UUIDCrumb

func (*ProtoCrumb) GoString

func (this *ProtoCrumb) GoString() string

func (*ProtoCrumb) Marshal

func (m *ProtoCrumb) Marshal() (dAtA []byte, err error)

func (*ProtoCrumb) MarshalTo

func (m *ProtoCrumb) MarshalTo(dAtA []byte) (int, error)

func (*ProtoCrumb) MarshalToSizedBuffer

func (m *ProtoCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoCrumb) ProtoMessage

func (*ProtoCrumb) ProtoMessage()

func (*ProtoCrumb) Reset

func (m *ProtoCrumb) Reset()

func (*ProtoCrumb) Size

func (m *ProtoCrumb) Size() (n int)

func (*ProtoCrumb) String

func (this *ProtoCrumb) String() string

func (*ProtoCrumb) Unmarshal

func (m *ProtoCrumb) Unmarshal(dAtA []byte) error

func (*ProtoCrumb) XXX_DiscardUnknown

func (m *ProtoCrumb) XXX_DiscardUnknown()

func (*ProtoCrumb) XXX_Marshal

func (m *ProtoCrumb) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ProtoCrumb) XXX_Merge

func (m *ProtoCrumb) XXX_Merge(src proto.Message)

func (*ProtoCrumb) XXX_OneofWrappers

func (*ProtoCrumb) XXX_OneofWrappers() []interface{}

XXX_OneofWrappers is for the internal use of the proto package.

func (*ProtoCrumb) XXX_Size

func (m *ProtoCrumb) XXX_Size() int

func (*ProtoCrumb) XXX_Unmarshal

func (m *ProtoCrumb) XXX_Unmarshal(b []byte) error

type ProtoCrumb_ArrayCrumb

type ProtoCrumb_ArrayCrumb struct {
	ArrayCrumb *ProtoArrayCrumb `protobuf:"bytes,9,opt,name=arrayCrumb,proto3,oneof" json:"arrayCrumb,omitempty"`
}

func (*ProtoCrumb_ArrayCrumb) Equal

func (this *ProtoCrumb_ArrayCrumb) Equal(that interface{}) bool

func (*ProtoCrumb_ArrayCrumb) GoString

func (this *ProtoCrumb_ArrayCrumb) GoString() string

func (*ProtoCrumb_ArrayCrumb) MarshalTo

func (m *ProtoCrumb_ArrayCrumb) MarshalTo(dAtA []byte) (int, error)

func (*ProtoCrumb_ArrayCrumb) MarshalToSizedBuffer

func (m *ProtoCrumb_ArrayCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoCrumb_ArrayCrumb) ProuteCrumb

func (p *ProtoCrumb_ArrayCrumb) ProuteCrumb() *ArrayCrumb

func (*ProtoCrumb_ArrayCrumb) Size

func (m *ProtoCrumb_ArrayCrumb) Size() (n int)

func (*ProtoCrumb_ArrayCrumb) String

func (this *ProtoCrumb_ArrayCrumb) String() string

func (*ProtoCrumb_ArrayCrumb) UnwrapCrumb

func (p *ProtoCrumb_ArrayCrumb) UnwrapCrumb() Crumb

type ProtoCrumb_BasicAuthCrumb

type ProtoCrumb_BasicAuthCrumb struct {
	BasicAuthCrumb *BasicAuthCrumb `protobuf:"bytes,8,opt,name=basicAuthCrumb,proto3,oneof" json:"basicAuthCrumb,omitempty"`
}

func (*ProtoCrumb_BasicAuthCrumb) Equal

func (this *ProtoCrumb_BasicAuthCrumb) Equal(that interface{}) bool

func (*ProtoCrumb_BasicAuthCrumb) GoString

func (this *ProtoCrumb_BasicAuthCrumb) GoString() string

func (*ProtoCrumb_BasicAuthCrumb) MarshalTo

func (m *ProtoCrumb_BasicAuthCrumb) MarshalTo(dAtA []byte) (int, error)

func (*ProtoCrumb_BasicAuthCrumb) MarshalToSizedBuffer

func (m *ProtoCrumb_BasicAuthCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoCrumb_BasicAuthCrumb) Size

func (m *ProtoCrumb_BasicAuthCrumb) Size() (n int)

func (*ProtoCrumb_BasicAuthCrumb) String

func (this *ProtoCrumb_BasicAuthCrumb) String() string

func (*ProtoCrumb_BasicAuthCrumb) UnwrapCrumb

func (p *ProtoCrumb_BasicAuthCrumb) UnwrapCrumb() Crumb

type ProtoCrumb_BoolCrumb

type ProtoCrumb_BoolCrumb struct {
	BoolCrumb *BoolCrumb `protobuf:"bytes,4,opt,name=boolCrumb,proto3,oneof" json:"boolCrumb,omitempty"`
}

func (*ProtoCrumb_BoolCrumb) Equal

func (this *ProtoCrumb_BoolCrumb) Equal(that interface{}) bool

func (*ProtoCrumb_BoolCrumb) GoString

func (this *ProtoCrumb_BoolCrumb) GoString() string

func (*ProtoCrumb_BoolCrumb) MarshalTo

func (m *ProtoCrumb_BoolCrumb) MarshalTo(dAtA []byte) (int, error)

func (*ProtoCrumb_BoolCrumb) MarshalToSizedBuffer

func (m *ProtoCrumb_BoolCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoCrumb_BoolCrumb) Size

func (m *ProtoCrumb_BoolCrumb) Size() (n int)

func (*ProtoCrumb_BoolCrumb) String

func (this *ProtoCrumb_BoolCrumb) String() string

func (*ProtoCrumb_BoolCrumb) UnwrapCrumb

func (p *ProtoCrumb_BoolCrumb) UnwrapCrumb() Crumb

type ProtoCrumb_FloatCrumb

type ProtoCrumb_FloatCrumb struct {
	FloatCrumb *FloatCrumb `protobuf:"bytes,5,opt,name=floatCrumb,proto3,oneof" json:"floatCrumb,omitempty"`
}

func (*ProtoCrumb_FloatCrumb) Equal

func (this *ProtoCrumb_FloatCrumb) Equal(that interface{}) bool

func (*ProtoCrumb_FloatCrumb) GoString

func (this *ProtoCrumb_FloatCrumb) GoString() string

func (*ProtoCrumb_FloatCrumb) MarshalTo

func (m *ProtoCrumb_FloatCrumb) MarshalTo(dAtA []byte) (int, error)

func (*ProtoCrumb_FloatCrumb) MarshalToSizedBuffer

func (m *ProtoCrumb_FloatCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoCrumb_FloatCrumb) Size

func (m *ProtoCrumb_FloatCrumb) Size() (n int)

func (*ProtoCrumb_FloatCrumb) String

func (this *ProtoCrumb_FloatCrumb) String() string

func (*ProtoCrumb_FloatCrumb) UnwrapCrumb

func (p *ProtoCrumb_FloatCrumb) UnwrapCrumb() Crumb

type ProtoCrumb_IntCrumb

type ProtoCrumb_IntCrumb struct {
	IntCrumb *IntCrumb `protobuf:"bytes,3,opt,name=intCrumb,proto3,oneof" json:"intCrumb,omitempty"`
}

func (*ProtoCrumb_IntCrumb) Equal

func (this *ProtoCrumb_IntCrumb) Equal(that interface{}) bool

func (*ProtoCrumb_IntCrumb) GoString

func (this *ProtoCrumb_IntCrumb) GoString() string

func (*ProtoCrumb_IntCrumb) MarshalTo

func (m *ProtoCrumb_IntCrumb) MarshalTo(dAtA []byte) (int, error)

func (*ProtoCrumb_IntCrumb) MarshalToSizedBuffer

func (m *ProtoCrumb_IntCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoCrumb_IntCrumb) Size

func (m *ProtoCrumb_IntCrumb) Size() (n int)

func (*ProtoCrumb_IntCrumb) String

func (this *ProtoCrumb_IntCrumb) String() string

func (*ProtoCrumb_IntCrumb) UnwrapCrumb

func (p *ProtoCrumb_IntCrumb) UnwrapCrumb() Crumb

type ProtoCrumb_ObjectCrumb

type ProtoCrumb_ObjectCrumb struct {
	ObjectCrumb *ProtoObjectCrumb `protobuf:"bytes,10,opt,name=objectCrumb,proto3,oneof" json:"objectCrumb,omitempty"`
}

func (*ProtoCrumb_ObjectCrumb) Equal

func (this *ProtoCrumb_ObjectCrumb) Equal(that interface{}) bool

func (*ProtoCrumb_ObjectCrumb) GoString

func (this *ProtoCrumb_ObjectCrumb) GoString() string

func (*ProtoCrumb_ObjectCrumb) MarshalTo

func (m *ProtoCrumb_ObjectCrumb) MarshalTo(dAtA []byte) (int, error)

func (*ProtoCrumb_ObjectCrumb) MarshalToSizedBuffer

func (m *ProtoCrumb_ObjectCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoCrumb_ObjectCrumb) ProuteCrumb

func (p *ProtoCrumb_ObjectCrumb) ProuteCrumb() *ObjectCrumb

func (*ProtoCrumb_ObjectCrumb) Size

func (m *ProtoCrumb_ObjectCrumb) Size() (n int)

func (*ProtoCrumb_ObjectCrumb) String

func (this *ProtoCrumb_ObjectCrumb) String() string

func (*ProtoCrumb_ObjectCrumb) UnwrapCrumb

func (p *ProtoCrumb_ObjectCrumb) UnwrapCrumb() Crumb

type ProtoCrumb_RandomStringCrumb

type ProtoCrumb_RandomStringCrumb struct {
	RandomStringCrumb *RandomStringCrumb `protobuf:"bytes,6,opt,name=randomStringCrumb,proto3,oneof" json:"randomStringCrumb,omitempty"`
}

func (*ProtoCrumb_RandomStringCrumb) Equal

func (this *ProtoCrumb_RandomStringCrumb) Equal(that interface{}) bool

func (*ProtoCrumb_RandomStringCrumb) GoString

func (this *ProtoCrumb_RandomStringCrumb) GoString() string

func (*ProtoCrumb_RandomStringCrumb) MarshalTo

func (m *ProtoCrumb_RandomStringCrumb) MarshalTo(dAtA []byte) (int, error)

func (*ProtoCrumb_RandomStringCrumb) MarshalToSizedBuffer

func (m *ProtoCrumb_RandomStringCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoCrumb_RandomStringCrumb) Size

func (m *ProtoCrumb_RandomStringCrumb) Size() (n int)

func (*ProtoCrumb_RandomStringCrumb) String

func (this *ProtoCrumb_RandomStringCrumb) String() string

func (*ProtoCrumb_RandomStringCrumb) UnwrapCrumb

func (p *ProtoCrumb_RandomStringCrumb) UnwrapCrumb() Crumb

type ProtoCrumb_RegexStringCrumb

type ProtoCrumb_RegexStringCrumb struct {
	RegexStringCrumb *RegexStringCrumb `protobuf:"bytes,7,opt,name=regexStringCrumb,proto3,oneof" json:"regexStringCrumb,omitempty"`
}

func (*ProtoCrumb_RegexStringCrumb) Equal

func (this *ProtoCrumb_RegexStringCrumb) Equal(that interface{}) bool

func (*ProtoCrumb_RegexStringCrumb) GoString

func (this *ProtoCrumb_RegexStringCrumb) GoString() string

func (*ProtoCrumb_RegexStringCrumb) MarshalTo

func (m *ProtoCrumb_RegexStringCrumb) MarshalTo(dAtA []byte) (int, error)

func (*ProtoCrumb_RegexStringCrumb) MarshalToSizedBuffer

func (m *ProtoCrumb_RegexStringCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoCrumb_RegexStringCrumb) Size

func (m *ProtoCrumb_RegexStringCrumb) Size() (n int)

func (*ProtoCrumb_RegexStringCrumb) String

func (this *ProtoCrumb_RegexStringCrumb) String() string

func (*ProtoCrumb_RegexStringCrumb) UnwrapCrumb

func (p *ProtoCrumb_RegexStringCrumb) UnwrapCrumb() Crumb

type ProtoCrumb_StaticCrumb

type ProtoCrumb_StaticCrumb struct {
	StaticCrumb *StaticCrumb `protobuf:"bytes,2,opt,name=staticCrumb,proto3,oneof" json:"staticCrumb,omitempty"`
}

func (*ProtoCrumb_StaticCrumb) Equal

func (this *ProtoCrumb_StaticCrumb) Equal(that interface{}) bool

func (*ProtoCrumb_StaticCrumb) GoString

func (this *ProtoCrumb_StaticCrumb) GoString() string

func (*ProtoCrumb_StaticCrumb) MarshalTo

func (m *ProtoCrumb_StaticCrumb) MarshalTo(dAtA []byte) (int, error)

func (*ProtoCrumb_StaticCrumb) MarshalToSizedBuffer

func (m *ProtoCrumb_StaticCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoCrumb_StaticCrumb) Size

func (m *ProtoCrumb_StaticCrumb) Size() (n int)

func (*ProtoCrumb_StaticCrumb) String

func (this *ProtoCrumb_StaticCrumb) String() string

func (*ProtoCrumb_StaticCrumb) UnwrapCrumb

func (p *ProtoCrumb_StaticCrumb) UnwrapCrumb() Crumb

type ProtoCrumb_StringCrumbCrumb

type ProtoCrumb_StringCrumbCrumb struct {
	StringCrumbCrumb *ProtoStringCrumbCrumb `protobuf:"bytes,11,opt,name=stringCrumbCrumb,proto3,oneof" json:"stringCrumbCrumb,omitempty"`
}

func (*ProtoCrumb_StringCrumbCrumb) Equal

func (this *ProtoCrumb_StringCrumbCrumb) Equal(that interface{}) bool

func (*ProtoCrumb_StringCrumbCrumb) GoString

func (this *ProtoCrumb_StringCrumbCrumb) GoString() string

func (*ProtoCrumb_StringCrumbCrumb) MarshalTo

func (m *ProtoCrumb_StringCrumbCrumb) MarshalTo(dAtA []byte) (int, error)

func (*ProtoCrumb_StringCrumbCrumb) MarshalToSizedBuffer

func (m *ProtoCrumb_StringCrumbCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoCrumb_StringCrumbCrumb) ProuteCrumb

func (*ProtoCrumb_StringCrumbCrumb) Size

func (m *ProtoCrumb_StringCrumbCrumb) Size() (n int)

func (*ProtoCrumb_StringCrumbCrumb) String

func (this *ProtoCrumb_StringCrumbCrumb) String() string

func (*ProtoCrumb_StringCrumbCrumb) UnwrapCrumb

func (p *ProtoCrumb_StringCrumbCrumb) UnwrapCrumb() Crumb

type ProtoCrumb_UuidCrumb

type ProtoCrumb_UuidCrumb struct {
	UuidCrumb *UUIDCrumb `protobuf:"bytes,1,opt,name=uuidCrumb,proto3,oneof" json:"uuidCrumb,omitempty"`
}

func (*ProtoCrumb_UuidCrumb) Equal

func (this *ProtoCrumb_UuidCrumb) Equal(that interface{}) bool

func (*ProtoCrumb_UuidCrumb) GoString

func (this *ProtoCrumb_UuidCrumb) GoString() string

func (*ProtoCrumb_UuidCrumb) MarshalTo

func (m *ProtoCrumb_UuidCrumb) MarshalTo(dAtA []byte) (int, error)

func (*ProtoCrumb_UuidCrumb) MarshalToSizedBuffer

func (m *ProtoCrumb_UuidCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoCrumb_UuidCrumb) Size

func (m *ProtoCrumb_UuidCrumb) Size() (n int)

func (*ProtoCrumb_UuidCrumb) String

func (this *ProtoCrumb_UuidCrumb) String() string

func (*ProtoCrumb_UuidCrumb) UnwrapCrumb

func (p *ProtoCrumb_UuidCrumb) UnwrapCrumb() Crumb

type ProtoObjectCrumb

type ProtoObjectCrumb struct {
	Name     string       `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"`
	Elements []ProtoCrumb `protobuf:"bytes,2,rep,name=Elements,proto3" json:"Elements"`
}

func (*ProtoObjectCrumb) Descriptor

func (*ProtoObjectCrumb) Descriptor() ([]byte, []int)

func (*ProtoObjectCrumb) Equal

func (this *ProtoObjectCrumb) Equal(that interface{}) bool

func (*ProtoObjectCrumb) GetElements

func (m *ProtoObjectCrumb) GetElements() []ProtoCrumb

func (*ProtoObjectCrumb) GetName

func (m *ProtoObjectCrumb) GetName() string

func (*ProtoObjectCrumb) GoString

func (this *ProtoObjectCrumb) GoString() string

func (*ProtoObjectCrumb) Marshal

func (m *ProtoObjectCrumb) Marshal() (dAtA []byte, err error)

func (*ProtoObjectCrumb) MarshalTo

func (m *ProtoObjectCrumb) MarshalTo(dAtA []byte) (int, error)

func (*ProtoObjectCrumb) MarshalToSizedBuffer

func (m *ProtoObjectCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoObjectCrumb) ProtoMessage

func (*ProtoObjectCrumb) ProtoMessage()

func (*ProtoObjectCrumb) Reset

func (m *ProtoObjectCrumb) Reset()

func (*ProtoObjectCrumb) Size

func (m *ProtoObjectCrumb) Size() (n int)

func (*ProtoObjectCrumb) String

func (this *ProtoObjectCrumb) String() string

func (*ProtoObjectCrumb) Unmarshal

func (m *ProtoObjectCrumb) Unmarshal(dAtA []byte) error

func (*ProtoObjectCrumb) XXX_DiscardUnknown

func (m *ProtoObjectCrumb) XXX_DiscardUnknown()

func (*ProtoObjectCrumb) XXX_Marshal

func (m *ProtoObjectCrumb) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ProtoObjectCrumb) XXX_Merge

func (m *ProtoObjectCrumb) XXX_Merge(src proto.Message)

func (*ProtoObjectCrumb) XXX_Size

func (m *ProtoObjectCrumb) XXX_Size() int

func (*ProtoObjectCrumb) XXX_Unmarshal

func (m *ProtoObjectCrumb) XXX_Unmarshal(b []byte) error

type ProtoRoute

type ProtoRoute struct {
	TemplatePath string        `protobuf:"bytes,1,opt,name=TemplatePath,proto3" json:"TemplatePath,omitempty"`
	Method       string        `protobuf:"bytes,2,opt,name=Method,proto3" json:"Method,omitempty"`
	PathCrumbs   []ProtoCrumb  `protobuf:"bytes,3,rep,name=PathCrumbs,proto3" json:"PathCrumbs"`
	HeaderCrumbs []ProtoCrumb  `protobuf:"bytes,4,rep,name=HeaderCrumbs,proto3" json:"HeaderCrumbs"`
	QueryCrumbs  []ProtoCrumb  `protobuf:"bytes,5,rep,name=QueryCrumbs,proto3" json:"QueryCrumbs"`
	BodyCrumbs   []ProtoCrumb  `protobuf:"bytes,6,rep,name=BodyCrumbs,proto3" json:"BodyCrumbs"`
	ContentType  []ContentType `protobuf:"bytes,7,rep,name=ContentType,proto3,casttype=ContentType" json:"ContentType,omitempty"`
}

func FromRoutes

func FromRoutes(in []Route) (ret []ProtoRoute)

func (*ProtoRoute) Descriptor

func (*ProtoRoute) Descriptor() ([]byte, []int)

func (*ProtoRoute) Equal

func (this *ProtoRoute) Equal(that interface{}) bool

func (*ProtoRoute) GetBodyCrumbs

func (m *ProtoRoute) GetBodyCrumbs() []ProtoCrumb

func (*ProtoRoute) GetContentType

func (m *ProtoRoute) GetContentType() []ContentType

func (*ProtoRoute) GetHeaderCrumbs

func (m *ProtoRoute) GetHeaderCrumbs() []ProtoCrumb

func (*ProtoRoute) GetMethod

func (m *ProtoRoute) GetMethod() string

func (*ProtoRoute) GetPathCrumbs

func (m *ProtoRoute) GetPathCrumbs() []ProtoCrumb

func (*ProtoRoute) GetQueryCrumbs

func (m *ProtoRoute) GetQueryCrumbs() []ProtoCrumb

func (*ProtoRoute) GetTemplatePath

func (m *ProtoRoute) GetTemplatePath() string

func (*ProtoRoute) GoString

func (this *ProtoRoute) GoString() string

func (*ProtoRoute) Marshal

func (m *ProtoRoute) Marshal() (dAtA []byte, err error)

func (*ProtoRoute) MarshalTo

func (m *ProtoRoute) MarshalTo(dAtA []byte) (int, error)

func (*ProtoRoute) MarshalToSizedBuffer

func (m *ProtoRoute) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoRoute) ProtoMessage

func (*ProtoRoute) ProtoMessage()

func (*ProtoRoute) Reset

func (m *ProtoRoute) Reset()

func (ProtoRoute) Route

func (p ProtoRoute) Route() Route

func (*ProtoRoute) Size

func (m *ProtoRoute) Size() (n int)

func (*ProtoRoute) String

func (this *ProtoRoute) String() string

func (*ProtoRoute) Unmarshal

func (m *ProtoRoute) Unmarshal(dAtA []byte) error

func (*ProtoRoute) XXX_DiscardUnknown

func (m *ProtoRoute) XXX_DiscardUnknown()

func (*ProtoRoute) XXX_Marshal

func (m *ProtoRoute) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ProtoRoute) XXX_Merge

func (m *ProtoRoute) XXX_Merge(src proto.Message)

func (*ProtoRoute) XXX_Size

func (m *ProtoRoute) XXX_Size() int

func (*ProtoRoute) XXX_Unmarshal

func (m *ProtoRoute) XXX_Unmarshal(b []byte) error

type ProtoStringCrumbCrumb

type ProtoStringCrumbCrumb struct {
	Name  string      `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"`
	Child *ProtoCrumb `protobuf:"bytes,2,opt,name=Child,proto3" json:"Child,omitempty"`
}

StringCrumbCrumb is a crumb that will generate the value of its child, then wrap it in a string

func (*ProtoStringCrumbCrumb) Descriptor

func (*ProtoStringCrumbCrumb) Descriptor() ([]byte, []int)

func (*ProtoStringCrumbCrumb) Equal

func (this *ProtoStringCrumbCrumb) Equal(that interface{}) bool

func (*ProtoStringCrumbCrumb) GetChild

func (m *ProtoStringCrumbCrumb) GetChild() *ProtoCrumb

func (*ProtoStringCrumbCrumb) GetName

func (m *ProtoStringCrumbCrumb) GetName() string

func (*ProtoStringCrumbCrumb) GoString

func (this *ProtoStringCrumbCrumb) GoString() string

func (*ProtoStringCrumbCrumb) Marshal

func (m *ProtoStringCrumbCrumb) Marshal() (dAtA []byte, err error)

func (*ProtoStringCrumbCrumb) MarshalTo

func (m *ProtoStringCrumbCrumb) MarshalTo(dAtA []byte) (int, error)

func (*ProtoStringCrumbCrumb) MarshalToSizedBuffer

func (m *ProtoStringCrumbCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProtoStringCrumbCrumb) ProtoMessage

func (*ProtoStringCrumbCrumb) ProtoMessage()

func (*ProtoStringCrumbCrumb) Reset

func (m *ProtoStringCrumbCrumb) Reset()

func (*ProtoStringCrumbCrumb) Size

func (m *ProtoStringCrumbCrumb) Size() (n int)

func (*ProtoStringCrumbCrumb) String

func (this *ProtoStringCrumbCrumb) String() string

func (*ProtoStringCrumbCrumb) Unmarshal

func (m *ProtoStringCrumbCrumb) Unmarshal(dAtA []byte) error

func (*ProtoStringCrumbCrumb) XXX_DiscardUnknown

func (m *ProtoStringCrumbCrumb) XXX_DiscardUnknown()

func (*ProtoStringCrumbCrumb) XXX_Marshal

func (m *ProtoStringCrumbCrumb) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ProtoStringCrumbCrumb) XXX_Merge

func (m *ProtoStringCrumbCrumb) XXX_Merge(src proto.Message)

func (*ProtoStringCrumbCrumb) XXX_Size

func (m *ProtoStringCrumbCrumb) XXX_Size() int

func (*ProtoStringCrumbCrumb) XXX_Unmarshal

func (m *ProtoStringCrumbCrumb) XXX_Unmarshal(b []byte) error

type RandomStringCrumb

type RandomStringCrumb struct {
	Name    string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"`
	Charset string `protobuf:"bytes,2,opt,name=Charset,proto3" json:"Charset,omitempty"`
	Length  int    `protobuf:"varint,3,opt,name=Length,proto3,casttype=int" json:"Length,omitempty"`
}

RandomStringCrumb will return a random string of specified length with the specified charset

func (*RandomStringCrumb) Descriptor

func (*RandomStringCrumb) Descriptor() ([]byte, []int)

func (*RandomStringCrumb) Equal

func (this *RandomStringCrumb) Equal(that interface{}) bool

func (*RandomStringCrumb) GetCharset

func (m *RandomStringCrumb) GetCharset() string

func (*RandomStringCrumb) GetLength

func (m *RandomStringCrumb) GetLength() int

func (*RandomStringCrumb) GetName

func (m *RandomStringCrumb) GetName() string

func (*RandomStringCrumb) GoString

func (this *RandomStringCrumb) GoString() string

func (RandomStringCrumb) Key

func (s RandomStringCrumb) Key() string

func (*RandomStringCrumb) Marshal

func (m *RandomStringCrumb) Marshal() (dAtA []byte, err error)

func (*RandomStringCrumb) MarshalTo

func (m *RandomStringCrumb) MarshalTo(dAtA []byte) (int, error)

func (*RandomStringCrumb) MarshalToSizedBuffer

func (m *RandomStringCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*RandomStringCrumb) ProtoMessage

func (*RandomStringCrumb) ProtoMessage()

func (RandomStringCrumb) RawValue

func (s RandomStringCrumb) RawValue(opts ...CrumbOption) interface{}

func (*RandomStringCrumb) Reset

func (m *RandomStringCrumb) Reset()

func (*RandomStringCrumb) Size

func (m *RandomStringCrumb) Size() (n int)

func (*RandomStringCrumb) String

func (this *RandomStringCrumb) String() string

func (*RandomStringCrumb) Unmarshal

func (m *RandomStringCrumb) Unmarshal(dAtA []byte) error

func (RandomStringCrumb) Value

func (s RandomStringCrumb) Value(...CrumbOption) string

Value(...CrumbOption) will return a random string value. For maximum compatability, this return a number

func (*RandomStringCrumb) XXX_DiscardUnknown

func (m *RandomStringCrumb) XXX_DiscardUnknown()

func (*RandomStringCrumb) XXX_Marshal

func (m *RandomStringCrumb) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*RandomStringCrumb) XXX_Merge

func (m *RandomStringCrumb) XXX_Merge(src proto.Message)

func (*RandomStringCrumb) XXX_Size

func (m *RandomStringCrumb) XXX_Size() int

func (*RandomStringCrumb) XXX_Unmarshal

func (m *RandomStringCrumb) XXX_Unmarshal(b []byte) error

type RegexStringCrumb

type RegexStringCrumb struct {
	Name  string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"`
	Regex string `protobuf:"bytes,2,opt,name=Regex,proto3" json:"Regex,omitempty"`
}

RegexStringCrumb will generate a string based off a provided regex

func (*RegexStringCrumb) Descriptor

func (*RegexStringCrumb) Descriptor() ([]byte, []int)

func (*RegexStringCrumb) Equal

func (this *RegexStringCrumb) Equal(that interface{}) bool

func (*RegexStringCrumb) GetName

func (m *RegexStringCrumb) GetName() string

func (*RegexStringCrumb) GetRegex

func (m *RegexStringCrumb) GetRegex() string

func (*RegexStringCrumb) GoString

func (this *RegexStringCrumb) GoString() string

func (RegexStringCrumb) Key

func (r RegexStringCrumb) Key() string

func (*RegexStringCrumb) Marshal

func (m *RegexStringCrumb) Marshal() (dAtA []byte, err error)

func (*RegexStringCrumb) MarshalTo

func (m *RegexStringCrumb) MarshalTo(dAtA []byte) (int, error)

func (*RegexStringCrumb) MarshalToSizedBuffer

func (m *RegexStringCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*RegexStringCrumb) ProtoMessage

func (*RegexStringCrumb) ProtoMessage()

func (RegexStringCrumb) RawValue

func (r RegexStringCrumb) RawValue(opts ...CrumbOption) interface{}

func (*RegexStringCrumb) Reset

func (m *RegexStringCrumb) Reset()

func (*RegexStringCrumb) Size

func (m *RegexStringCrumb) Size() (n int)

func (*RegexStringCrumb) String

func (this *RegexStringCrumb) String() string

func (*RegexStringCrumb) Unmarshal

func (m *RegexStringCrumb) Unmarshal(dAtA []byte) error

func (RegexStringCrumb) Validate

func (r RegexStringCrumb) Validate() error

func (RegexStringCrumb) Value

func (r RegexStringCrumb) Value(...CrumbOption) string

func (*RegexStringCrumb) XXX_DiscardUnknown

func (m *RegexStringCrumb) XXX_DiscardUnknown()

func (*RegexStringCrumb) XXX_Marshal

func (m *RegexStringCrumb) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*RegexStringCrumb) XXX_Merge

func (m *RegexStringCrumb) XXX_Merge(src proto.Message)

func (*RegexStringCrumb) XXX_Size

func (m *RegexStringCrumb) XXX_Size() int

func (*RegexStringCrumb) XXX_Unmarshal

func (m *RegexStringCrumb) XXX_Unmarshal(b []byte) error

type Route

type Route struct {
	TemplatePath string  // the raw path with template locations. This should begin with a '/'
	PathCrumbs   []Crumb // Pieces of the path

	Method       string
	HeaderCrumbs []Crumb // can be static or various types

	QueryCrumbs []Crumb

	BodyCrumbs []Crumb

	ContentType []ContentType
	// contains filtered or unexported fields
}

Route is a request to be made

func FromProtoRoutes

func FromProtoRoutes(in []ProtoRoute) (ret []Route)

func (Route) Body

func (r Route) Body(generate bool, contentType ContentType) []byte

Path returns a rendered body (with all the elements populated as a string) calling with generate=true will generate a new path using the crumbs provided. otherwise a cached version will be returned ContentType can be a specified contentType, or ContentTypeAny. If Any, this will attempt to deduce the content type based on the route data

func (Route) Headers

func (r Route) Headers(generate bool) []KV

func (Route) Path

func (r Route) Path(generate bool) (string, error)

Path returns a rendered path (with all the elements populated as a string) calling with generate=true will generate a new path using the crumbs provided. otherwise a cached version will be returned. we generate the path by substituting the values into the handlebars-esque template string provided

func (Route) ProtoRoute

func (p Route) ProtoRoute() ProtoRoute

func (Route) Query

func (r Route) Query(generate bool, extraParams ...KV) (string, error)

Query will generate the full query string not including the ? e.g. foo=bar&baz=boo Query Parameters will be pulled from the route QueryCrumbs We can add extra query params. These will be written first, and the route query params will override the provided

func (Route) QueryParams

func (r Route) QueryParams(generate bool) []KV

func (Route) ToKiterunner

func (r Route) ToKiterunner(extraHeaders ...KV) (*http.Route, error)

type StaticCrumb

type StaticCrumb struct {
	K string `protobuf:"bytes,1,opt,name=K,proto3" json:"K,omitempty"`
	V string `protobuf:"bytes,2,opt,name=V,proto3" json:"V,omitempty"`
}

StaticCrumb implements a crumb that renders a static value when called

func (*StaticCrumb) Descriptor

func (*StaticCrumb) Descriptor() ([]byte, []int)

func (*StaticCrumb) Equal

func (this *StaticCrumb) Equal(that interface{}) bool

func (*StaticCrumb) GetK

func (m *StaticCrumb) GetK() string

func (*StaticCrumb) GetV

func (m *StaticCrumb) GetV() string

func (*StaticCrumb) GoString

func (this *StaticCrumb) GoString() string

func (StaticCrumb) Key

func (s StaticCrumb) Key() string

func (*StaticCrumb) Marshal

func (m *StaticCrumb) Marshal() (dAtA []byte, err error)

func (*StaticCrumb) MarshalTo

func (m *StaticCrumb) MarshalTo(dAtA []byte) (int, error)

func (*StaticCrumb) MarshalToSizedBuffer

func (m *StaticCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*StaticCrumb) ProtoMessage

func (*StaticCrumb) ProtoMessage()

func (StaticCrumb) RawValue

func (s StaticCrumb) RawValue(...CrumbOption) interface{}

func (*StaticCrumb) Reset

func (m *StaticCrumb) Reset()

func (*StaticCrumb) Size

func (m *StaticCrumb) Size() (n int)

func (*StaticCrumb) String

func (this *StaticCrumb) String() string

func (*StaticCrumb) Unmarshal

func (m *StaticCrumb) Unmarshal(dAtA []byte) error

func (StaticCrumb) Value

func (s StaticCrumb) Value(...CrumbOption) string

func (*StaticCrumb) XXX_DiscardUnknown

func (m *StaticCrumb) XXX_DiscardUnknown()

func (*StaticCrumb) XXX_Marshal

func (m *StaticCrumb) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*StaticCrumb) XXX_Merge

func (m *StaticCrumb) XXX_Merge(src proto.Message)

func (*StaticCrumb) XXX_Size

func (m *StaticCrumb) XXX_Size() int

func (*StaticCrumb) XXX_Unmarshal

func (m *StaticCrumb) XXX_Unmarshal(b []byte) error

type StringCrumbCrumb

type StringCrumbCrumb struct {
	Name  string
	Child Crumb
}

func (StringCrumbCrumb) Key

func (s StringCrumbCrumb) Key() string

func (StringCrumbCrumb) RawValue

func (s StringCrumbCrumb) RawValue(option ...CrumbOption) interface{}

func (StringCrumbCrumb) Value

func (s StringCrumbCrumb) Value(option ...CrumbOption) string

type UUIDCrumb

type UUIDCrumb struct {
	Name string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"`
}

UUIDCrumb implements a crumb that renders a uuid when called

func (*UUIDCrumb) Descriptor

func (*UUIDCrumb) Descriptor() ([]byte, []int)

func (*UUIDCrumb) Equal

func (this *UUIDCrumb) Equal(that interface{}) bool

func (*UUIDCrumb) GetName

func (m *UUIDCrumb) GetName() string

func (*UUIDCrumb) GoString

func (this *UUIDCrumb) GoString() string

func (UUIDCrumb) Key

func (p UUIDCrumb) Key() string

func (*UUIDCrumb) Marshal

func (m *UUIDCrumb) Marshal() (dAtA []byte, err error)

func (*UUIDCrumb) MarshalTo

func (m *UUIDCrumb) MarshalTo(dAtA []byte) (int, error)

func (*UUIDCrumb) MarshalToSizedBuffer

func (m *UUIDCrumb) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*UUIDCrumb) ProtoMessage

func (*UUIDCrumb) ProtoMessage()

func (UUIDCrumb) RawValue

func (p UUIDCrumb) RawValue(...CrumbOption) interface{}

func (*UUIDCrumb) Reset

func (m *UUIDCrumb) Reset()

func (*UUIDCrumb) Size

func (m *UUIDCrumb) Size() (n int)

func (*UUIDCrumb) String

func (this *UUIDCrumb) String() string

func (*UUIDCrumb) Unmarshal

func (m *UUIDCrumb) Unmarshal(dAtA []byte) error

func (UUIDCrumb) Value

func (p UUIDCrumb) Value(...CrumbOption) string

func (*UUIDCrumb) XXX_DiscardUnknown

func (m *UUIDCrumb) XXX_DiscardUnknown()

func (*UUIDCrumb) XXX_Marshal

func (m *UUIDCrumb) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*UUIDCrumb) XXX_Merge

func (m *UUIDCrumb) XXX_Merge(src proto.Message)

func (*UUIDCrumb) XXX_Size

func (m *UUIDCrumb) XXX_Size() int

func (*UUIDCrumb) XXX_Unmarshal

func (m *UUIDCrumb) XXX_Unmarshal(b []byte) error

type UnwrapCrumber

type UnwrapCrumber interface {
	UnwrapCrumb() Crumb
}

type XMLer

type XMLer interface {
	AddChild(t etree.Token)
	SetText(string)
	CreateElement(tag string) *etree.Element
}

Jump to

Keyboard shortcuts

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