services

package
v0.0.0-...-051ad16 Latest Latest
Warning

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

Go to latest
Published: Oct 27, 2019 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Overview

Package services contain service structs for managing underlying resources

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DomainDAO

type DomainDAO interface {
	// Create a new domain with the specified ID and metadata object
	Create(ctx context.Context, id string, domain *models.Domain) error
	// Get the domain indicated by the id
	Get(ctx context.Context, id string) (*models.Domain, error)
	// Update a domain's metadata
	Update(ctx context.Context, id string, domain *models.Domain) error
	// Delete a domain by it's id
	Delete(ctx context.Context, id string) error
}

DomainDAO describes the data-access-object interface for domains

type DomainService

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

DomainService provides domain-related services

var ActiveDomainService *DomainService

ActiveDomainService is set to the last created domain service

func NewDomainService

func NewDomainService(dao DomainDAO) *DomainService

NewDomainService returns a new instance of a domain service

func (*DomainService) Create

func (s *DomainService) Create(ctx context.Context, id string, domain *models.Domain) error

Create a new domain with the specified ID and metadata object

func (*DomainService) Delete

func (s *DomainService) Delete(ctx context.Context, id string) error

Delete a domain by it's id

func (*DomainService) Get

func (s *DomainService) Get(ctx context.Context, id string) (*models.Domain, error)

Get the domain indicated by the id

func (*DomainService) Update

func (s *DomainService) Update(ctx context.Context, id string, domain *models.Domain) error

Update a domain's metadata

type GroupDAO

type GroupDAO interface {
	// Create a new group with the specified ID and metadata object
	Create(ctx context.Context, id string, group *models.Group) error
	// CreateVersion creates a group version
	CreateVersion(ctx context.Context, group string, version string, meta *models.GroupVersion) error
	// CreateResourceDefinition registers a new versioned resource definition
	CreateResourceDefinition(ctx context.Context, group string, version string, def *models.ResourceDefinition) error

	// Get the group indicated by the id
	Get(ctx context.Context, id string) (*models.Group, error)
	// GetVersion retrives the metadata for a specific group version
	GetVersion(ctx context.Context, group string, version string) (*models.GroupVersion, error)
	// GetVersions returns all the versions in a group
	GetVersions(ctx context.Context, id string) ([]*models.GroupVersion, error)
	// GetResourceDefinition retrives the versioned resource definition
	GetResourceDefinition(ctx context.Context, group string, version string, name string) (*models.ResourceDefinition, error)

	// Update a group's metadata
	Update(ctx context.Context, id string, group *models.Group) error
	// UpdateVersion updates the metadata for a group version
	UpdateVersion(ctx context.Context, group string, version string, meta *models.GroupVersion) error
	// UpdateResourceDefinition updates a versioned resource definition
	UpdateResourceDefinition(ctx context.Context, group string, version string, name string, def *models.ResourceDefinition) error

	// Delete a group by it's id
	Delete(ctx context.Context, id string) error
	// DeleteVersion deletes a version from a group
	DeleteVersion(ctx context.Context, group string, version string) error
	// DeleteResourceDefinition deletes a resource definition
	DeleteResourceDefinition(ctx context.Context, group string, version string, name string) error
}

GroupDAO describes the data-access-object interface for groups

type GroupService

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

GroupService provices services for managing groups

var ActiveGroupService *GroupService

ActiveGroupService is set to the last created group service

func NewGroupService

func NewGroupService(dao GroupDAO) *GroupService

NewGroupService returns a new instance of the group service

func (*GroupService) Create

func (s *GroupService) Create(ctx context.Context, id string, domain *models.Group) error

Create a new group with the specified ID and metadata object

func (*GroupService) CreateResourceDefinition

func (s *GroupService) CreateResourceDefinition(ctx context.Context, group string, version string, def *models.ResourceDefinition) error

CreateResourceDefinition registers a new versioned resource definition

func (*GroupService) CreateVersion

func (s *GroupService) CreateVersion(ctx context.Context, group string, version string, meta *models.GroupVersion) error

CreateVersion creates a group version

func (*GroupService) Delete

func (s *GroupService) Delete(ctx context.Context, id string) error

Delete a group by it's id

func (*GroupService) DeleteResourceDefinition

func (s *GroupService) DeleteResourceDefinition(ctx context.Context, group string, version string, name string) error

