24 lines
856 B
Go
24 lines
856 B
Go
package models
|
|
|
|
import (
|
|
"database/sql"
|
|
|
|
"gorm.io/gorm"
|
|
)
|
|
|
|
// RemoteServer describes an ActivityPub server
|
|
// This includes self too
|
|
type RemoteServer struct {
|
|
gorm.Model
|
|
// What software type the server is running. Useful for formatting.
|
|
// Groups various types together (ex. firefish, iceshrimp, sharkey, misskey => misskey)
|
|
ServerType ServerSoftwareType
|
|
SpecificType string // Specific type
|
|
Version string
|
|
Domain string // `gorm:"primaryKey"` // Domain the server exists under. Additional primary key
|
|
Name string // What the server wants to be known as (usually same as url)
|
|
Icon *MediaMetadata // The icon used by the server. May be empty
|
|
IconId sql.NullString // ID of a media file
|
|
IsSelf bool // Whether this server is yours truly
|
|
Metadata []RemoteServerMetadata
|
|
}
|