Versions in this module Expand all Collapse all v2 v2.1.6 Feb 19, 2024 v2.1.5 Feb 19, 2024 Changes in this version + func ToDBName(s string) string v2.1.4 Feb 15, 2024 Changes in this version + var ErrCtxTxnMissing = errors.New("Database transaction for request missing in context") + var ErrCtxTxnNoDB = errors.New("Transaction in context, but DB is nil") + func ApplyCollectionOperators(ctx context.Context, db *gorm.DB, obj interface{}, pb proto.Message, ...) (*gorm.DB, error) + func ApplyCollectionOperatorsEx(ctx context.Context, db *gorm.DB, obj interface{}, ...) (*gorm.DB, error) + func ApplyCollectionOperatorsWithSearchingEx(ctx context.Context, db *gorm.DB, obj interface{}, ...) (*gorm.DB, error) + func ApplyFieldSelection(ctx context.Context, db *gorm.DB, fs *query.FieldSelection, obj interface{}) (*gorm.DB, error) + func ApplyFieldSelectionEx(ctx context.Context, db *gorm.DB, fs *query.FieldSelection, obj interface{}, ...) (*gorm.DB, error) + func ApplyFiltering(ctx context.Context, db *gorm.DB, f *query.Filtering, obj interface{}, ...) (*gorm.DB, map[string]struct{}, error) + func ApplyFilteringEx(ctx context.Context, db *gorm.DB, f *query.Filtering, obj interface{}, ...) (*gorm.DB, map[string]struct{}, error) + func ApplyPagination(ctx context.Context, db *gorm.DB, p *query.Pagination) *gorm.DB + func ApplyPaginationEx(ctx context.Context, db *gorm.DB, p *query.Pagination, c PaginationConverter) *gorm.DB + func ApplySearchingEx(ctx context.Context, db *gorm.DB, s *query.Searching, obj interface{}, ...) (*gorm.DB, error) + func ApplySorting(ctx context.Context, db *gorm.DB, s *query.Sorting, obj interface{}) (*gorm.DB, map[string]struct{}, error) + func ApplySortingEx(ctx context.Context, db *gorm.DB, s *query.Sorting, obj interface{}, ...) (*gorm.DB, map[string]struct{}, error) + func BeginFromContext(ctx context.Context) (*gorm.DB, error) + func BeginWithOptionsFromContext(ctx context.Context, opts *sql.TxOptions) (*gorm.DB, error) + func FieldSelectionStringToGorm(ctx context.Context, fs string, obj interface{}) ([]string, error) + func FilterStringToGorm(ctx context.Context, filter string, obj interface{}, pb proto.Message) (string, []interface{}, map[string]struct{}, error) + func FilteringToGorm(ctx context.Context, m *query.Filtering, obj interface{}, pb proto.Message) (string, []interface{}, map[string]struct{}, error) + func FilteringToGormEx(ctx context.Context, m *query.Filtering, obj interface{}, ...) (string, []interface{}, map[string]struct{}, error) + func FormFullTextSearchQuery(mask string) string + func GetFullTextSearchDBMask(object interface{}, fields []string, separator string) string + func HandleFieldPath(ctx context.Context, fieldPath []string, obj interface{}) (string, string, error) + func HandleJSONFieldPath(ctx context.Context, fieldPath []string, obj interface{}, values ...string) (string, string, error) + func IsJSONCondition(ctx context.Context, fieldPath []string, obj interface{}) bool + func JoinAssociations(ctx context.Context, db *gorm.DB, assoc map[string]struct{}, obj interface{}) (*gorm.DB, error) + func JoinInfo(ctx context.Context, obj interface{}, assoc string) (string, []string, []string, error) + func MergeWithMask(source, dest interface{}, mask *fieldmask.FieldMask) error + func NewContext(parent context.Context, txn *Transaction) context.Context + func StreamServerInterceptor(db *gorm.DB) grpc.StreamServerInterceptor + func StreamServerInterceptorTxn(txn *Transaction) grpc.StreamServerInterceptor + func UnaryServerInterceptor(db *gorm.DB) grpc.UnaryServerInterceptor + func UnaryServerInterceptorTxn(txn *Transaction) grpc.UnaryServerInterceptor + func VerifyMigrationVersion(db *jgorm.DB, v MigrationVersionValidator) error + type CollectionOperatorsConverter interface + func NewDefaultPbToOrmConverter(pb proto.Message) CollectionOperatorsConverter + type DefaultFieldSelectionConverter struct + func (converter *DefaultFieldSelectionConverter) FieldSelectionToGorm(ctx context.Context, fs *query.FieldSelection, obj interface{}) ([]string, error) + type DefaultFilteringConditionConverter struct + Processor FilteringConditionProcessor + func (converter *DefaultFilteringConditionConverter) LogicalOperatorToGorm(ctx context.Context, lop *query.LogicalOperator, obj interface{}) (string, []interface{}, map[string]struct{}, error) + func (converter *DefaultFilteringConditionConverter) NullConditionToGorm(ctx context.Context, c *query.NullCondition, obj interface{}) (string, []interface{}, map[string]struct{}, error) + func (converter *DefaultFilteringConditionConverter) NumberArrayConditionToGorm(ctx context.Context, c *query.NumberArrayCondition, obj interface{}) (string, []interface{}, map[string]struct{}, error) + func (converter *DefaultFilteringConditionConverter) NumberConditionToGorm(ctx context.Context, c *query.NumberCondition, obj interface{}) (string, []interface{}, map[string]struct{}, error) + func (converter *DefaultFilteringConditionConverter) StringArrayConditionToGorm(ctx context.Context, c *query.StringArrayCondition, obj interface{}) (string, []interface{}, map[string]struct{}, error) + func (converter *DefaultFilteringConditionConverter) StringConditionToGorm(ctx context.Context, c *query.StringCondition, obj interface{}) (string, []interface{}, map[string]struct{}, error) + type DefaultFilteringConditionProcessor struct + func (p *DefaultFilteringConditionProcessor) ProcessStringCondition(ctx context.Context, fieldPath []string, value string) (interface{}, error) + type DefaultPaginationConverter struct + func (converter *DefaultPaginationConverter) PaginationToGorm(ctx context.Context, p *query.Pagination) (offset, limit int32) + type DefaultPbToOrmConverter struct + type DefaultSearchingConverter struct + func (converter *DefaultSearchingConverter) SearchingToGorm(ctx context.Context, s *query.Searching, fieldsForFTS []string, ...) (string, error) + type DefaultSortingCriteriaConverter struct + func (converter *DefaultSortingCriteriaConverter) SortingCriteriaToGorm(ctx context.Context, cr *query.SortCriteria, obj interface{}) (string, string, error) + type EmptyFieldPathError struct + func (e *EmptyFieldPathError) Error() string + type FieldSelectionConverter interface + FieldSelectionToGorm func(ctx context.Context, fs *query.FieldSelection, obj interface{}) ([]string, error) + type FilteringConditionConverter interface + type FilteringConditionProcessor interface + ProcessStringCondition func(ctx context.Context, fieldPath []string, value string) (interface{}, error) + type LogicalOperatorConverter interface + LogicalOperatorToGorm func(ctx context.Context, lop *query.LogicalOperator, obj interface{}) (string, []interface{}, map[string]struct{}, error) + type MigrationVersionValidator interface + ValidVersion func(int64) error + func MaxVersionFrom(path string) (MigrationVersionValidator, error) + func VersionExactly(version int64) MigrationVersionValidator + func VersionRange(lower, upper int64) MigrationVersionValidator + type NullConditionConverter interface + NullConditionToGorm func(ctx context.Context, c *query.NullCondition, obj interface{}) (string, []interface{}, map[string]struct{}, error) + type NumberArrayConditionConverter interface + NumberArrayConditionToGorm func(ctx context.Context, c *query.NumberArrayCondition, obj interface{}) (string, []interface{}, map[string]struct{}, error) + type NumberConditionConverter interface + NumberConditionToGorm func(ctx context.Context, c *query.NumberCondition, obj interface{}) (string, []interface{}, map[string]struct{}, error) + type PaginationConverter interface + PaginationToGorm func(ctx context.Context, p *query.Pagination) (offset, limit int32) + type SearchingConverter interface + SearchingToGorm func(ctx context.Context, s *query.Searching, fieldsForFTS []string, ...) (string, error) + type SortingCriteriaConverter interface + SortingCriteriaToGorm func(ctx context.Context, cr *query.SortCriteria, obj interface{}) (string, string, error) + type StringArrayConditionConverter interface + StringArrayConditionToGorm func(ctx context.Context, c *query.StringArrayCondition, obj interface{}) (string, []interface{}, map[string]struct{}, error) + type StringConditionConverter interface + StringConditionToGorm func(ctx context.Context, c *query.StringCondition, obj interface{}) (string, []interface{}, map[string]struct{}, error) + type Transaction struct + func FromContext(ctx context.Context) (txn *Transaction, ok bool) + func NewTransaction(db *gorm.DB) Transaction + func (t *Transaction) AddAfterCommitHook(hooks ...func(context.Context)) + func (t *Transaction) Begin() *gorm.DB + func (t *Transaction) BeginWithOptions(opts *sql.TxOptions) *gorm.DB + func (t *Transaction) Commit(ctx context.Context) error + func (t *Transaction) Rollback() error Other modules containing this package github.com/lunchroum/atlas-app-toolkit