Documentation
¶
Index ¶
- Constants
- type UploadFile
- type UploadFileAsSelectOption
- type UploadFilePaginationListFilter
- type UploadFilePaginationListResult
- type UploadFileStorer
- type UploadFileStorerImpl
- func (impl UploadFileStorerImpl) Create(ctx context.Context, u *UploadFile) error
- func (impl UploadFileStorerImpl) DeleteByID(ctx context.Context, id primitive.ObjectID) error
- func (impl UploadFileStorerImpl) GetByID(ctx context.Context, id primitive.ObjectID) (*UploadFile, error)
- func (impl UploadFileStorerImpl) GetOpenAIFileIDsInUploadDirectoryIDs(ctx context.Context, uploadDirectoryIDs []primitive.ObjectID) ([]string, error)
- func (impl UploadFileStorerImpl) ListAsSelectOptionByFilter(ctx context.Context, f *UploadFilePaginationListFilter) ([]*UploadFileAsSelectOption, error)
- func (impl UploadFileStorerImpl) ListByFilter(ctx context.Context, f *UploadFilePaginationListFilter) (*UploadFilePaginationListResult, error)
- func (impl UploadFileStorerImpl) ListByUploadDirectoryID(ctx context.Context, uploadDirectoryID primitive.ObjectID) (*UploadFilePaginationListResult, error)
- func (impl UploadFileStorerImpl) ListByUploadDirectoryIDs(ctx context.Context, uploadDirectoryIDs []primitive.ObjectID) (*UploadFilePaginationListResult, error)
- func (impl UploadFileStorerImpl) UpdateByID(ctx context.Context, m *UploadFile) error
Constants ¶
View Source
const ( StatusActive = 1 StatusError = 2 StatusArchived = 3 // OwnershipTypeTemporary indicates file has been uploaded and saved in our system but not assigned ownership to anything. As a result, if this uploadfile is not assigned within 24 hours then the crontab will delete this uploadfile record and the uploaded file. OwnershipTypeTemporary = 1 OwnershipTypeUser = 4 OwnershipTypeTenant = 5 ContentTypeFile = 6 ContentTypeImage = 7 )
View Source
const ( OrderAscending = 1 OrderDescending = -1 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type UploadFile ¶
type UploadFile struct { Name string `bson:"name" json:"name"` Description string `bson:"description" json:"description"` Filename string `bson:"filename" json:"filename"` ID primitive.ObjectID `bson:"_id" json:"id"` OpenAIFileID string `bson:"openai_file_id" json:"openai_file_id"` // https://platform.openai.com/docs/assistants/tools/supported-files CreatedAt time.Time `bson:"created_at,omitempty" json:"created_at,omitempty"` CreatedByUserName string `bson:"created_by_user_name" json:"created_by_user_name"` CreatedByUserID primitive.ObjectID `bson:"created_by_user_id" json:"created_by_user_id"` ModifiedAt time.Time `bson:"modified_at,omitempty" json:"modified_at,omitempty"` ModifiedByUserName string `bson:"modified_by_user_name" json:"modified_by_user_name"` ModifiedByUserID primitive.ObjectID `bson:"modified_by_user_id" json:"modified_by_user_id"` ObjectKey string `bson:"object_key" json:"object_key"` ObjectURL string `bson:"object_url" json:"object_url"` Status int8 `bson:"status" json:"status"` ContentType int8 `bson:"content_type" json:"content_type"` TenantID primitive.ObjectID `bson:"tenant_id,omitempty" json:"tenant_id,omitempty"` TenantName string `bson:"tenant_name" json:"tenant_name"` UploadDirectoryID primitive.ObjectID `bson:"upload_directory_id,omitempty" json:"upload_directory_id,omitempty"` UploadDirectoryName string `bson:"upload_directory_name" json:"upload_directory_name"` UserID primitive.ObjectID `bson:"user_id" json:"user_id"` UserName string `bson:"user_name" json:"user_name"` UserLexicalName string `bson:"user_lexical_name" json:"user_lexical_name"` }
type UploadFilePaginationListFilter ¶
type UploadFilePaginationListFilter struct { // Pagination related. Cursor string PageSize int64 SortField string SortOrder int8 // 1=ascending | -1=descending // Filter related. TenantID primitive.ObjectID UploadDirectoryID primitive.ObjectID Status int8 UUIDs []string SearchText string Name string Description string CreatedAtGT time.Time CreatedAtGTE time.Time CreatedAtLT time.Time CreatedAtLTE time.Time }
type UploadFilePaginationListResult ¶
type UploadFilePaginationListResult struct { Results []*UploadFile `json:"results"` NextCursor string `json:"next_cursor"` HasNextPage bool `json:"has_next_page"` }
UploadFilePaginationListResult represents the paginated list results for the customer records (meaning limited).
type UploadFileStorer ¶
type UploadFileStorer interface { Create(ctx context.Context, m *UploadFile) error GetByID(ctx context.Context, id primitive.ObjectID) (*UploadFile, error) UpdateByID(ctx context.Context, m *UploadFile) error ListByFilter(ctx context.Context, m *UploadFilePaginationListFilter) (*UploadFilePaginationListResult, error) ListAsSelectOptionByFilter(ctx context.Context, f *UploadFilePaginationListFilter) ([]*UploadFileAsSelectOption, error) DeleteByID(ctx context.Context, id primitive.ObjectID) error GetOpenAIFileIDsInUploadDirectoryIDs(ctx context.Context, uploadDirectoryIDs []primitive.ObjectID) ([]string, error) ListByUploadDirectoryID(ctx context.Context, uploadDirectoryID primitive.ObjectID) (*UploadFilePaginationListResult, error) ListByUploadDirectoryIDs(ctx context.Context, uploadDirectoryIDs []primitive.ObjectID) (*UploadFilePaginationListResult, error) }
UploadFileStorer Interface for uploadfile.
func NewDatastore ¶
type UploadFileStorerImpl ¶
type UploadFileStorerImpl struct { Logger *slog.Logger DbClient *mongo.Client Collection *mongo.Collection }
func (UploadFileStorerImpl) Create ¶
func (impl UploadFileStorerImpl) Create(ctx context.Context, u *UploadFile) error
func (UploadFileStorerImpl) DeleteByID ¶
func (UploadFileStorerImpl) GetByID ¶
func (impl UploadFileStorerImpl) GetByID(ctx context.Context, id primitive.ObjectID) (*UploadFile, error)
func (UploadFileStorerImpl) GetOpenAIFileIDsInUploadDirectoryIDs ¶
func (UploadFileStorerImpl) ListAsSelectOptionByFilter ¶
func (impl UploadFileStorerImpl) ListAsSelectOptionByFilter(ctx context.Context, f *UploadFilePaginationListFilter) ([]*UploadFileAsSelectOption, error)
func (UploadFileStorerImpl) ListByFilter ¶
func (impl UploadFileStorerImpl) ListByFilter(ctx context.Context, f *UploadFilePaginationListFilter) (*UploadFilePaginationListResult, error)
func (UploadFileStorerImpl) ListByUploadDirectoryID ¶
func (impl UploadFileStorerImpl) ListByUploadDirectoryID(ctx context.Context, uploadDirectoryID primitive.ObjectID) (*UploadFilePaginationListResult, error)
func (UploadFileStorerImpl) ListByUploadDirectoryIDs ¶
func (impl UploadFileStorerImpl) ListByUploadDirectoryIDs(ctx context.Context, uploadDirectoryIDs []primitive.ObjectID) (*UploadFilePaginationListResult, error)
func (UploadFileStorerImpl) UpdateByID ¶
func (impl UploadFileStorerImpl) UpdateByID(ctx context.Context, m *UploadFile) error
Click to show internal directories.
Click to hide internal directories.