projections

package
v0.7.1 Latest Latest
Warning

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

Go to latest
Published: Feb 9, 2024 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Cluster

type Cluster struct {
	DomainProjection
	*projections.Cluster
}

func NewClusterProjection

func NewClusterProjection(id uuid.UUID) *Cluster

func (*Cluster) ID

func (p *Cluster) ID() uuid.UUID

ID implements the ID method of the Projection interface.

func (*Cluster) Proto

func (p *Cluster) Proto() *projections.Cluster

Proto gets the underlying proto representation.

type DomainProjection

type DomainProjection interface {
	LifecycleMetadata
	ID() uuid.UUID
	Version() uint64
	IncrementVersion()
	GetLifecycleMetadata() *projections.LifecycleMetadata
}

func NewDomainProjection

func NewDomainProjection() DomainProjection

type LifecycleMetadata added in v0.4.0

type LifecycleMetadata interface {
	// GetCreated returns when the projection has been created
	GetCreated() *timestamppb.Timestamp
	// GetCreatedById returns by whom the projection has been created
	GetCreatedById() string
	// GetLastModified returns when the projection has been last modified
	GetLastModified() *timestamppb.Timestamp
	// GetLastModifiedById returns by whom the projection has been last modified
	GetLastModifiedById() string
	// GetDeletedById returns ry whom the projection has been deleted
	GetDeletedById() string
	// GetDeleted returns when the projection has been deleted
	GetDeleted() *timestamppb.Timestamp
	// IsDeleted returns if the projection has been deleted
	IsDeleted() bool
}

type Tenant

type Tenant struct {
	DomainProjection
	*projections.Tenant
}

func NewTenantProjection

func NewTenantProjection(id uuid.UUID) *Tenant

func (*Tenant) ID

func (p *Tenant) ID() uuid.UUID

ID implements the ID method of the Aggregate interface.

func (*Tenant) Proto

func (p *Tenant) Proto() *projections.Tenant

Proto gets the underlying proto representation.

type TenantClusterBinding added in v0.3.0

type TenantClusterBinding struct {
	DomainProjection
	*projections.TenantClusterBinding
}

func NewTenantClusterBindingProjection added in v0.3.0

func NewTenantClusterBindingProjection(id uuid.UUID) *TenantClusterBinding

func (*TenantClusterBinding) ID added in v0.3.0

func (p *TenantClusterBinding) ID() uuid.UUID

ID implements the ID method of the Aggregate interface.

func (*TenantClusterBinding) Proto added in v0.3.0

Proto gets the underlying proto representation.

type TenantUser

type TenantUser struct {
	DomainProjection
	*projections.TenantUser
}

func NewTenantUserProjection

func NewTenantUserProjection(tenantId uuid.UUID, user *User, rolebindings []*UserRoleBinding) *TenantUser

func (*TenantUser) ID

func (p *TenantUser) ID() uuid.UUID

ID implements the ID method of the Aggregate interface.

func (*TenantUser) Proto

func (p *TenantUser) Proto() *projections.TenantUser

Proto gets the underlying proto representation.

type User

type User struct {
	DomainProjection
	*projections.User
}

func NewUserProjection

func NewUserProjection(id uuid.UUID) *User

func (*User) ID

func (p *User) ID() uuid.UUID

ID implements the ID method of the Aggregate interface.

func (*User) Proto

func (p *User) Proto() *projections.User

Proto gets the underlying proto representation.

type UserRoleBinding

type UserRoleBinding struct {
	DomainProjection
	*projections.UserRoleBinding
}

func NewUserRoleBinding

func NewUserRoleBinding(id uuid.UUID) *UserRoleBinding

func (*UserRoleBinding) ID

func (p *UserRoleBinding) ID() uuid.UUID

ID implements the ID method of the Aggregate interface.

func (*UserRoleBinding) Proto

Proto gets the underlying proto representation.

Jump to

Keyboard shortcuts

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