DeleteResourceDefinition deletes a resource definition

func (*GroupService) DeleteVersion

func (s *GroupService) DeleteVersion(ctx context.Context, group string, version string) error

DeleteVersion deletes a version from a group

func (*GroupService) Get

func (s *GroupService) Get(ctx context.Context, id string) (*models.Group, error)

Get the group indicated by the id

func (*GroupService) GetResourceDefinition

func (s *GroupService) GetResourceDefinition(ctx context.Context, group string, version string, name string) (*models.ResourceDefinition, error)

GetResourceDefinition retrives the versioned resource definition

func (*GroupService) GetVersion

func (s *GroupService) GetVersion(ctx context.Context, id string, version string) (*models.GroupVersion, error)

GetVersion retrives the metadata for a specific group version

func (*GroupService) GetVersions

func (s *GroupService) GetVersions(ctx context.Context, id string) ([]*models.GroupVersion, error)

GetVersions returns all the versions in a group

func (*GroupService) Update

func (s *GroupService) Update(ctx context.Context, id string, domain *models.Group) error

Update a group's metadata

func (*GroupService) UpdateResourceDefinition

func (s *GroupService) UpdateResourceDefinition(ctx context.Context, group string, version string, name string, def *models.ResourceDefinition) error

UpdateResourceDefinition updates a versioned resource definition

func (*GroupService) UpdateVersion

func (s *GroupService) UpdateVersion(ctx context.Context, group string, version string, meta *models.GroupVersion) error

UpdateVersion updates the metadata for a group version

type ObjectService

type ObjectService struct{}

ObjectService provides services for concerting objects to their correct types

func (*ObjectService) Create

func (s *ObjectService) Create(ctx context.Context, obj *models.Object) error

Create a new object

type ResourceDAO

type ResourceDAO interface {
	// Create registers a new resource
	Create(ctx context.Context, resource *models.Resource) error
}

ResourceDAO describes the data-access-object interface for resources

type ResourceDefinitionDAO

type ResourceDefinitionDAO interface {
	// Create a new versioned resource definition
	Create(ctx context.Context, def *models.ResourceDefinition) error
	// Get the specified resource definition
	Get(ctx context.Context, group string, version string, name string) (*models.ResourceDefinition, error)
	// GetByKind looks up the resource definition by it's kind name
	GetByKind(ctx context.Context, group string, version string, kind string) (*models.ResourceDefinition, error)
	// Update the resource definition
	Update(ctx context.Context, def *models.ResourceDefinition) error
	// Delete a resource definition
	Delete(ctx context.Context, group string, version string, name string) error
}

ResourceDefinitionDAO describes the data-access-object interface for resource definitions

type ResourceDefinitionService

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

ResourceDefinitionService provides services for managing resource definitions

var ActiveResourceDefinitionService *ResourceDefinitionService

ActiveResourceDefinitionService is set to the last created resource definition service

func NewResourceDefinitionService

func NewResourceDefinitionService(dao ResourceDefinitionDAO) *ResourceDefinitionService

NewResourceDefinitionService returns a new instance of a resource definition service

func (*ResourceDefinitionService) Create

Create a new versioned resource definition

func (*ResourceDefinitionService) Delete

func (s *ResourceDefinitionService) Delete(ctx context.Context, group string, version string, name string) error

Delete a resource definition

func (*ResourceDefinitionService) Get

Get the specified resource definition

func (*ResourceDefinitionService) GetByKind

func (s *ResourceDefinitionService) GetByKind(ctx context.Context, group string, version string, kind string) (*models.ResourceDefinition, error)

GetByKind looks up the resource definition by it's kind name

func (*ResourceDefinitionService) Update

Update the resource definition

type ResourceService

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

ResourceService provides services for managing resources

var ActiveResourceService *ResourceService

ActiveResourceService is set to the last created resource service

func NewResourceService

func NewResourceService(dao ResourceDAO) *ResourceService

NewResourceService creates a new instance of the resource service

func (*ResourceService) Create

func (s *ResourceService) Create(ctx context.Context, resource *models.Resource) error

Create registers a new resource

Source Files

  • docs.go
  • domains.go
  • group.go
  • object.go
  • resource_definition.go
  • resources.go

Jump to

Keyboard shortcuts

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