Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * This program is free software; you can redistribute it and/or modify it under the 
  * terms of the GNU Lesser General Public License, version 2.1 as published by the Free Software 
  * Foundation.
  *
  * You should have received a copy of the GNU Lesser General Public License along with this 
  * program; if not, you can obtain a copy at http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html 
  * or from the Free Software Foundation, Inc., 
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; 
 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 * See the GNU Lesser General Public License for more details.
 *
 * Copyright 2012-2013 Pentaho Corporation.  All rights reserved.
 *
 */
package org.pentaho.platform.api.repository2.unified;

Repository file permission enumeration. These are the permission "bits." Loosely based on Mac OS X File System Access Control Policy bits.

Why no EXECUTE?

See JCR-2446.

Why no APPEND?

Some implementations of these bits may not be able to distinguish between a file create and update. In this case, APPEND is useless. In the case of JCR, one might reasonably map APPEND to set_property and WRITE to add_node. However, even an update on a file might involve the addition of a node.

Why no DELETE_CHILD?

DELETE_CHILD was believed to be too technical for end users to understand.

Why no DELETE?

DELETE mapped to jcr:removeNode which was also required for WRITE. So if you had WRITE, you had DELETE, making DELETE redundant.

Author(s):
mlowery
  READ, WRITE, /*EXECUTE,*/ DELETE, /*APPEND,*/ /*DELETE_CHILD,*/ ACL_MANAGEMENT, /*READ_ACL, WRITE_ACL,*/ ALL;
New to GrepCode? Check out our FAQ X