37     public const EDIT = 
'edit';
    38     public const VIEW = 
'view';
    51             $DIC[
'static_url.uri_builder']
    63         if ($reference_id === null) {
    64             return $response_factory->
cannot();
    69         if ($additional_params === 
'_wsp') {
    74         $capability_context = new \ILIAS\File\Capabilities\Context(
    75             $reference_id->toObjectId()->toInt(),
    76             $reference_id->toInt(),
    77             \ILIAS\File\Capabilities\Context::CONTEXT_REPO
    80         $capabilities = $this->capabilities->get($capability_context);
    82         $capability = match ($additional_params) {
    83             self::DOWNLOAD => $capabilities->get(Capabilities::DOWNLOAD),
    84             self::VERSIONS => $capabilities->get(Capabilities::MANAGE_VERSIONS),
    85             self::EDIT => $capabilities->get(Capabilities::EDIT_EXTERNAL),
    86             self::VIEW => $capabilities->get(Capabilities::VIEW_EXTERNAL),
    87             default => $capabilities->get(Capabilities::INFO_PAGE),
    90         if (!$capability->isUnlocked() || $capability->getUri() === null) {
    94         $uri = $capability->getUri();
    96         return $response_factory->
can($uri->getPath() . 
'?' . $uri->getQuery());
 
getAdditionalParameters()
 
readonly CapabilityBuilder $capabilities
 
handle(Request $request, Context $context, Factory $response_factory)
 
__construct(Container $dic, ilPlugin $plugin)
 
static _gotoSharedWorkspaceNode(int $wsp_id)