diff --git a/bundles/org.eclipse.emf.emfstore.server/src/org/eclipse/emf/emfstore/internal/server/core/EMFStoreImpl.java b/bundles/org.eclipse.emf.emfstore.server/src/org/eclipse/emf/emfstore/internal/server/core/EMFStoreImpl.java index 2828119f0..fdc3c75f3 100644 --- a/bundles/org.eclipse.emf.emfstore.server/src/org/eclipse/emf/emfstore/internal/server/core/EMFStoreImpl.java +++ b/bundles/org.eclipse.emf.emfstore.server/src/org/eclipse/emf/emfstore/internal/server/core/EMFStoreImpl.java @@ -167,6 +167,7 @@ protected void addSubInterface(AbstractSubEmfstoreInterface iface) { */ public Object invoke(Object obj, final Method method, final Object[] args) throws ESException { final ESMethodInvocation methodInvocation = new ESMethodInvocation(method.getName(), args); + getAccessControl().getAuthorizationService().checkAccess(methodInvocation); final Object[] adjustedArgs = adjustParameters(args); diff --git a/tests/org.eclipse.emf.emfstore.server.test/src/org/eclipse/emf/emfstore/server/accesscontrol/test/CreateProjectTest.java b/tests/org.eclipse.emf.emfstore.server.test/src/org/eclipse/emf/emfstore/server/accesscontrol/test/CreateProjectTest.java index 7dd08b04c..3cf7831d5 100644 --- a/tests/org.eclipse.emf.emfstore.server.test/src/org/eclipse/emf/emfstore/server/accesscontrol/test/CreateProjectTest.java +++ b/tests/org.eclipse.emf.emfstore.server.test/src/org/eclipse/emf/emfstore/server/accesscontrol/test/CreateProjectTest.java @@ -44,7 +44,12 @@ public static void afterClass() { @Test(expected = AccessControlException.class) public void shareProjectNotPA() throws ESException { - ProjectUtil.share(getUsersession(), getLocalProject()); + try { + ProjectUtil.share(getUsersession(), getLocalProject()); + } catch (final ESException ex) { + assertTrue(getServerMock().getServerSpace().getProjects().isEmpty()); + throw ex; + } } @Test