Author: tdraier
Date: Thu Dec 27 16:53:39 2007
New Revision: 19422
URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D19422&repname=
=3Djahia
Log:
fixed files acl assignments
Modified:
branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/serv=
ices/content/JCRFileNodeWrapper.java
branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/serv=
ices/content/impl/jackrabbit/JackrabbitFileNodeWrapper.java
Modified: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahi=
a/services/content/JCRFileNodeWrapper.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-3-=
DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/services/content/JCRFileNodeW=
rapper.java&rev=3D19422&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/serv=
ices/content/JCRFileNodeWrapper.java (original)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/serv=
ices/content/JCRFileNodeWrapper.java Thu Dec 27 16:53:39 2007
@@ -96,7 +96,7 @@
if (mon !=3D null) mon.stop();
}
=
- private Node getSystemNode() throws RepositoryException {
+ protected Node getSystemNode() throws RepositoryException {
Session systemSession =3D jcrProvider.getSystemSession();
return (Node) systemSession.getItem(objectNode.getPath());
}
@@ -153,21 +153,22 @@
if (exception !=3D null) {
return false;
}
- if (READ.equals(perm)) {
- if (objectNode !=3D null) {
+ try {
+ if (READ.equals(perm)) {
+ if (objectNode !=3D null) {
+ return true;
+ }
+ } else if (WRITE.equals(perm)) {
+ session.checkPermission(objectNode.getPath(), "set_proper=
ty");
return true;
- }
- } else if (WRITE.equals(perm) || MANAGE.equals(perm)) {
- try {
+ } else if (MANAGE.equals(perm)) {
session.checkPermission(objectNode.getPath(), "set_proper=
ty");
return true;
- } catch (AccessControlException e) {
- return false;
- } catch (RepositoryException re) {
- logger.error("Cannot check perm ",re);
- return false;
- } =
- } else if (MANAGE.equals(perm)) {
+ }
+ } catch (AccessControlException e) {
+ return false;
+ } catch (RepositoryException re) {
+ logger.error("Cannot check perm ",re);
return false;
}
=
Modified: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahi=
a/services/content/impl/jackrabbit/JackrabbitFileNodeWrapper.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-3-=
DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/services/content/impl/jackrab=
bit/JackrabbitFileNodeWrapper.java&rev=3D19422&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/serv=
ices/content/impl/jackrabbit/JackrabbitFileNodeWrapper.java (original)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/serv=
ices/content/impl/jackrabbit/JackrabbitFileNodeWrapper.java Thu Dec 27 16:5=
3:39 2007
@@ -34,7 +34,7 @@
String myPath =3D objectNode.getPath();
=
Map permissions =3D new HashMap();
- recurseonACPs(permissions, getObjectNode());
+ recurseonACPs(permissions, getSystemNode());
=
for (Iterator iterator =3D permissions.keySet().iterator(); it=
erator.hasNext();) {
int p =3D 0;
@@ -116,8 +116,7 @@
System.arraycopy(den.toArray(),0,dens,0,den.size());
aced.setProperty("jcr:privileges",dens);
=
- session.getItem("/jcr:system/jcr:accessControl").save();
- objectNode.save();
+ acl.save();
} catch (RepositoryException e) {
e.printStackTrace(); //To change body of catch statement use =
File | Settings | File Templates.
}
@@ -150,14 +149,18 @@
=
private Node getAcl() throws RepositoryException {
Node acl;
- if (!objectNode.isNodeType("mix:accessControlled")) {
- Node ac =3D (Node) session.getItem("/jcr:system/jcr:accessCont=
rol");
- Node acp =3D ac.addNode("j:acp"+objectNode.getUUID(), "nt:acce=
ssControlPolicy");
+ Node systemNode =3D getSystemNode();
+ if (!systemNode.isNodeType("mix:accessControlled")) {
+ Node ac =3D (Node) jcrProvider.getSystemSession().getItem("/jc=
r:system/jcr:accessControl");
+ Node acp =3D ac.addNode("j:acp"+ systemNode.getUUID(), "nt:acc=
essControlPolicy");
acl =3D acp.addNode("jcr:acl", "nt:acl");
- objectNode.addMixin("mix:accessControlled");
- objectNode.setProperty("jcr:accessControlPolicy", acp);
+ ac.save();
+ systemNode.addMixin("mix:accessControlled");
+ systemNode.setProperty("jcr:accessControlPolicy", acp);
+ systemNode.save();
+ objectNode.refresh(true);
} else {
- Node acp =3D objectNode.getProperty("jcr:accessControlPolicy")=
.getNode();
+ Node acp =3D systemNode.getProperty("jcr:accessControlPolicy")=
.getNode();
acl =3D acp.getNode("jcr:acl");
}
return acl;
_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list