base

package
v0.0.0-...-5004fd2 Latest Latest
Warning

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

Go to latest
Published: Jan 19, 2024 License: MIT Imports: 27 Imported by: 0

Documentation

Overview

Package base provides primitives to interact with the openapi HTTP API.

Code generated by github.com/deepmap/oapi-codegen/v2 version v2.0.0 DO NOT EDIT.

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrAzCosmosDocNotFound    = errors.New("az cosmos doc not found")
	ErrAzKeyVaultItemNotFound = errors.New("az key vault key not found")

	ErrResponseStatusBadRequest      = httpResposneError(http.StatusBadRequest, "bad request")
	ErrResposneStatusUnauthorized    = httpResposneError(http.StatusUnauthorized, "unauthorized")
	ErrResponseStatusForbidden       = httpResposneError(http.StatusForbidden, "forbidden")
	ErrResponseStatusNotFound        = httpResposneError(http.StatusNotFound, "not found")
	ErrResponseStatusTooManyRequests = httpResposneError(http.StatusTooManyRequests, "conflict")
)

Functions

func AddPeriod deprecated

func AddPeriod(t time.Time, p Period) time.Time

Deprecated: use caldur.CalendarDuration instead.

func ExtractGraphODataErrorCode

func ExtractGraphODataErrorCode(err error) (errorCode *string, odErr *odataerrors.ODataError, ok bool)

func HandleAzCosmosError

func HandleAzCosmosError(err error) error

func HandleAzKeyVaultError

func HandleAzKeyVaultError(err error) error

func HandleResponseError

func HandleResponseError(next echo.HandlerFunc) echo.HandlerFunc

func NewAzCosmosCRUDDocService

func NewAzCosmosCRUDDocService(client *azcosmos.ContainerClient) *azcosmosContainerCRUDDocService

func ParseIdentifier

func ParseIdentifier(s string) (i identifier)

func RespondDiagnostics

func RespondDiagnostics(c ctx.RequestContext, info models.ServiceRuntimeInfo) error

func RespondHealthCheck

func RespondHealthCheck(c echo.Context) error

func StringIdentifier

func StringIdentifier(id string) identifier

Types

type AzCosmosCRUDDocService

type AzCosmosCRUDDocService interface {
	Create(context.Context, BaseDocument, *azcosmos.ItemOptions) error
	Upsert(context.Context, BaseDocument, *azcosmos.ItemOptions) error
	Read(c context.Context, docFullIdentifier DocLocator, dst BaseDocument, opts *azcosmos.ItemOptions) error
	Patch(context.Context, BaseDocument, azcosmos.PatchOperations, *azcosmos.ItemOptions) error
	NewQueryItemsPager(query string, storageNamespaceID DocNamespacePartitionKey, o *azcosmos.QueryOptions) *azruntime.Pager[azcosmos.QueryItemsResponse]

	SoftDelete(c context.Context, doc BaseDocument, opts *azcosmos.ItemOptions) error
	Delete(c context.Context, doc BaseDocument, opts *azcosmos.ItemOptions) error
	// contains filtered or unexported methods
}

func GetAzCosmosCRUDService

func GetAzCosmosCRUDService(c context.Context) AzCosmosCRUDDocService

type AzureRoleAssignment

type AzureRoleAssignment struct {
	ID               *string `json:"id,omitempty"`
	Name             *string `json:"name,omitempty"`
	PrincipalId      *string `json:"principalId,omitempty"`
	RoleDefinitionId *string `json:"roleDefinitionId,omitempty"`
}

AzureRoleAssignment defines model for AzureRoleAssignment.

type AzureRoleAssignmentResponse

type AzureRoleAssignmentResponse = AzureRoleAssignment

AzureRoleAssignmentResponse defines model for AzureRoleAssignmentResponse.

type Base64RawURLEncodedBytes

type Base64RawURLEncodedBytes = cloudkey.Base64RawURLEncodableBytes

Base64RawURLEncodedBytes defines model for Base64RawURLEncodedBytes.

