gis/server/files/types.go

41 lines
1.2 KiB
Go

package files
import "time"
type FileType string
const (
FileTypeVectorWithTable FileType = "vector_with_table"
FileTypeVector FileType = "vector"
FileTypeRaster FileType = "raster"
)
type ValidationStatus string
const (
ValidationStatusPending ValidationStatus = "pending"
ValidationStatusValid ValidationStatus = "valid"
ValidationStatusFailed ValidationStatus = "failed"
)
type GeoFile struct {
ID string `json:"id"`
Filename string `json:"filename"`
FileType FileType `json:"file_type"`
ValidationStatus ValidationStatus `json:"validation_status"`
ValidationError *string `json:"validation_error"`
KatoColumn *string `json:"kato_column"`
CRS *string `json:"crs"`
FeatureCount *int `json:"feature_count"`
UploadedAt time.Time `json:"uploaded_at"`
UpdatedAt time.Time `json:"updated_at"`
}
var allowedExtensions = map[string]FileType{
".zip": FileTypeVectorWithTable,
".geojson": FileTypeVectorWithTable,
".gpkg": FileTypeVectorWithTable,
".tif": FileTypeRaster,
".tiff": FileTypeRaster,
}