<?php namespace App\Libs;

class RequestContext{
    protected $data = array();

    public function instance()
    {
        return $this;
    }

    public function __get($name){
        if(array_key_exists($name, $this->data)){
            return $this->data[$name];
        }

        return null;
    }

    public function __set($name, $value){
        $this->data[$name] = $value;
    }

    public function __isset($name){
        return isset($this->data[$name]);
    }

    public function __unset($name){
        unset($this->data[$name]);
    }

    public function get($name) {
        if(array_key_exists($name, $this->data)){
            return $this->data[$name];
        }

        return null;
    }

    public function set($name, $value) {
        $this->data[$name] = $value;
    }
}
