Implement ScanAll resolver
This commit is contained in:
parent
4e388c430c
commit
b254f3abaa
|
@ -9,8 +9,24 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
func (r *mutationResolver) ScanAll(ctx context.Context) (*models.ScannerResult, error) {
|
func (r *mutationResolver) ScanAll(ctx context.Context) (*models.ScannerResult, error) {
|
||||||
panic("Not implemented")
|
if err := scanner.ScanAll(r.Database); err != nil {
|
||||||
|
errorMessage := fmt.Sprintf("Error starting scanner: %s", err.Error())
|
||||||
|
return &models.ScannerResult{
|
||||||
|
Finished: false,
|
||||||
|
Success: false,
|
||||||
|
Message: &errorMessage,
|
||||||
|
}, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
startMessage := "Scanner started"
|
||||||
|
|
||||||
|
return &models.ScannerResult{
|
||||||
|
Finished: false,
|
||||||
|
Success: true,
|
||||||
|
Message: &startMessage,
|
||||||
|
}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *mutationResolver) ScanUser(ctx context.Context, userID int) (*models.ScannerResult, error) {
|
func (r *mutationResolver) ScanUser(ctx context.Context, userID int) (*models.ScannerResult, error) {
|
||||||
if err := scanner.ScanUser(r.Database, userID); err != nil {
|
if err := scanner.ScanUser(r.Database, userID); err != nil {
|
||||||
errorMessage := fmt.Sprintf("Error scanning user: %s", err.Error())
|
errorMessage := fmt.Sprintf("Error scanning user: %s", err.Error())
|
||||||
|
|
|
@ -62,6 +62,26 @@ func (cache *scanner_cache) album_contains_photo(path string) *bool {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func ScanAll(database *sql.DB) error {
|
||||||
|
rows, err := database.Query("SELECT * FROM user")
|
||||||
|
if err != nil {
|
||||||
|
log.Printf("Could not fetch all users from database: %s\n", err.Error())
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
users, err := models.NewUsersFromRows(rows)
|
||||||
|
if err != nil {
|
||||||
|
log.Printf("Could not convert users: %s\n", err)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, user := range users {
|
||||||
|
go scan(database, user)
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
func ScanUser(database *sql.DB, userId int) error {
|
func ScanUser(database *sql.DB, userId int) error {
|
||||||
|
|
||||||
row := database.QueryRow("SELECT * FROM user WHERE user_id = ?", userId)
|
row := database.QueryRow("SELECT * FROM user WHERE user_id = ?", userId)
|
||||||
|
|
Loading…
Reference in New Issue