Documentation
¶
Index ¶
- type MaintenanceConfig
- type MaintenanceWindow
- func (w *MaintenanceWindow) Duration() time.Duration
- func (w *MaintenanceWindow) IsActive() bool
- func (w *MaintenanceWindow) IsExpired() bool
- func (w *MaintenanceWindow) IsUpcoming() bool
- func (w *MaintenanceWindow) TimeUntilEnd() time.Duration
- func (w *MaintenanceWindow) TimeUntilStart() time.Duration
- type Manager
- func (m *Manager) AddMaintenanceWindow(window MaintenanceWindow) error
- func (m *Manager) CleanupExpired() int
- func (m *Manager) ClearMaintenanceWindows()
- func (m *Manager) GetActiveMaintenanceCount() int
- func (m *Manager) GetAutoRemoveStarted() bool
- func (m *Manager) GetMaintenanceCount() int
- func (m *Manager) GetMaintenanceWindow(id string) (*MaintenanceWindow, error)
- func (m *Manager) IsInMaintenanceMode() bool
- func (m *Manager) ListActiveWindows() []MaintenanceWindow
- func (m *Manager) ListMaintenanceWindows() []MaintenanceWindow
- func (m *Manager) ListUpcomingWindows() []MaintenanceWindow
- func (m *Manager) LoadFromJSON(data []byte) error
- func (m *Manager) RemoveMaintenanceWindow(id string) error
- func (m *Manager) SetAutoRemoveStarted(autoRemove bool)
- func (m *Manager) ToJSON() ([]byte, error)
- func (m *Manager) UpdateMaintenanceWindow(id string, updatedWindow MaintenanceWindow) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type MaintenanceConfig ¶
type MaintenanceConfig struct {
Windows []MaintenanceWindow `json:"notifications"`
AutoRemoveStarted bool `json:"autoRemoveStarted"`
}
MaintenanceConfig represents the complete maintenance configuration.
type MaintenanceWindow ¶
type MaintenanceWindow struct {
ID string `json:"id"`
Title string `json:"title"`
Message string `json:"message"`
Start time.Time `json:"start"`
End time.Time `json:"-"` // Omit from JSON output
Dismissible bool `json:"dismissible"`
Created time.Time `json:"created"`
}
MaintenanceWindow represents a scheduled maintenance period.
func (*MaintenanceWindow) Duration ¶
func (w *MaintenanceWindow) Duration() time.Duration
Duration returns the duration of the maintenance window.
func (*MaintenanceWindow) IsActive ¶
func (w *MaintenanceWindow) IsActive() bool
IsActive checks if the maintenance window is currently active.
func (*MaintenanceWindow) IsExpired ¶
func (w *MaintenanceWindow) IsExpired() bool
IsExpired checks if the maintenance window has ended.
func (*MaintenanceWindow) IsUpcoming ¶
func (w *MaintenanceWindow) IsUpcoming() bool
IsUpcoming checks if the maintenance window is scheduled in the future.
func (*MaintenanceWindow) TimeUntilEnd ¶
func (w *MaintenanceWindow) TimeUntilEnd() time.Duration
TimeUntilEnd returns the duration until the maintenance ends.
func (*MaintenanceWindow) TimeUntilStart ¶
func (w *MaintenanceWindow) TimeUntilStart() time.Duration
TimeUntilStart returns the duration until the maintenance starts.
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
Manager handles maintenance window operations.
func (*Manager) AddMaintenanceWindow ¶
func (m *Manager) AddMaintenanceWindow(window MaintenanceWindow) error
AddMaintenanceWindow adds a new maintenance window.
func (*Manager) CleanupExpired ¶
CleanupExpired removes all expired maintenance windows.
func (*Manager) ClearMaintenanceWindows ¶
func (m *Manager) ClearMaintenanceWindows()
ClearMaintenanceWindows removes all maintenance windows.
func (*Manager) GetActiveMaintenanceCount ¶
GetActiveMaintenanceCount returns the number of active maintenance windows.
func (*Manager) GetAutoRemoveStarted ¶
GetAutoRemoveStarted returns the auto-remove started notifications setting.
func (*Manager) GetMaintenanceCount ¶
GetMaintenanceCount returns the total number of maintenance windows.
func (*Manager) GetMaintenanceWindow ¶
func (m *Manager) GetMaintenanceWindow(id string) (*MaintenanceWindow, error)
GetMaintenanceWindow retrieves a maintenance window by ID.
func (*Manager) IsInMaintenanceMode ¶
IsInMaintenanceMode checks if the system is currently in maintenance mode.
func (*Manager) ListActiveWindows ¶
func (m *Manager) ListActiveWindows() []MaintenanceWindow
ListActiveWindows returns currently active maintenance windows.
func (*Manager) ListMaintenanceWindows ¶
func (m *Manager) ListMaintenanceWindows() []MaintenanceWindow
ListMaintenanceWindows returns all maintenance windows.
func (*Manager) ListUpcomingWindows ¶
func (m *Manager) ListUpcomingWindows() []MaintenanceWindow
ListUpcomingWindows returns upcoming maintenance windows.
func (*Manager) LoadFromJSON ¶
LoadFromJSON loads maintenance config from JSON data.
func (*Manager) RemoveMaintenanceWindow ¶
RemoveMaintenanceWindow removes a maintenance window by ID.
func (*Manager) SetAutoRemoveStarted ¶
SetAutoRemoveStarted sets the auto-remove started notifications flag.
func (*Manager) UpdateMaintenanceWindow ¶
func (m *Manager) UpdateMaintenanceWindow(id string, updatedWindow MaintenanceWindow) error
UpdateMaintenanceWindow updates an existing maintenance window.