type BaseDoc

type BaseDoc struct {
	PartitionKey DocNamespacePartitionKey `json:"namespaceId"`
	ID           ID                       `json:"id"`
	Timestamp    *jwt.NumericDate         `json:"_ts,omitempty"`
	ETag         *azcore.ETag             `json:"_etag,omitempty"`
	Deleted      *time.Time               `json:"deleted,omitempty"`
	UpdatedBy    string                   `json:"updatedBy,omitempty"`
}

func (*BaseDoc) GetID

func (d *BaseDoc) GetID() ID

GetID implements BaseDocument.

func (*BaseDoc) GetStorageFullIdentifier

func (d *BaseDoc) GetStorageFullIdentifier() DocLocator

GetPersistedSLocator implements CRUDDoc.

func (*BaseDoc) GetStorageNamespaceID

func (d *BaseDoc) GetStorageNamespaceID() DocNamespacePartitionKey

func (*BaseDoc) GetUpdatedBy

func (d *BaseDoc) GetUpdatedBy() string

GetUpdatedBy implements CRUDDoc.

func (*BaseDoc) Init

func (d *BaseDoc) Init(nsKind NamespaceKind, nsID ID, rKind ResourceKind, rID ID)

func (*BaseDoc) PopulateModelRef

func (d *BaseDoc) PopulateModelRef(m *ResourceReference)

PopulateModelRef implements ModelRefPopulater.

type BaseDocument

type BaseDocument interface {
	GetStorageNamespaceID() DocNamespacePartitionKey
	GetID() ID
	GetStorageFullIdentifier() DocLocator
	GetUpdatedBy() string
	// contains filtered or unexported methods
}

type BaseServer

type BaseServer struct {
	common.CommonServer
}

func NewBaseServer

func NewBaseServer(server common.CommonServer) *BaseServer

NewBaseServer creates a new base server.

func (*BaseServer) GetDiagnostics

func (s *BaseServer) GetDiagnostics(ec echo.Context) error

GetDiagnostics implements ServerInterface.

func (*BaseServer) GetHealth

func (*BaseServer) GetHealth(ctx echo.Context) error

GetHealth implements ServerInterface.

type ContextKey

type ContextKey int
const (
	AzCosmosCRUDDocServiceContextKey ContextKey = iota
)

type CosmosQueryBuilder

type CosmosQueryBuilder struct {
	Columns           []string
	WhereClauses      []string
	OrderBy           string
	Parameters        []azcosmos.QueryParameter
	OffsetLimitClause string
}

func NewDefaultCosmoQueryBuilder

func NewDefaultCosmoQueryBuilder() *CosmosQueryBuilder

func (*CosmosQueryBuilder) BuildQuery

func (b *CosmosQueryBuilder) BuildQuery() (string, []azcosmos.QueryParameter)

func (*CosmosQueryBuilder) WithExtraColumns

func (b *CosmosQueryBuilder) WithExtraColumns(columns ...string) *CosmosQueryBuilder

func (*CosmosQueryBuilder) WithOffsetLimit

func (b *CosmosQueryBuilder) WithOffsetLimit(offset uint, limit uint) *CosmosQueryBuilder

func (*CosmosQueryBuilder) WithOrderBy

func (b *CosmosQueryBuilder) WithOrderBy(clause string) *CosmosQueryBuilder

func (*CosmosQueryBuilder) WithWhereClauses

func (b *CosmosQueryBuilder) WithWhereClauses(clauses ...string) *CosmosQueryBuilder

type DocLocator

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

func NewDocLocator

func NewDocLocator(nsKind NamespaceKind, nsID ID, rKind ResourceKind, rID ID) DocLocator

func (DocLocator) ID

func (i DocLocator) ID() ID

func (DocLocator) MarshalText

func (i DocLocator) MarshalText() (text []byte, err error)

MarshalText implements encoding.TextMarshaler.

func (DocLocator) NamespaceID

func (i DocLocator) NamespaceID() ID

func (DocLocator) NamespaceKind

