Documentation
¶
Index ¶
- Constants
- func MapToJSONType(in map[string]string) datatypes.JSONType[map[string]string]
- type Alert
- type DatabaseItem
- type Error
- type Escalation
- type Item
- type Layer
- type Link
- type Manager
- func (m *Manager) CreateUser(u *User) (*User, error)
- func (m *Manager) DeleteAlert(id uint) error
- func (m *Manager) DeleteEscalation(id uint) error
- func (m *Manager) DeleteService(id uint) error
- func (m *Manager) DeleteTeam(id uint) error
- func (m *Manager) DeleteUser(id uint) error
- func (m *Manager) GetAlert(id uint) (*Alert, error)
- func (m *Manager) GetAlertByName(AlertName string) (*Alert, error)
- func (m *Manager) GetAlertByUniqueID(id string) (*Alert, error)
- func (m *Manager) GetAlerts() ([]*Alert, error)
- func (m *Manager) GetAlertsForAService(serviceID uint) ([]*Alert, error)
- func (m *Manager) GetEscalation(id uint) (*Escalation, error)
- func (m *Manager) GetEscalations() ([]*Escalation, error)
- func (m *Manager) GetService(id uint) (*Service, error)
- func (m *Manager) GetServiceByName(serviceName string) (*Service, error)
- func (m *Manager) GetServices() ([]*Service, error)
- func (m *Manager) GetServicesOnEscalation(escalationID uint) ([]*Service, error)
- func (m *Manager) GetTeam(id uint) (*Team, error)
- func (m *Manager) GetTeamByName(teamName string) (*Team, error)
- func (m *Manager) GetTeams() ([]*Team, error)
- func (m *Manager) GetUser(id uint) (*User, error)
- func (m *Manager) GetUserByEmail(email string) (*User, error)
- func (m *Manager) GetUsers() ([]*User, error)
- func (m *Manager) UpdateAlert(a *Alert) (*Alert, error)
- func (m *Manager) UpdateEscalation(e *Escalation) (*Escalation, error)
- func (m *Manager) UpdateService(s *Service) (*Service, error)
- func (m *Manager) UpdateTeam(t *Team) (*Team, error)
- func (m *Manager) UpdateUser(u *User) (*User, error)
- type Service
- type Team
- type User
- type UserContactMethod
Constants ¶
View Source
const ( ResponderTypeUser = "user" ResponderTypeSchedule = "schedule" )
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Alert ¶
type Alert struct { Item UniqueIdentifier string `json:"uniq_id" gorm:"index"` Status string `json:"status"` StartsAt time.Time `json:"starts_at"` EndsAt time.Time `json:"ends_at,omitempty"` Title string `json:"title"` Description string `json:"description"` UrlMoreInfo string `json:"url_more_info,omitempty"` Labels datatypes.JSONType[map[string]string] `json:"labels"` ServiceID uint `json:"service_id" gorm:"index"` }
func (*Alert) SafeToDelete ¶
type DatabaseItem ¶
type Escalation ¶
type Escalation struct { Item Name string `json:"name"` Description string `json:"description"` Layers *datatypes.JSONType[[]Layer] `json:"layers,omitempty"` }
func (*Escalation) GetLayers ¶
func (e *Escalation) GetLayers() ([]Layer, error)
func (*Escalation) SafeToDelete ¶
func (e *Escalation) SafeToDelete(m *Manager) error
func (*Escalation) Validate ¶
func (e *Escalation) Validate(*Manager) error
type Layer ¶
type Layer struct { Tier uint `json:"tier"` ResponderType string `json:"responder_type"` ResponderReference string `json:"responder_reference"` }
func (*Layer) SafeToDelete ¶
type Link ¶
type Link struct { Item Url string `json:"link"` Description string `json:"description"` ReferenceID int `json:"-"` }
func (*Link) SafeToDelete ¶
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
func (*Manager) DeleteAlert ¶
func (*Manager) DeleteEscalation ¶
func (*Manager) DeleteService ¶
func (*Manager) DeleteTeam ¶
func (*Manager) DeleteUser ¶
func (*Manager) GetAlertByUniqueID ¶
func (*Manager) GetAlertsForAService ¶
func (*Manager) GetEscalation ¶
func (m *Manager) GetEscalation(id uint) (*Escalation, error)
func (*Manager) GetEscalations ¶
func (m *Manager) GetEscalations() ([]*Escalation, error)
func (*Manager) GetServiceByName ¶
func (*Manager) GetServices ¶
func (*Manager) GetServicesOnEscalation ¶
func (*Manager) UpdateEscalation ¶
func (m *Manager) UpdateEscalation(e *Escalation) (*Escalation, error)
type Service ¶
type Service struct { Item Name string `json:"name" gorm:"index,unique"` TeamID uint `json:"team_id" gorm:"index"` Description string `json:"description"` Link string `json:"link,omitempty"` EscalationID uint `json:"escalation_id" gorm:"index"` }
func (*Service) SafeToDelete ¶
type Team ¶
type Team struct { Item Name string `json:"name" gorm:"index,unique"` Description string `json:"description"` }
func (*Team) SafeToDelete ¶
type User ¶
type User struct { Item Email string `json:"email" gorm:"index,unique"` FirstName string `json:"first_name"` LastName string `json:"last_name"` UserType string `json:"user_type"` ContactMethods []UserContactMethod `json:"contact_methods" gorm:"foreignKey:ID;references:ID"` }
func (*User) SafeToDelete ¶
type UserContactMethod ¶
type UserContactMethod struct { Item Type string `json:"type"` Address string `json:"address"` Summary string `json:"summary"` }
func (*UserContactMethod) SafeToDelete ¶
func (ucm *UserContactMethod) SafeToDelete(*Manager) error
func (*UserContactMethod) Validate ¶
func (ucm *UserContactMethod) Validate(*Manager) error
Click to show internal directories.
Click to hide internal directories.