Documentation
¶
Index ¶
- Variables
- type Analysis
- type AnalysisInput
- type AnalysisManagerAllocator
- type AnalysisManagerRepository
- type AnalysisManagerRequester
- type AnalysisRequest
- type AnalysisRequestController
- type AnalysisRequestStepStatus
- type AnalysisRequestStepType
- type AnalysisResultPaginated
- type AnalysisResultService
- func (ars *AnalysisResultService) DeleteAnalysisRequestById(arid, uid uuid.UUID) error
- func (ars *AnalysisResultService) GetAnalysesByAnalysisIdAndUserId(uid, arid uuid.UUID) (analysisresult.Analysis, error)
- func (ars *AnalysisResultService) GetAnalysesByUserId(id uuid.UUID, limit, page int, catType, catCat, query, sc string) (analysisresult.AnalysisPaginated, error)
- func (ars *AnalysisResultService) UpdateScore(id uuid.UUID, score float32) error
- type AnalysisStatus
- type Content
- type Inputs
- type JobsProgress
- type Pagination
- type RawData
- type RawDataManager
- type RequestOrigin
- type SingleJobProgress
Constants ¶
This section is empty.
Variables ¶
Functions ¶
This section is empty.
Types ¶
type Analysis ¶
type Analysis struct {
Id uuid.UUID `gorm:"column:id;primaryKey;type:uuid;default:gen_random_uuid()"`
AnalysisRequestId uuid.UUID `gorm:"column:analysis_request_id;primaryKey;type:uuid"`
AnalyzerKey string `gorm:"column:analyzer_key"`
ThemeId uuid.UUID `gorm:"column:theme_id"`
Status AnalysisStatus `gorm:"column:status"`
Score float32 `gorm:"column:score"`
Content Content `gorm:"column:content;type:jsonb"`
Inputs Inputs `gorm:"column:inputs;type:jsonb"`
Jobs JobsProgress `gorm:"column:jobs;type:jsonb"`
}
type AnalysisInput ¶
type AnalysisManagerAllocator ¶
type AnalysisManagerAllocator struct {
// contains filtered or unexported fields
}
func NewAnalysisManagerAllocator ¶
func NewAnalysisManagerAllocator(s subsriber, as analysisStore, ju jobber, sse sseEventSender) *AnalysisManagerAllocator
type AnalysisManagerRepository ¶
type AnalysisManagerRepository struct {
// contains filtered or unexported fields
}
func NewAnalysisManagerRepository ¶
func NewAnalysisManagerRepository(db *gorm.DB) *AnalysisManagerRepository
type AnalysisManagerRequester ¶
type AnalysisManagerRequester struct {
// contains filtered or unexported fields
}
func NewAnalysisManangerRequester ¶
func NewAnalysisManangerRequester(jobMananger jobManagerRequester, ars analysisRequestStore, sse sseEventSender, ts themeService) *AnalysisManagerRequester
func (*AnalysisManagerRequester) RequestAnalysis ¶
func (am *AnalysisManagerRequester) RequestAnalysis(arDto *analysisrequest.AnalysisRequest, ui uuid.UUID, requestOrigin string) (uuid.UUID, error)
func (*AnalysisManagerRequester) RequestAnalysisDataloom ¶
func (am *AnalysisManagerRequester) RequestAnalysisDataloom(ardDto *analysisrequest.AnalysisRequestDataloom, ui uuid.UUID) (uuid.UUID, error)
type AnalysisRequest ¶
type AnalysisRequest struct {
Id uuid.UUID `gorm:"column:id;primaryKey;type:uuid;default:gen_random_uuid()"`
UserId uuid.UUID `gorm:"column:user_id"`
RequestOrigin string `gorm:"column:request_origin"`
Category string `gorm:"column:category"`
Title string `gorm:"column:title"`
ContentType string `gorm:"column:content_type"`
RawData RawData `gorm:"foreignKey:AnalysisRequestId"`
Analysis []Analysis `gorm:"foreignKey:AnalysisRequestId"`
CreatedAt time.Time `gorm:"column:created_at"`
}
type AnalysisRequestController ¶
type AnalysisRequestController struct {
// contains filtered or unexported fields
}
func NewAnalysisRequestController ¶
func NewAnalysisRequestController(group *gin.RouterGroup, manager *AnalysisManagerRequester, ars *AnalysisResultService) *AnalysisRequestController
type AnalysisRequestStepStatus ¶
type AnalysisRequestStepStatus string
const ( Waiting AnalysisRequestStepStatus = "waiting" Inprogress AnalysisRequestStepStatus = "inprogress" Finished AnalysisRequestStepStatus = "finished" Error AnalysisRequestStepStatus = "error" )
type AnalysisRequestStepType ¶
type AnalysisRequestStepType string
const ( Create AnalysisRequestStepType = "create" Upload AnalysisRequestStepType = "upload" Parse AnalysisRequestStepType = "parse" Analyze AnalysisRequestStepType = "analyze" Report AnalysisRequestStepType = "report" Done AnalysisRequestStepType = "done" )
type AnalysisResultPaginated ¶
type AnalysisResultPaginated struct {
Limit int
Page int
TotalPages int
Requests []AnalysisRequest
}
type AnalysisResultService ¶
type AnalysisResultService struct {
// contains filtered or unexported fields
}
func NewAnalysisResultService ¶
func NewAnalysisResultService(ag analysisGetter, au analysisUpdater, ts themeService) *AnalysisResultService
func (*AnalysisResultService) DeleteAnalysisRequestById ¶
func (ars *AnalysisResultService) DeleteAnalysisRequestById(arid, uid uuid.UUID) error
func (*AnalysisResultService) GetAnalysesByAnalysisIdAndUserId ¶
func (ars *AnalysisResultService) GetAnalysesByAnalysisIdAndUserId(uid, arid uuid.UUID) (analysisresult.Analysis, error)
func (*AnalysisResultService) GetAnalysesByUserId ¶
func (ars *AnalysisResultService) GetAnalysesByUserId(id uuid.UUID, limit, page int, catType, catCat, query, sc string) (analysisresult.AnalysisPaginated, error)
func (*AnalysisResultService) UpdateScore ¶
func (ars *AnalysisResultService) UpdateScore(id uuid.UUID, score float32) error
type AnalysisStatus ¶
type AnalysisStatus string
const ( AnalysisWaiting AnalysisStatus = "waiting" AnalysisInprogress AnalysisStatus = "inprogress" AnalysisFinished AnalysisStatus = "finished" AnalysisError AnalysisStatus = "error" )
type Inputs ¶
type Inputs []AnalysisInput
type JobsProgress ¶
type JobsProgress []SingleJobProgress
func (*JobsProgress) Scan ¶
func (as *JobsProgress) Scan(src interface{}) error
type Pagination ¶
func (*Pagination) GetLimit ¶
func (p *Pagination) GetLimit() int
func (*Pagination) GetOffset ¶
func (p *Pagination) GetOffset() int
func (*Pagination) GetPage ¶
func (p *Pagination) GetPage() int
type RawData ¶
type RawData struct {
Id uuid.UUID `gorm:"column:id;primaryKey;type:uuid;default:gen_random_uuid()"`
AnalysisRequestId uuid.UUID `gorm:"column:analysis_request_id;primaryKey;type:uuid"`
Hash string `gorm:"column:hash"`
Content []byte `gorm:"column:content;type:bytea"`
FileType string `gorm:"column:file_type"`
ProcessedText string `gorm:"column:processed_text"`
}
type RawDataManager ¶
type RawDataManager struct {
// contains filtered or unexported fields
}
func NewRawDataManager ¶
func NewRawDataManager(tc taskCreater, db *gorm.DB) *RawDataManager
type RequestOrigin ¶
type RequestOrigin string
const ( RequestOriginUser RequestOrigin = "user" RequestOriginSystem RequestOrigin = "system" RequestOriginDataloom RequestOrigin = "dataloom" RequestOriginExternal RequestOrigin = "external" )
type SingleJobProgress ¶
type SingleJobProgress struct {
JobId uuid.UUID `json:"jobId"`
Status AnalysisStatus `json:"status"`
}
Click to show internal directories.
Click to hide internal directories.