Skip to content

Releases: CareLogistics/somni

1.0.0 Release Candidate 1

26 Jun 13:01
Compare
Choose a tag to compare

Somni 1.0.0-RC1

library divided into packages & namespaces

  • somni.http package for HTTP functionality
    • errors.clj - default handlers for various HTTP error codes
    • forms.clj - form decoding
    • mime.clj - fast mime & accept header deciphering
  • somni.middleware package for middleware somni uses
    • access_control.clj - access control middleware based upon multimethods
      • multimethods control request -> identity deciphering for wrap-authentication
      • authoriization currently expects identity to be a map that includes :roles
    • bindings.clj - enables keyword definition in :uri to be lifted into :params
    • exceptions.clj - coerces exceptions into 500 errors
    • to_ring.clj - coerces standard clojure data into ring response
    • validation.clj - validates schemas defined on :body or ring request
    • negotiator.clj - multimethod based content negotiation
    • injectors.clj - allows non-ring functions to be called as ring handlers
  • somni - top level package for somni's primary functionality
    • misc.clj - a few basic, possibly useful functions
    • router.clj - a trie based router that supports wildcard paths
    • stacker.clj - stacks middleware based upon resource configuration

somni.clj

Uses stacker & router to build a ring request handler.