Adds routing middleware for post method

@param string   $path     The route path
@param function $callback The middleware handler

@return Eden\Server\Index
540920
public function post($path, $callback)
    {
        Argument::i()
            //argument 1 should be a string
            ->test(1, 'string')
            //argument 2 should be callable
            ->test(2, 'callable');
        
        return $this->route('post', $path, $callback);
    }
371085
public static function get($url, $callback)
    {
        $route = new self($url);
        $route->setClosure($callback);
        $route->setMethod('get');

        $route->add();

        return $route;
    }
1154666
public function addRoute($method, $route, $callback)
    {
        return $this->routes[] = new Route(strtoupper($method), $route, $callback);
    }
539535
public function addMiddleware($callback)
    {
        $this->middlewares[] = function (Callable $next, Request $request, Response $response) use ($callback) {
            $container = Container::getInstance();
            $parameters = array_merge([
                "request"   => $request,
                "response"  => $response,
                "next"      => $next
            ], $request->getData());

            $container->call($callback, $parameters);
        };
    }
138353
protected function addRoute($flag, $route, $callback)
    {
        $route = $this->preparePrefix($route);

        return $this->collection->addRoute($flag, new Route(
            $route,
            $callback
        ));
    }
152534
public function run($callback = null)
    {
        // Check before routing middle ware and trigger
        $this->beforeRoutingMiddleware();
        // Set after routing event
        $this->setAfterRoutingMiddleWare();
        // Handle all routes
        $handledRequest = 0;
        if (isset($this->routes[$this->request->server->get('REQUEST_METHOD')])) {
            $flag = (!is_null($this->afterRouter)) ? true : false;

            $handledRequest = $this->handle($this->routes[$this->request->server->get('REQUEST_METHOD')], $flag);
        }

        // If no route was handled, trigger the 404 (if any)
        if ($handledRequest == 0) {
            if (!is_null($this->notFound) && is_callable($this->notFound)) {
                return call_user_func($this->notFound);
            }
        }
    }
1024122
public static function put( $route = null, $callback = null ) {
		// Make sure that our parameters are what they say they are
		$args = self::smart_parameters( func_get_args() );

		return self::route( 'PUT', $args[ 'route' ], $args[ 'callback' ] );
	}
1056273
public static function post($url, $callback)
    {
        $route = new self($url);
        $route->setClosure($callback);
        $route->setMethod('post');

        $route->add();

        return $route;
    }
24520
public static function delete($path, $callback)
    {
        self::instance()->addRoute('DELETE', $path, self::callback($callback));
    }
718495
public static function factory( $callback, $params = array() ) {
		$route = new static();
		$route->callback = $callback;
		$route->params = $params;
		return $route;
	}
1165748
public function any(string $url, $callback): Route
    {
        $route = new Route(['GET', 'HEAD', 'POST', 'PUT', 'PATCH', 'DELETE', 'OPTIONS'], $url, $callback);
        $this->addRoute($route);

        return $route;
    }
477938
public static function post($path, $handlerMethod = null)
    {
        return self::factory($path, HttpMethods::POST, $handlerMethod);
    }
642115
public function route($name, $path, callable $callback)
    {
        // Modifying path from colon parameters /show/:id to bracket parameters /show/{id}
        $path = preg_replace("|(:(\w+))|", '{$2}', $path);

        // if the route is anonymous
        if (!$name) {
            $name = "N".uniqid();
        }

        $map = $this["router"]->getMap();
        $route = $map->route($name, $path, $callback);

        return $route;
    }
36330
public static function options($path, $callback)
    {
        self::instance()->addRoute('OPTIONS', $path, self::callback($callback));
    }
978476
public function post($path, callable $handler): RouterInterface
    {
        $ruler = $this->createRuler('POST', $path);
        return $this->addRuler($ruler, $handler);
    }
1226816
public static function post($path, $callback)
    {
        self::instance()->addRoute('POST', $path, self::callback($callback));
    }
590609
protected function addRoute($method, $pattern, $callback, array $middleware = null, $name = null)
    {
        $concatenatedPattern = (!is_null($this->prefix) ? '/' . $this->prefix : '') .
            $pattern;

        $this->collector->addRoute(strtoupper($method), $concatenatedPattern, new Route($callback, $middleware));

        if ($name !== null) {
            $this->namedRoutes[$name] = $concatenatedPattern;
        }
    }