- public static String getDataPath(Node node) throws RepositoryException {
- assert node != null;
- String userId = node.getSession().getUserID();
-// if (log.isTraceEnabled())
-// log.trace(userId + " : " + node.getPath());
- StringBuilder buf = new StringBuilder();
- boolean isAnonymous = userId.equalsIgnoreCase(NodeConstants.ROLE_ANONYMOUS);
- if (isAnonymous)
- buf.append(WEBDAV_PUBLIC);
- else
- buf.append(WEBDAV_PRIVATE);
- Session session = node.getSession();
- Repository repository = session.getRepository();
- String cn;
- if (repository.isSingleValueDescriptor(NodeConstants.CN)) {
- cn = repository.getDescriptor(NodeConstants.CN);
- } else {
-// log.warn("No cn defined in repository, using " + NodeConstants.NODE);
- cn = NodeConstants.NODE;
+ static boolean asBoolean(String value) {
+ if (value == null)
+ return false;
+ switch (value) {
+ case "true":
+ return true;
+ case "false":
+ return false;
+ default:
+ throw new IllegalArgumentException(
+ "Unsupported value for attribute " + DataModelNamespace.ABSTRACT + ": " + value);