Loading vospace-ui-backend/src/main/java/it/inaf/ia2/vospace/ui/service/NodeInfo.java +12 −2 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ public class NodeInfo { private final String groupWrite; private final boolean isPublic; private final boolean asyncTrans; private final boolean sticky; private final boolean busy; private final boolean listOfFiles; Loading @@ -40,6 +41,7 @@ public class NodeInfo { this.groupWrite = getGroupWrite(node); this.isPublic = isPublic(node); this.asyncTrans = isAsyncTrans(node); this.sticky = isSticky(node); this.busy = isBusy(node); this.listOfFiles = isListOfFiles(node); } Loading Loading @@ -70,11 +72,15 @@ public class NodeInfo { } private boolean isPublic(Node node) { return getProperty(node, NodeProperties.PUBLIC_READ_URI).map(value -> "t".equals(value)).orElse(false); return getProperty(node, NodeProperties.PUBLIC_READ_URI).map(value -> "true".equals(value)).orElse(false); } private boolean isAsyncTrans(Node node) { return getProperty(node, "urn:async_trans").map(value -> "t".equals(value)).orElse(false); return getProperty(node, NodeProperties.ASYNC_TRANS_URN).map(value -> "true".equals(value)).orElse(false); } private boolean isSticky(Node node) { return getProperty(node, NodeProperties.STICKY_URN).map(value -> "true".equals(value)).orElse(false); } private boolean isBusy(Node node) { Loading Loading @@ -175,6 +181,10 @@ public class NodeInfo { return asyncTrans; } public boolean isSticky() { return sticky; } public boolean isBusy() { return busy; } Loading vospace-ui-backend/src/main/java/it/inaf/ia2/vospace/ui/service/NodesService.java +6 −5 Original line number Diff line number Diff line Loading @@ -3,6 +3,7 @@ package it.inaf.ia2.vospace.ui.service; import it.inaf.ia2.aa.data.User; import it.inaf.ia2.vospace.ui.client.VOSpaceClient; import it.inaf.ia2.vospace.ui.data.ListNodeData; import it.inaf.oats.vospace.datamodel.NodeProperties; import it.inaf.oats.vospace.datamodel.NodeUtils; import java.io.IOException; import java.io.StringWriter; Loading Loading @@ -75,7 +76,7 @@ public class NodesService { html += "<td>" + nodeInfo.getGroupRead() + "</td>"; html += "<td>" + nodeInfo.getGroupWrite() + "</td>"; html += "<td>"; if (NodeUtils.checkIfWritable(node, user.getName(), user.getGroups())) { if (NodeUtils.checkIfWritable(node, user.getName(), user.getGroups()) && !nodeInfo.isSticky()) { html += "<span class=\"icon trash-icon pointer\" onclick=\"deleteNode('" + nodeInfo.getPath() + "')\"></span>"; } html += "</td>"; Loading Loading
vospace-ui-backend/src/main/java/it/inaf/ia2/vospace/ui/service/NodeInfo.java +12 −2 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ public class NodeInfo { private final String groupWrite; private final boolean isPublic; private final boolean asyncTrans; private final boolean sticky; private final boolean busy; private final boolean listOfFiles; Loading @@ -40,6 +41,7 @@ public class NodeInfo { this.groupWrite = getGroupWrite(node); this.isPublic = isPublic(node); this.asyncTrans = isAsyncTrans(node); this.sticky = isSticky(node); this.busy = isBusy(node); this.listOfFiles = isListOfFiles(node); } Loading Loading @@ -70,11 +72,15 @@ public class NodeInfo { } private boolean isPublic(Node node) { return getProperty(node, NodeProperties.PUBLIC_READ_URI).map(value -> "t".equals(value)).orElse(false); return getProperty(node, NodeProperties.PUBLIC_READ_URI).map(value -> "true".equals(value)).orElse(false); } private boolean isAsyncTrans(Node node) { return getProperty(node, "urn:async_trans").map(value -> "t".equals(value)).orElse(false); return getProperty(node, NodeProperties.ASYNC_TRANS_URN).map(value -> "true".equals(value)).orElse(false); } private boolean isSticky(Node node) { return getProperty(node, NodeProperties.STICKY_URN).map(value -> "true".equals(value)).orElse(false); } private boolean isBusy(Node node) { Loading Loading @@ -175,6 +181,10 @@ public class NodeInfo { return asyncTrans; } public boolean isSticky() { return sticky; } public boolean isBusy() { return busy; } Loading
vospace-ui-backend/src/main/java/it/inaf/ia2/vospace/ui/service/NodesService.java +6 −5 Original line number Diff line number Diff line Loading @@ -3,6 +3,7 @@ package it.inaf.ia2.vospace.ui.service; import it.inaf.ia2.aa.data.User; import it.inaf.ia2.vospace.ui.client.VOSpaceClient; import it.inaf.ia2.vospace.ui.data.ListNodeData; import it.inaf.oats.vospace.datamodel.NodeProperties; import it.inaf.oats.vospace.datamodel.NodeUtils; import java.io.IOException; import java.io.StringWriter; Loading Loading @@ -75,7 +76,7 @@ public class NodesService { html += "<td>" + nodeInfo.getGroupRead() + "</td>"; html += "<td>" + nodeInfo.getGroupWrite() + "</td>"; html += "<td>"; if (NodeUtils.checkIfWritable(node, user.getName(), user.getGroups())) { if (NodeUtils.checkIfWritable(node, user.getName(), user.getGroups()) && !nodeInfo.isSticky()) { html += "<span class=\"icon trash-icon pointer\" onclick=\"deleteNode('" + nodeInfo.getPath() + "')\"></span>"; } html += "</td>"; Loading