Documentation
¶
Index ¶
- func Create[TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain]](ctx corectx.Context, param CreateParam[TDomain, TDomainPtr]) (_ *dyn.OpResult[TDomain], err error)
- func CreateBulk[TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain], ...](ctx corectx.Context, param CreateBulkParam[TDomain, TDomainPtr, TDomainGetter]) (*dyn.OpResult[[]TDomain], error)
- func DeleteOne(ctx corectx.Context, param DeleteOneParam) (result *dyn.OpResult[dyn.MutateResultData], err error)
- func ExecInTranx[TResult any](ctx corectx.Context, repo dyn.DynamicModelRepository, ...) (result *TResult, err error)
- func Exists(ctx corectx.Context, param ExistsParam) (result *dyn.OpResult[dyn.ExistsResultData], err error)
- func GetOne[TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain]](ctx corectx.Context, param GetOneParam) (_ *dyn.OpResult[TDomain], err error)
- func GetOneEnabled[TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain]](ctx corectx.Context, param GetOneParam) (_ *dyn.OpResult[TDomain], err error)
- func ManageM2m(ctx corectx.Context, param ManageM2mParam) (result *dyn.OpResult[dyn.MutateResultData], err error)
- func Search[TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain]](ctx corectx.Context, param SearchParam) (_ *dyn.OpResult[dyn.PagedResultData[TDomain]], err error)
- func SearchAll[TDomain any](...) (*dyn.OpResult[[]TDomain], error)
- func SetIsArchived(ctx corectx.Context, dbRepoGetter dyn.DynamicModelRepository, ...) (_ *dyn.OpResult[dyn.MutateResultData], err error)
- func UiGetOne[TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain]](ctx corectx.Context, param UiGetOneParam[TDomain, TDomainPtr]) (_ *dyn.OpResult[dyn.SingleResultData[TDomain]], err error)
- func UiSearch[TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain]](ctx corectx.Context, param UiSearchParam[TDomain, TDomainPtr]) (_ *dyn.OpResult[dyn.PagedResultData[TDomain]], err error)
- func Update[TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain]](ctx corectx.Context, param UpdateParam[TDomain, TDomainPtr]) (_ *dyn.OpResult[dyn.MutateResultData], err error)
- func UpdateBulk[TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain]](ctx corectx.Context, param UpdateBulkParam[TDomain, TDomainPtr, TDomainPtr]) (*dyn.OpResult[dyn.MutateResultData], error)
- func UpdateRegardless(ctx corectx.Context, param UpdateRegardlessParam) (_ *dyn.OpResult[dyn.MutateResultData], err error)
- type AfterValidationSuccessFn
- type BeforeValidationFn
- type CreateBulkParam
- type CreateParam
- type CreateValidateExtraFn
- type DeleteOneParam
- type DeleteValidateExtraFn
- type ExistsParam
- type GetOneFn
- type GetOneParam
- type ManageM2mParam
- type SearchFn
- type SearchParam
- type ServiceCreateOptions
- type ServiceDeleteOptions
- type ServiceSearchOptions
- type ServiceUpdateOptions
- type UiGetOneParam
- type UiSearchParam
- type UpdateBulkParam
- type UpdateParam
- type UpdateRegardlessParam
- type UpdateValidateExtraFn
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Create ¶
func Create[ TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain], ]( ctx corectx.Context, param CreateParam[TDomain, TDomainPtr], ) (_ *dyn.OpResult[TDomain], err error)
func CreateBulk ¶
func CreateBulk[ TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain], TDomainGetter dmodel.DynamicModelGetter, ]( ctx corectx.Context, param CreateBulkParam[TDomain, TDomainPtr, TDomainGetter], ) (*dyn.OpResult[[]TDomain], error)
func DeleteOne ¶
func DeleteOne(ctx corectx.Context, param DeleteOneParam) (result *dyn.OpResult[dyn.MutateResultData], err error)
func ExecInTranx ¶
func Exists ¶
func Exists(ctx corectx.Context, param ExistsParam) (result *dyn.OpResult[dyn.ExistsResultData], err error)
func GetOne ¶
func GetOne[ TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain], ]( ctx corectx.Context, param GetOneParam, ) (_ *dyn.OpResult[TDomain], err error)
func GetOneEnabled ¶
func GetOneEnabled[ TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain], ]( ctx corectx.Context, param GetOneParam, ) (_ *dyn.OpResult[TDomain], err error)
func ManageM2m ¶
func ManageM2m(ctx corectx.Context, param ManageM2mParam) ( result *dyn.OpResult[dyn.MutateResultData], err error, )
func Search ¶
func Search[TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain]]( ctx corectx.Context, param SearchParam, ) (_ *dyn.OpResult[dyn.PagedResultData[TDomain]], err error)
func SetIsArchived ¶
func SetIsArchived( ctx corectx.Context, dbRepoGetter dyn.DynamicModelRepository, cmd dyn.SetIsArchivedCommand, ) (_ *dyn.OpResult[dyn.MutateResultData], err error)
func UiGetOne ¶
func UiGetOne[ TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain], ]( ctx corectx.Context, param UiGetOneParam[TDomain, TDomainPtr], ) (_ *dyn.OpResult[dyn.SingleResultData[TDomain]], err error)
func UiSearch ¶
func UiSearch[TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain]]( ctx corectx.Context, param UiSearchParam[TDomain, TDomainPtr], ) (_ *dyn.OpResult[dyn.PagedResultData[TDomain]], err error)
func Update ¶
func Update[ TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain], ]( ctx corectx.Context, param UpdateParam[TDomain, TDomainPtr], ) (_ *dyn.OpResult[dyn.MutateResultData], err error)
func UpdateBulk ¶
func UpdateBulk[ TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain], ]( ctx corectx.Context, param UpdateBulkParam[TDomain, TDomainPtr, TDomainPtr], ) (*dyn.OpResult[dyn.MutateResultData], error)
func UpdateRegardless ¶
func UpdateRegardless( ctx corectx.Context, param UpdateRegardlessParam, ) (_ *dyn.OpResult[dyn.MutateResultData], err error)
UpdateRegardless updates a record without validation, but it still checks for existence and etag matching. Use this function with caution. Must do your own validation before calling this function.
Types ¶
type BeforeValidationFn ¶
type CreateBulkParam ¶
type CreateBulkParam[ TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain], TDomainGetter dmodel.DynamicModelGetter, ] struct { Action string BaseRepoGetter dyn.DynamicModelRepository Data []TDomainGetter // Optional function to do some processing on the domain model before validation. BeforeValidation BeforeValidationFn[TDomainPtr] // Optional function to do some processing on the domain model after validation. AfterValidationSuccess AfterValidationSuccessFn[TDomainPtr] // Optional function for advanced validation (business rules) in addition to built-in schema validation. ValidateExtra CreateValidateExtraFn[TDomainPtr] }
type CreateParam ¶
type CreateParam[ TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain], ] struct { // Action name for logging and error messages Action string BaseRepoGetter dyn.DynamicModelRepository // Data to create Data dmodel.DynamicModelGetter // Optional function to do some processing on the domain model before validation. BeforeValidation BeforeValidationFn[TDomainPtr] // Optional function to do some processing on the domain model after validation. AfterValidationSuccess AfterValidationSuccessFn[TDomainPtr] // Optional function for advanced validation (business rules) in addition to built-in schema validation. ValidateExtra CreateValidateExtraFn[TDomainPtr] }
type CreateValidateExtraFn ¶
type DeleteOneParam ¶
type DeleteOneParam struct {
Action string
DbRepoGetter dyn.DynamicModelRepository
Cmd dyn.DeleteOneCommand
ValidateExtra DeleteValidateExtraFn
AfterValidationSuccess AfterValidationSuccessFn[dyn.DeleteOneCommand]
}
type DeleteValidateExtraFn ¶
type DeleteValidateExtraFn func(ctx corectx.Context, keyFields dmodel.DynamicFields, vErrs *ft.ClientErrors) error
type ExistsParam ¶
type ExistsParam struct {
Action string
DbRepoGetter dyn.DynamicModelRepository
Query dyn.ExistsQuery
}
type GetOneParam ¶
type GetOneParam struct {
Action string
DbRepoGetter dyn.DynamicModelRepository
Query dyn.GetOneQuery
AfterValidationSuccess AfterValidationSuccessFn[dyn.GetOneQuery]
}
type ManageM2mParam ¶
type ManageM2mParam struct {
Action string
DbRepoGetter dyn.DynamicModelRepository
DestSchemaName string
SrcId model.Id
SrcIdFieldForError string
AssociatedIds datastructure.Set[model.Id]
DisassociatedIds datastructure.Set[model.Id]
BeforeInsert func(ctx corectx.Context, dbRecords []dmodel.DynamicFields) error
}
type SearchFn ¶
type SearchFn[TDomain any] func( fn AfterValidationSuccessFn[dyn.SearchQuery], ) (*dyn.OpResult[dyn.PagedResultData[TDomain]], error)
type SearchParam ¶
type SearchParam struct {
Action string
DbRepoGetter dyn.DynamicModelRepository
Query dyn.SearchQuery
AfterValidationSuccess AfterValidationSuccessFn[dyn.SearchQuery]
}
type ServiceCreateOptions ¶
type ServiceCreateOptions[TModel any] struct { AfterValidationSuccess AfterValidationSuccessFn[TModel] }
type ServiceDeleteOptions ¶
type ServiceDeleteOptions struct {
AfterValidationSuccess AfterValidationSuccessFn[dyn.DeleteOneCommand]
}
type ServiceSearchOptions ¶
type ServiceSearchOptions struct {
AfterValidationSuccess AfterValidationSuccessFn[dyn.SearchQuery]
}
type ServiceUpdateOptions ¶
type ServiceUpdateOptions[TModel any] ServiceCreateOptions[TModel]
type UiGetOneParam ¶
type UiGetOneParam[TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain]] struct { Action string Schema *dmodel.ModelSchema GetOneFn GetOneFn[TDomain] }
type UiSearchParam ¶
type UiSearchParam[TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain]] struct { Action string // Default fields to use when the client specifies neither `fields` nor a // resolvable named view. // No need to specify ID field because it is always included. DefaultFields []string // Always masked fields that are not allowed to be returned to the client. MaskedFields []string Schema *dmodel.ModelSchema SearchFn SearchFn[TDomain] }
type UpdateBulkParam ¶
type UpdateBulkParam[ TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain], TDomainGetter dmodel.DynamicModelGetter, ] struct { Action string BaseRepoGetter dyn.DynamicModelRepository Data []TDomainGetter BeforeValidation BeforeValidationFn[TDomainPtr] AfterValidationSuccess AfterValidationSuccessFn[TDomainPtr] ValidateExtra UpdateValidateExtraFn[TDomainPtr] }
type UpdateParam ¶
type UpdateParam[ TDomain any, TDomainPtr dyn.DynamicModelPtr[TDomain], ] struct { Action string DbRepoGetter dyn.DynamicModelRepository Data dmodel.DynamicModelGetter BeforeValidation BeforeValidationFn[TDomainPtr] AfterValidationSuccess AfterValidationSuccessFn[TDomainPtr] ValidateExtra UpdateValidateExtraFn[TDomainPtr] }
type UpdateRegardlessParam ¶
type UpdateRegardlessParam struct {
Action string
DbRepoGetter dyn.DynamicModelRepository
Data dmodel.DynamicFields
}
type UpdateValidateExtraFn ¶
Click to show internal directories.
Click to hide internal directories.