Documentation
¶
Index ¶
- type Artifact
- type ArtifactQuery
- type ArtifactStatus
- type ArtifactStore
- type ArtifactType
- type CreateOption
- type FileStore
- func (s *FileStore) Archive(ctx context.Context, artifactID string) error
- func (s *FileStore) Delete(ctx context.Context, artifactID string) error
- func (s *FileStore) GetMetadata(ctx context.Context, artifactID string) (*Artifact, error)
- func (s *FileStore) List(ctx context.Context, query ArtifactQuery) ([]*Artifact, error)
- func (s *FileStore) Load(ctx context.Context, artifactID string) (*Artifact, io.ReadCloser, error)
- func (s *FileStore) Save(ctx context.Context, artifact *Artifact, data io.Reader) error
- type Manager
- func (m *Manager) Archive(ctx context.Context, artifactID string) error
- func (m *Manager) Cleanup(ctx context.Context) (int, error)
- func (m *Manager) Create(ctx context.Context, name string, artifactType ArtifactType, data io.Reader, ...) (*Artifact, error)
- func (m *Manager) CreateVersion(ctx context.Context, parentID string, data io.Reader) (*Artifact, error)
- func (m *Manager) Delete(ctx context.Context, artifactID string) error
- func (m *Manager) Get(ctx context.Context, artifactID string) (*Artifact, io.ReadCloser, error)
- func (m *Manager) GetMetadata(ctx context.Context, artifactID string) (*Artifact, error)
- func (m *Manager) List(ctx context.Context, query ArtifactQuery) ([]*Artifact, error)
- type ManagerConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Artifact ¶
type Artifact struct {
ID string `json:"id"`
Name string `json:"name"`
Type ArtifactType `json:"type"`
Status ArtifactStatus `json:"status"`
MimeType string `json:"mime_type,omitempty"`
Size int64 `json:"size"`
Checksum string `json:"checksum"`
StoragePath string `json:"storage_path"`
URL string `json:"url,omitempty"`
Metadata map[string]any `json:"metadata,omitempty"`
Tags []string `json:"tags,omitempty"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
ExpiresAt *time.Time `json:"expires_at,omitempty"`
CreatedBy string `json:"created_by"`
SessionID string `json:"session_id,omitempty"`
ParentID string `json:"parent_id,omitempty"`
Version int `json:"version"`
}
人工活性代表系统中的受管文物.
type ArtifactQuery ¶
type ArtifactQuery struct {
SessionID string `json:"session_id,omitempty"`
Type ArtifactType `json:"type,omitempty"`
Status ArtifactStatus `json:"status,omitempty"`
Tags []string `json:"tags,omitempty"`
CreatedBy string `json:"created_by,omitempty"`
Limit int `json:"limit,omitempty"`
Offset int `json:"offset,omitempty"`
}
ArtifactQuery定义了列出文物的查询参数.
type ArtifactStatus ¶
type ArtifactStatus string
人工活性状态代表文物的生命周期状态。
const ( StatusPending ArtifactStatus = "pending" StatusUploading ArtifactStatus = "uploading" StatusReady ArtifactStatus = "ready" StatusArchived ArtifactStatus = "archived" StatusDeleted ArtifactStatus = "deleted" )
type ArtifactStore ¶
type ArtifactStore interface {
Save(ctx context.Context, artifact *Artifact, data io.Reader) error
Load(ctx context.Context, artifactID string) (*Artifact, io.ReadCloser, error)
GetMetadata(ctx context.Context, artifactID string) (*Artifact, error)
Delete(ctx context.Context, artifactID string) error
List(ctx context.Context, query ArtifactQuery) ([]*Artifact, error)
Archive(ctx context.Context, artifactID string) error
}
ArtifactStore定义了文物的存储界面.
type ArtifactType ¶
type ArtifactType string
工艺品Type定义了文物的类型.
const ( ArtifactTypeFile ArtifactType = "file" ArtifactTypeData ArtifactType = "data" ArtifactTypeImage ArtifactType = "image" ArtifactTypeCode ArtifactType = "code" ArtifactTypeOutput ArtifactType = "output" ArtifactTypeModel ArtifactType = "model" )
type CreateOption ¶
type CreateOption func(*createOptions)
创建可选配置文物创建 。
func WithCreatedBy ¶
func WithCreatedBy(createdBy string) CreateOption
func WithMetadata ¶
func WithMetadata(metadata map[string]any) CreateOption
func WithMimeType ¶
func WithMimeType(mimeType string) CreateOption
func WithSessionID ¶
func WithSessionID(sessionID string) CreateOption
func WithTTL ¶
func WithTTL(ttl time.Duration) CreateOption
func WithTags ¶
func WithTags(tags ...string) CreateOption
type FileStore ¶
type FileStore struct {
// contains filtered or unexported fields
}
FileStore使用本地文件系统执行ArtifactStore.
func NewFileStore ¶
NewFileStore创建了一个新的基于文件的文物商店.
func (*FileStore) GetMetadata ¶
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
经理处理文物生命周期管理.
func NewManager ¶
func NewManager(config ManagerConfig, store ArtifactStore, logger *zap.Logger) *Manager
NewManager创建了新的文物管理器.
func (*Manager) Create ¶
func (m *Manager) Create(ctx context.Context, name string, artifactType ArtifactType, data io.Reader, opts ...CreateOption) (*Artifact, error)
从数据创建出新的文物 。
func (*Manager) CreateVersion ¶
func (m *Manager) CreateVersion(ctx context.Context, parentID string, data io.Reader) (*Artifact, error)
CreateVersion 创建了新版本的已有文物.
func (*Manager) GetMetadata ¶
GetMetadata检索没有数据的文物元数据.
Click to show internal directories.
Click to hide internal directories.