## org.apache.hadoop.fs.permission
Class FsPermission

    java.lang.Object
      org.apache.hadoop.fs.permission.FsPermission

All Implemented Interfaces:
  Writable

    public class FsPermission

extends Object
implements Writable

A class for file/directory permissions.

Field Summary
`static int` `DEFAULT_UMASK`
`static String` `DEPRECATED_UMASK_LABEL` umask property label
`static String` `UMASK_LABEL`

Constructor Summary
`FsPermission(FsAction u, FsAction g, FsAction o)` Construct by the given `FsAction`.
`FsPermission(FsPermission other)` Copy constructor
`FsPermission(short mode)` Construct by the given mode.
`FsPermission(String mode)` Construct by given mode, either in octal or symbolic format.

Method Summary
`FsPermission` `applyUMask(FsPermission umask)` Apply a umask to this permission and return a new one
`static FsPermission` `createImmutable(short permission)` Create an immutable `FsPermission` object.
`boolean` `equals(Object obj)`
`void` `fromShort(short n)`
`static FsPermission` `getDefault()` Get the default permission.
`FsAction` `getGroupAction()` Return group `FsAction`.
`FsAction` `getOtherAction()` Return other `FsAction`.
`static FsPermission` `getUMask(Configuration conf)` Get the user file creation mask (umask) `UMASK_LABEL` config param has umask value that is either symbolic or octal.
`FsAction` `getUserAction()` Return user `FsAction`.
`int` `hashCode()`
`static FsPermission` `read(DataInput in)` Create and initialize a `FsPermission` from `DataInput`.
`void` `readFields(DataInput in)` Deserialize the fields of this object from `in`.
`static void` `setUMask(Configuration conf, FsPermission umask)` Set the user file creation mask (umask)
`short` `toShort()` Encode the object to a short.
`String` `toString()`
`static FsPermission` `valueOf(String unixSymbolicPermission)` Create a FsPermission from a Unix symbolic permission string
`void` `write(DataOutput out)` Serialize the fields of this object to `out`.

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### DEPRECATED_UMASK_LABEL

    public static final String DEPRECATED_UMASK_LABEL

  umask property label

  See Also:
    Constant Field Values

### UMASK_LABEL

    public static final String UMASK_LABEL

See Also:
  Constant Field Values

### DEFAULT_UMASK

    public static final int DEFAULT_UMASK

See Also:
  Constant Field Values

Constructor Detail

### FsPermission

    public FsPermission(FsAction u,
                        FsAction g,
                        FsAction o)

  Construct by the given `FsAction`.

  Parameters:
    `u` - user action
    `g` - group action
    `o` - other action

### FsPermission

    public FsPermission(short mode)

  Construct by the given mode.

  Parameters:
    `mode` -
  See Also:
    `toShort()`

### FsPermission

    public FsPermission(FsPermission other)

  Copy constructor

  Parameters:
    `other` - other permission

### FsPermission

    public FsPermission(String mode)

  Construct by given mode, either in octal or symbolic format.

  Parameters:
    `mode` - mode as a string, either in octal or symbolic format
  Throws:
    `IllegalArgumentException` - if `mode` is invalid

Method Detail

### createImmutable

    public static FsPermission createImmutable(short permission)

  Create an immutable `FsPermission` object.

### getUserAction

    public FsAction getUserAction()

  Return user `FsAction`.

### getGroupAction

    public FsAction getGroupAction()

  Return group `FsAction`.

### getOtherAction

    public FsAction getOtherAction()

  Return other `FsAction`.

### fromShort

    public void fromShort(short n)

### write

    public void write(DataOutput out)
               throws IOException

  Serialize the fields of this object to `out`.

  Specified by:
    `write` in interface `Writable`
  Parameters:
    `out` - `DataOuput` to serialize this object into.
  Throws:
    `IOException`

### readFields

    public void readFields(DataInput in)
                    throws IOException

  Deserialize the fields of this object from `in`.

  For efficiency, implementations should attempt to re-use storage in the existing object where possible.

  Specified by:
    `readFields` in interface `Writable`
  Parameters:
    `in` - `DataInput` to deseriablize this object from.
  Throws:
    `IOException`

### read

    public static FsPermission read(DataInput in)
                             throws IOException

  Create and initialize a `FsPermission` from `DataInput`.

  Throws:
    `IOException`

### toShort

    public short toShort()

  Encode the object to a short.

### equals

    public boolean equals(Object obj)

  Overrides:
    `equals` in class `Object`

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `Object`

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

### applyUMask

    public FsPermission applyUMask(FsPermission umask)

  Apply a umask to this permission and return a new one

### getUMask

    public static FsPermission getUMask(Configuration conf)

  Get the user file creation mask (umask) `UMASK_LABEL` config param has umask value that is either symbolic or octal. Symbolic umask is applied relative to file mode creation mask; the permission op characters '+' clears the corresponding bit in the mask, '-' sets bits in the mask. Octal umask, the specified bits are set in the file mode creation mask. `DEPRECATED_UMASK_LABEL` config param has umask value set to decimal.

### setUMask

    public static void setUMask(Configuration conf,
                                FsPermission umask)

  Set the user file creation mask (umask)

### getDefault

    public static FsPermission getDefault()

  Get the default permission.

### valueOf

    public static FsPermission valueOf(String unixSymbolicPermission)

  Create a FsPermission from a Unix symbolic permission string

  Parameters:
    `unixSymbolicPermission` - e.g. "-rw-rw-rw-"

Copyright © 2009 The Apache Software Foundation