func (i DocLocator) NamespaceKind() NamespaceKind

func (DocLocator) PartitionKey

func (i DocLocator) PartitionKey() DocNamespacePartitionKey

func (DocLocator) String

func (i DocLocator) String() string

func (*DocLocator) UnmarshalText

func (p *DocLocator) UnmarshalText(text []byte) error

UnmarshalText implements encoding.TextUnmarshaler.

type DocNamespacePartitionKey

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

func NewDocNamespacePartitionKey

func NewDocNamespacePartitionKey(nsKind NamespaceKind, nsID ID, rKind ResourceKind) DocNamespacePartitionKey

func (DocNamespacePartitionKey) MarshalText

func (i DocNamespacePartitionKey) MarshalText() (text []byte, err error)

MarshalText implements encoding.TextMarshaler.

func (DocNamespacePartitionKey) String

func (i DocNamespacePartitionKey) String() string

func (*DocNamespacePartitionKey) UnmarshalText

func (p *DocNamespacePartitionKey) UnmarshalText(text []byte) error

UnmarshalText implements encoding.TextUnmarshaler.

type DocPager

type DocPager[D QueryDocument] struct {
	// contains filtered or unexported fields
}

func NewQueryDocPager

func NewQueryDocPager[D QueryDocument](c context.Context, queryBuilder *CosmosQueryBuilder, storageNamespaceID DocNamespacePartitionKey) *DocPager[D]

func (*DocPager[D]) More

func (p *DocPager[D]) More() bool

func (*DocPager[D]) NextPage

func (p *DocPager[D]) NextPage() (items []D, err error)

type HexDigest

type HexDigest []byte

func (HexDigest) MarshalText

func (s HexDigest) MarshalText() (text []byte, err error)

MarshalText implements encoding.TextMarshaler.

func (HexDigest) String

func (s HexDigest) String() string

func (*HexDigest) UnmarshalText

func (s *HexDigest) UnmarshalText(text []byte) error

UnmarshalText implements encoding.TextUnmarshaler.

type HttpResponseError

type HttpResponseError struct {
	StatusCode int
	// contains filtered or unexported fields
}

type ID

type ID string

func IDFromString

func IDFromString(s string) ID

func IDFromUUID

func IDFromUUID(u UUID) ID

func ParseID

func ParseID(s string) (id ID)

func (ID) AsUUID

func (id ID) AsUUID() (UUID, bool)

func (ID) MarshalText

func (id ID) MarshalText() (text []byte, err error)

MarshalText implements encoding.TextMarshaler.

func (ID) UUID

func (id ID) UUID() UUID

func (*ID) UnmarshalText

func (idPtr *ID) UnmarshalText(text []byte) error

UnmarshalText implements encoding.TextUnmarshaler.

type Id

type Id = ID

Id defines model for Id.

type ListAzureRoleAssignmentsResponse

type ListAzureRoleAssignmentsResponse = []AzureRoleAssignment

ListAzureRoleAssignmentsResponse defines model for ListAzureRoleAssignmentsResponse.

type ModelPopulater

type ModelPopulater[M any] interface {
	PopulateModel(*M)
}

type ModelRefPopulater

type ModelRefPopulater[M any] interface {
	PopulateModelRef(*M)
}

type NamespaceConfigName

type NamespaceConfigName string
const (
	CertRuleNameIssuer                  NamespaceConfigName = "issuer"
	CertRuleNameMsEntraClientCredential NamespaceConfigName = "ms-entra-client-credential"

	AgentConfigNameServer NamespaceConfigName = "agent-server"
	AgentConfigNameRadius NamespaceConfigName = "radius"
)

type NamespaceIdParameter

type NamespaceIdParameter = Id

NamespaceIdParameter defines model for NamespaceIdParameter.

type NamespaceIdentifier

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

func NewNamespaceIdentifier

func NewNamespaceIdentifier(nsKind NamespaceKind, nsID ID) NamespaceIdentifier

func (NamespaceIdentifier) ID

