fabric8-wit: github.com/fabric8-services/fabric8-wit/space Index | Files | Directories

package space

import "github.com/fabric8-services/fabric8-wit/space"

Package space provides all the required functions to manage the definition of spaces.

Index

Package Files

doc.go space.go

Variables

var (
    SystemSpace = uuid.FromStringOrNil("2e0698d8-753e-4cef-bb7c-f027634824a2")
    SpaceType   = "spaces"
)

type GormRepository Uses

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

GormRepository implements SpaceRepository using gorm

func NewRepository Uses

func NewRepository(db *gorm.DB) *GormRepository

NewRepository creates a new space repo

func (*GormRepository) CheckExists Uses

func (r *GormRepository) CheckExists(ctx context.Context, id string) error

CheckExists returns nil if the given ID exists otherwise returns an error

func (*GormRepository) Create Uses

func (r *GormRepository) Create(ctx context.Context, space *Space) (*Space, error)

Create creates a new Space in the db returns BadParameterError or InternalError

func (*GormRepository) Delete Uses

func (r *GormRepository) Delete(ctx context.Context, ID uuid.UUID) error

Delete deletes the space with the given id returns NotFoundError or InternalError

func (*GormRepository) List Uses

func (r *GormRepository) List(ctx context.Context, start *int, limit *int) ([]Space, uint64, error)

List returns work item selected by the given criteria.Expression, starting with start (zero-based) and returning at most limit items

func (*GormRepository) Load Uses

func (r *GormRepository) Load(ctx context.Context, ID uuid.UUID) (*Space, error)

Load returns the space for the given id returns NotFoundError or InternalError

func (*GormRepository) LoadByOwner Uses

func (r *GormRepository) LoadByOwner(ctx context.Context, userID *uuid.UUID, start *int, limit *int) ([]Space, uint64, error)

func (*GormRepository) LoadByOwnerAndName Uses

func (r *GormRepository) LoadByOwnerAndName(ctx context.Context, userID *uuid.UUID, spaceName *string) (*Space, error)

func (*GormRepository) Save Uses

func (r *GormRepository) Save(ctx context.Context, p *Space) (*Space, error)

Save updates the given space in the db. Version must be the same as the one in the stored version returns NotFoundError, BadParameterError, VersionConflictError or InternalError

func (*GormRepository) Search Uses

func (r *GormRepository) Search(ctx context.Context, q *string, start *int, limit *int) ([]Space, uint64, error)

type Repository Uses

type Repository interface {
    repository.Exister
    Create(ctx context.Context, space *Space) (*Space, error)
    Save(ctx context.Context, space *Space) (*Space, error)
    Load(ctx context.Context, ID uuid.UUID) (*Space, error)
    Delete(ctx context.Context, ID uuid.UUID) error
    LoadByOwner(ctx context.Context, userID *uuid.UUID, start *int, length *int) ([]Space, uint64, error)
    LoadByOwnerAndName(ctx context.Context, userID *uuid.UUID, spaceName *string) (*Space, error)
    List(ctx context.Context, start *int, length *int) ([]Space, uint64, error)
    Search(ctx context.Context, q *string, start *int, length *int) ([]Space, uint64, error)
}

Repository encapsulate storage & retrieval of spaces

type Space Uses

type Space struct {
    gormsupport.Lifecycle
    ID          uuid.UUID
    Version     int
    Name        string
    Description string
    OwnerId     uuid.UUID `sql:"type:uuid"` // Belongs To Identity
}

Space represents a Space on the domain and db layer

func (Space) Equal Uses

func (p Space) Equal(u convert.Equaler) bool

Equal returns true if two Space objects are equal; otherwise false is returned.

func (Space) GetETagData Uses

func (p Space) GetETagData() []interface{}

GetETagData returns the field values to use to generate the ETag

func (Space) GetLastModified Uses

func (p Space) GetLastModified() time.Time

GetLastModified returns the last modification time

func (Space) TableName Uses

func (p Space) TableName() string

TableName overrides the table name settings in Gorm to force a specific table name in the database.

Directories

PathSynopsis
authzPackage authz contains the code that authorizes space operations

Package space imports 14 packages (graph) and is imported by 19 packages. Updated 2017-10-23. Refresh now. Tools for package owners.