public function getContext()
    {
        if (!$this->locked) {
            throw new Exception\LogicException(
                'Context is not yet available. You must first call handleRequest()'
            );
        }

        if (null === $this->context) {
            $this->context = new Context\Context();
            $this->context
                ->setVisibleColumns(array_keys($this->columns))
                ->setMaxPerPage($this->config->getPerPageChoices()[0]);
        }

        return $this->context;
    }