public function remove($id)
    {
        if (!$this->has($id)) {
            throw new NotFoundException(sprintf('%s not found in %s', $id, __CLASS__));
        }

        unset($this->objects[$id]);
    }