v0.2.1 Latest Latest

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

Go to latest
Published: Jan 28, 2015 License: Apache-2.0 Imports: 16 Imported by: 0



Package service provides Registry interface and it's RESTStorage implementation for storing Service api objects.



This section is empty.


This section is empty.


This section is empty.


type REST

type REST struct {
	// contains filtered or unexported fields

REST adapts a service registry into apiserver's RESTStorage model.

func NewREST

func NewREST(registry Registry, cloud cloudprovider.Interface, machines minion.Registry, portalNet *net.IPNet) *REST

NewREST returns a new REST.

func (*REST) Create

func (rs *REST) Create(ctx api.Context, obj runtime.Object) (<-chan apiserver.RESTResult, error)

func (*REST) Delete

func (rs *REST) Delete(ctx api.Context, id string) (<-chan apiserver.RESTResult, error)

func (*REST) Get

func (rs *REST) Get(ctx api.Context, id string) (runtime.Object, error)

func (*REST) List

func (rs *REST) List(ctx api.Context, label, field labels.Selector) (runtime.Object, error)

TODO: implement field selector?

func (*REST) New

func (*REST) New() runtime.Object

func (*REST) NewList added in v0.2.1

func (*REST) NewList() runtime.Object

func (*REST) ResourceLocation

func (rs *REST) ResourceLocation(ctx api.Context, id string) (string, error)

ResourceLocation returns a URL to which one can send traffic for the specified service.

func (*REST) Update

func (rs *REST) Update(ctx api.Context, obj runtime.Object) (<-chan apiserver.RESTResult, error)

func (*REST) Watch

func (rs *REST) Watch(ctx api.Context, label, field labels.Selector, resourceVersion string) (watch.Interface, error)

Watch returns Services events via a watch.Interface. It implements apiserver.ResourceWatcher.

type Registry

type Registry interface {
	ListServices(ctx api.Context) (*api.ServiceList, error)
	CreateService(ctx api.Context, svc *api.Service) error
	GetService(ctx api.Context, name string) (*api.Service, error)
	DeleteService(ctx api.Context, name string) error
	UpdateService(ctx api.Context, svc *api.Service) error
	WatchServices(ctx api.Context, labels, fields labels.Selector, resourceVersion string) (watch.Interface, error)

	// TODO: endpoints and their implementation should be separated, setting endpoints should be
	// supported via the API, and the endpoints-controller should use the API to update endpoints.

Registry is an interface for things that know how to store services.

Jump to

Keyboard shortcuts

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