Documentation ¶
Overview ¶
Package app provides the web server for modernising-lpa.
Index ¶
- Constants
- func App(devMode bool, logger *slog.Logger, localizer page.Localizer, ...) http.Handler
- func NewUidStore(dynamoClient DynamoUpdateClient, searchClient SearchClient, ...) *uidStore
- type DynamoClient
- type DynamoUpdateClient
- type ErrorHandler
- type Logger
- type S3Client
- type SearchClient
- type SessionStore
Constants ¶
View Source
const ( None handleOpt = 1 << iota RequireSession )
Variables ¶
This section is empty.
Functions ¶
func App ¶
func App( devMode bool, logger *slog.Logger, localizer page.Localizer, lang localize.Lang, tmpls, donorTmpls, certificateProviderTmpls, attorneyTmpls, supporterTmpls, voucherTmpls template.Templates, sessionStore *sesh.Store, lpaDynamoClient DynamoClient, appPublicURL string, payClient *pay.Client, notifyClient *notify.Client, addressClient *place.Client, oneLoginClient *onelogin.Client, s3Client S3Client, eventClient *event.Client, lpaStoreClient *lpastore.Client, searchClient *search.Client, ) http.Handler
func NewUidStore ¶ added in v0.805.0
func NewUidStore(dynamoClient DynamoUpdateClient, searchClient SearchClient, now func() time.Time) *uidStore
Types ¶
type DynamoClient ¶
type DynamoClient interface { AllByKeys(ctx context.Context, keys []dynamo.Keys) ([]map[string]dynamodbtypes.AttributeValue, error) AllByPartialSK(ctx context.Context, pk dynamo.PK, partialSK dynamo.SK, v interface{}) error AllBySK(ctx context.Context, sk dynamo.SK, v interface{}) error AllByLpaUIDAndPartialSK(ctx context.Context, uid string, partialSK dynamo.SK, v interface{}) error AllKeysByPK(ctx context.Context, pk dynamo.PK) ([]dynamo.Keys, error) AnyByPK(ctx context.Context, pk dynamo.PK, v interface{}) error BatchPut(ctx context.Context, items []interface{}) error Create(ctx context.Context, v interface{}) error CreateOnly(ctx context.Context, v interface{}) error DeleteKeys(ctx context.Context, keys []dynamo.Keys) error DeleteOne(ctx context.Context, pk dynamo.PK, sk dynamo.SK) error LatestForActor(ctx context.Context, sk dynamo.SK, v interface{}) error Move(ctx context.Context, oldKeys dynamo.Keys, value any) error One(ctx context.Context, pk dynamo.PK, sk dynamo.SK, v interface{}) error OneByPK(ctx context.Context, pk dynamo.PK, v interface{}) error OneByPartialSK(ctx context.Context, pk dynamo.PK, partialSK dynamo.SK, v interface{}) error OneBySK(ctx context.Context, sk dynamo.SK, v interface{}) error OneByUID(ctx context.Context, uid string, v interface{}) error Put(ctx context.Context, v interface{}) error Update(ctx context.Context, pk dynamo.PK, sk dynamo.SK, values map[string]dynamodbtypes.AttributeValue, expression string) error WriteTransaction(ctx context.Context, transaction *dynamo.Transaction) error }
type DynamoUpdateClient ¶ added in v0.805.0
type DynamoUpdateClient interface {
WriteTransaction(ctx context.Context, transaction *dynamo.Transaction) error
}
type ErrorHandler ¶ added in v0.930.0
type ErrorHandler func(http.ResponseWriter, *http.Request, error)
type SearchClient ¶ added in v0.1045.0
type SessionStore ¶
type SessionStore interface {
Login(r *http.Request) (*sesh.LoginSession, error)
}
Click to show internal directories.
Click to hide internal directories.