Documentation ¶
Index ¶
- Variables
- type App
- type Config
- type Connection
- type Context
- type FileProvider
- type Map
- type Middleware
- type MiddlewareFunc
- type OktaSocialIdp
- type Renderer
- type Route
- type RouteAdapter
- type RouteHandler
- type RouteOptions
- type Router
- type Session
- type SessionID
- type SessionManager
- type User
- type ViewModel
Constants ¶
This section is empty.
Variables ¶
CookieExpireDelete may be set on Cookie.Expire for expiring the given cookie.
Functions ¶
This section is empty.
Types ¶
type App ¶
type App interface { Start() error Use(m Middleware) UseFunc(f MiddlewareFunc) }
App represents the AskMe application server
func NewApp ¶
func NewApp( config *Config, ctrl Router, fileProvider FileProvider, sessionStore SessionManager) App
NewApp Creates a new app server
type Config ¶
type Config struct { Debug bool Port int PublicFolder string SessionMaxLifeTime time.Duration SessionCookie string PostgresUser string PostgresPassword string PostgresDB string PostgresHost string OktaClient string OktaSecret string OktaIssuer string OktaSocialIdps []OktaSocialIdp }
Config configuration
type Connection ¶
Connection interface
func NewConnection ¶
func NewConnection(config *Config) Connection
NewConnection creates a new connection
type Context ¶
type Context interface { Session() *Session Request() *http.Request ResponseWriter() http.ResponseWriter Params() httprouter.Params User() *User Redirect(path string, code int) SetUser(*User) }
Context type
type FileProvider ¶
type FileProvider interface { List() []string String(name string) string Open(name string) (http.File, error) }
FileProvider fetches files by name
type MiddlewareFunc ¶
MiddlewareFunc adapter for funcs to middleware
type OktaSocialIdp ¶
OktaSocialIdp configuration
type Renderer ¶
type Renderer interface {
Render(w http.ResponseWriter, p ViewModel)
}
Renderer type
func NewRenderer ¶
func NewRenderer(fp FileProvider, config *Config) Renderer
NewRenderer creates a new rendere
type Route ¶
type Route struct { Method string Path string Options *RouteOptions Func RouteHandler }
Route captures the http actions of the controller
func (*Route) Authenticated ¶
Authenticated Adds authentication options
type RouteAdapter ¶
type RouteAdapter func(f RouteHandler) RouteHandler
type RouteHandler ¶
type RouteHandler func(context Context)
RouteHandler defines handler
func AdaptRoute ¶
func AdaptRoute(h RouteHandler, adapters ...RouteAdapter) RouteHandler
type Router ¶
type Router interface { Routes() []*Route Get(string, RouteHandler) *Route Post(string, RouteHandler) *Route Delete(string, RouteHandler) *Route Put(string, RouteHandler) *Route }
Router interface
type Session ¶
Session represents web session
type SessionManager ¶
SessionManager stores session info
func NewInMemorySessionStore ¶
func NewInMemorySessionStore(config *Config) SessionManager
NewInMemorySessionStore creates a new InMemory SessionStore