func (i NamespaceIdentifier) ID() ID

func (NamespaceIdentifier) Kind

func (NamespaceIdentifier) MarshalText

func (i NamespaceIdentifier) MarshalText() (text []byte, err error)

MarshalText implements encoding.TextMarshaler.

func (NamespaceIdentifier) String

func (i NamespaceIdentifier) String() string

func (*NamespaceIdentifier) UnmarshalText

func (p *NamespaceIdentifier) UnmarshalText(text []byte) error

UnmarshalText implements encoding.TextUnmarshaler.

type NamespaceKind

type NamespaceKind string

NamespaceKind defines model for NamespaceKind.

const (
	NamespaceKindGroup            NamespaceKind = "group"
	NamespaceKindIntermediateCA   NamespaceKind = "int-ca"
	NamespaceKindProfile          NamespaceKind = "profile"
	NamespaceKindRootCA           NamespaceKind = "root-ca"
	NamespaceKindServicePrincipal NamespaceKind = "service-principal"
	NamespaceKindSystem           NamespaceKind = "sys"
	NamespaceKindUser             NamespaceKind = "user"
)

Defines values for NamespaceKind.

type NamespaceKindParameter

type NamespaceKindParameter = NamespaceKind

NamespaceKindParameter defines model for NamespaceKindParameter.

type NumericDate

type NumericDate = jwt.NumericDate

NumericDate defines model for NumericDate.

type Period

type Period = periodImpl

Period defines model for Period.

type QueryBaseDoc

type QueryBaseDoc struct {
	ID        ID              `json:"id"`
	Timestamp jwt.NumericDate `json:"_ts"`
	Deleted   *time.Time      `json:"deleted"`
}

func (*QueryBaseDoc) GetID

func (d *QueryBaseDoc) GetID() ID

GetID implements QueryDocument.

func (*QueryBaseDoc) PopulateModelRef

func (d *QueryBaseDoc) PopulateModelRef(r *ResourceReference)

PopulateModelRef implements ModelRefPopulater.

type QueryDocument

type QueryDocument interface {
	GetID() ID
}

type ResourceIdParameter

type ResourceIdParameter = Id

ResourceIdParameter defines model for ResourceIdParameter.

type ResourceKind

type ResourceKind string

ResourceKind defines model for ResourceKind.

const (
	ProfileResourceKindGroup            ResourceKind = "group"
	ProfileResourceKindIntermediateCA   ResourceKind = "int-ca"
	ProfileResourceKindManagedApp       ResourceKind = "managed-app"
	ProfileResourceKindRootCA           ResourceKind = "root-ca"
	ProfileResourceKindServicePrincipal ResourceKind = "service-principal"
	ProfileResourceKindUser             ResourceKind = "user"
	ResourceKindAgentInstance           ResourceKind = "agent-instance"
	ResourceKindCert                    ResourceKind = "cert"
	ResourceKindCertPolicy              ResourceKind = "cert-policy"
	ResourceKindKey                     ResourceKind = "key"
	ResourceKindKeyPolicy               ResourceKind = "key-policy"
	ResourceKindNamespaceConfig         ResourceKind = "ns-config"
	ResourceKindSecret                  ResourceKind = "secret"
	ResourceKindSecretPolicy            ResourceKind = "secret-policy"
)

Defines values for ResourceKind.

type ResourceLocator

type ResourceLocator = DocLocator

ResourceLocator defines model for ResourceLocator.

type ResourceReference

type ResourceReference struct {
	Deleted   *time.Time `json:"deleted,omitempty"`
	ID        ID         `json:"id"`
	Updated   time.Time  `json:"updated"`
	UpdatedBy *string    `json:"updatedBy,omitempty"`
}

ResourceReference defines model for ResourceReference.

type ResourceReferenceListResponse

type ResourceReferenceListResponse = []ResourceReference

ResourceReferenceListResponse defines model for ResourceReferenceListResponse.

type UUID

type UUID = uuid.UUID

Jump to

Keyboard shortcuts

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