Help us shape the future of Go! Take the 2026 Go Developer Survey

eskipfile

package
v0.9.35 Latest Latest
Warning

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

Go to latest
Published: May 12, 2017 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Overview

Package eskipfile implements a DataClient for reading the skipper route definitions from an eskip formatted file when opened.

(See the DataClient interface in the skipper/routing package and the eskip format in the skipper/eskip package.)

Example
package main

import (
	"github.com/zalando/skipper/eskipfile"
	"github.com/zalando/skipper/proxy"
	"github.com/zalando/skipper/routing"
)

func main() {
	// open file with a routing table:
	dataClient, err := eskipfile.Open("/some/path/to/routing-table.eskip")
	if err != nil {
		// log.Fatal(err)
		return
	}

	// create routing object:
	rt := routing.New(routing.Options{
		DataClients: []routing.DataClient{dataClient}})
	defer rt.Close()

	// create http.Handler:
	p := proxy.New(rt, proxy.OptionsNone)
	defer p.Close()
}

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

A Client contains the route definitions from an eskip file.

func Open

func Open(path string) (*Client, error)

Opens an eskip file and parses it, returning a DataClient implementation. If reading or parsing the file fails, returns an error.

func (Client) LoadAll

func (c Client) LoadAll() ([]*eskip.Route, error)

Returns the parsed route definitions found in the file.

func (Client) LoadAndParseAll

func (c Client) LoadAndParseAll() (routeInfos []*eskip.RouteInfo, err error)

func (Client) LoadUpdate

func (c Client) LoadUpdate() ([]*eskip.Route, []string, error)

Noop. The current implementation doesn't support watching the eskip file for changes.

Jump to

Keyboard shortcuts

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