JackrabbitSessionFacade extends SessionFacade<JackrabbitSession> implements JackrabbitSession { @Override public boolean hasPermission(final @NotNull String absPath, final @NotNull String... actions) throws RepositoryException { return delegate.hasPermission(absPath, actions); } @SuppressWarnings("WeakerAccess")  JackrabbitSessionFacade(final @NotNull JackrabbitSession delegate, final boolean notProtected); @Override boolean hasPermission(final @NotNull String absPath, final @NotNull String... actions); @Override PrincipalManager getPrincipalManager(); @Override UserManager getUserManager(); @Override Item getItemOrNull(final String absPath); @Override Property getPropertyOrNull(final String absPath); @Override Node getNodeOrNull(final String absPath);  }
@Test public void testHasPermission() throws Exception { inspectForTest(session -> { final JackrabbitSessionFacade facade = new JackrabbitSessionFacade(session, true); assertTrue("admin should have read on root", facade.hasPermission("/", Session.ACTION_READ)); assertTrue("admin should have read and set_property on root", facade.hasPermission("/", Session.ACTION_READ, Session.ACTION_SET_PROPERTY)); }); }