Documentation
¶
Index ¶
- Constants
- type PostgresProvider
- func (p *PostgresProvider) DeleteAlarm(ctx context.Context, ref ref.AlarmRef) error
- func (p *PostgresProvider) DeleteLeasedAlarm(ctx context.Context, lease *ref.AlarmLease) error
- func (p *PostgresProvider) DeleteState(ctx context.Context, ref ref.ActorRef) error
- func (p *PostgresProvider) FetchAndLeaseUpcomingAlarms(ctx context.Context, req components.FetchAndLeaseUpcomingAlarmsReq) ([]*ref.AlarmLease, error)
- func (p *PostgresProvider) GetAlarm(ctx context.Context, req ref.AlarmRef) (res components.GetAlarmRes, err error)
- func (p *PostgresProvider) GetLeasedAlarm(ctx context.Context, lease *ref.AlarmLease) (res components.GetLeasedAlarmRes, err error)
- func (p *PostgresProvider) GetState(ctx context.Context, ref ref.ActorRef) (data []byte, err error)
- func (p *PostgresProvider) HealthCheckInterval() time.Duration
- func (p *PostgresProvider) Init(ctx context.Context) error
- func (p *PostgresProvider) LookupActor(ctx context.Context, ref ref.ActorRef, opts components.LookupActorOpts) (components.LookupActorRes, error)
- func (p *PostgresProvider) RegisterHost(ctx context.Context, req components.RegisterHostReq) (components.RegisterHostRes, error)
- func (p *PostgresProvider) ReleaseAlarmLease(ctx context.Context, lease *ref.AlarmLease) error
- func (p *PostgresProvider) RemoveActor(ctx context.Context, ref ref.ActorRef) error
- func (p *PostgresProvider) RenewAlarmLeases(ctx context.Context, req components.RenewAlarmLeasesReq) (res components.RenewAlarmLeasesRes, err error)
- func (p *PostgresProvider) RenewLeaseInterval() time.Duration
- func (p *PostgresProvider) Run(ctx context.Context) error
- func (p *PostgresProvider) SetAlarm(ctx context.Context, ref ref.AlarmRef, req components.SetAlarmReq) error
- func (p *PostgresProvider) SetState(ctx context.Context, ref ref.ActorRef, data []byte, ...) error
- func (p *PostgresProvider) UnregisterHost(ctx context.Context, hostID string) error
- func (p *PostgresProvider) UpdateActorHost(ctx context.Context, hostID string, req components.UpdateActorHostReq) error
- func (p *PostgresProvider) UpdateLeasedAlarm(ctx context.Context, lease *ref.AlarmLease, ...) (err error)
- type PostgresProviderOptions
Constants ¶
View Source
const ( DefaultTimeout = 5 * time.Second DefaultCleanupInterval = 10 * time.Minute )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type PostgresProvider ¶
type PostgresProvider struct {
// contains filtered or unexported fields
}
func NewPostgresProvider ¶
func NewPostgresProvider(log *slog.Logger, postgresOpts PostgresProviderOptions, providerConfig components.ProviderConfig) (*PostgresProvider, error)
func (*PostgresProvider) DeleteAlarm ¶
func (*PostgresProvider) DeleteLeasedAlarm ¶
func (p *PostgresProvider) DeleteLeasedAlarm(ctx context.Context, lease *ref.AlarmLease) error
func (*PostgresProvider) DeleteState ¶
func (*PostgresProvider) FetchAndLeaseUpcomingAlarms ¶
func (p *PostgresProvider) FetchAndLeaseUpcomingAlarms(ctx context.Context, req components.FetchAndLeaseUpcomingAlarmsReq) ([]*ref.AlarmLease, error)
func (*PostgresProvider) GetAlarm ¶
func (p *PostgresProvider) GetAlarm(ctx context.Context, req ref.AlarmRef) (res components.GetAlarmRes, err error)
func (*PostgresProvider) GetLeasedAlarm ¶
func (p *PostgresProvider) GetLeasedAlarm(ctx context.Context, lease *ref.AlarmLease) (res components.GetLeasedAlarmRes, err error)
func (*PostgresProvider) HealthCheckInterval ¶
func (p *PostgresProvider) HealthCheckInterval() time.Duration
func (*PostgresProvider) LookupActor ¶
func (p *PostgresProvider) LookupActor(ctx context.Context, ref ref.ActorRef, opts components.LookupActorOpts) (components.LookupActorRes, error)
func (*PostgresProvider) RegisterHost ¶
func (p *PostgresProvider) RegisterHost(ctx context.Context, req components.RegisterHostReq) (components.RegisterHostRes, error)
func (*PostgresProvider) ReleaseAlarmLease ¶
func (p *PostgresProvider) ReleaseAlarmLease(ctx context.Context, lease *ref.AlarmLease) error
func (*PostgresProvider) RemoveActor ¶
func (*PostgresProvider) RenewAlarmLeases ¶
func (p *PostgresProvider) RenewAlarmLeases(ctx context.Context, req components.RenewAlarmLeasesReq) (res components.RenewAlarmLeasesRes, err error)
func (*PostgresProvider) RenewLeaseInterval ¶
func (p *PostgresProvider) RenewLeaseInterval() time.Duration
func (*PostgresProvider) SetAlarm ¶
func (p *PostgresProvider) SetAlarm(ctx context.Context, ref ref.AlarmRef, req components.SetAlarmReq) error
func (*PostgresProvider) SetState ¶
func (p *PostgresProvider) SetState(ctx context.Context, ref ref.ActorRef, data []byte, opts components.SetStateOpts) error
func (*PostgresProvider) UnregisterHost ¶
func (p *PostgresProvider) UnregisterHost(ctx context.Context, hostID string) error
func (*PostgresProvider) UpdateActorHost ¶
func (p *PostgresProvider) UpdateActorHost(ctx context.Context, hostID string, req components.UpdateActorHostReq) error
func (*PostgresProvider) UpdateLeasedAlarm ¶
func (p *PostgresProvider) UpdateLeasedAlarm(ctx context.Context, lease *ref.AlarmLease, req components.UpdateLeasedAlarmReq) (err error)
type PostgresProviderOptions ¶
type PostgresProviderOptions struct {
components.ProviderOptions
// Connection string for the Postgres database
// This allows the provider to establish a new database connection
ConnectionString string
// Connection to an existing database
DB *pgxpool.Pool
// Timeout for requests to the database
Timeout time.Duration
// Interval at which to perform garbage collection
CleanupInterval time.Duration
// contains filtered or unexported fields
}
func (PostgresProviderOptions) GetPgxPoolConfig ¶
func (o PostgresProviderOptions) GetPgxPoolConfig() (*pgxpool.Config, error)
GetPgxPoolConfig parses the database connection string and returns the pgxpool.Config object
Click to show internal directories.
Click to hide internal directories.