ash-framework / roadmap

0 stars 0 forks source link

Create httpContext base class #29

Closed digitalsadhu closed 8 years ago

digitalsadhu commented 8 years ago

Wrapper for expresses request and response objects. Also includes a custom property for passing values through the request lifecycle.

const _request = new WeakMap()
const _response = new WeakMap()
const _context = new WeakMap()

class HttpContext {
  constructor (request, response) {
    _request.set(this, request)
    _response.set(this, request)
    _context.set(this, new Map())
  }
  get request () {
    return _request.get(this)
  }
  get response () {
    return _response.get(this)
  }
  get (key) {
    return _context.get(this).get(key)
  }
  set (key, value) {
    _context.get(this).set(key, value)
  }
}