org.apache.poi.hssf.record

## Class FileSharingRecord

- java.lang.Object
- - org.apache.poi.hssf.record.RecordBase
  - - org.apache.poi.hssf.record.Record
    - - org.apache.poi.hssf.record.StandardRecord
      - - org.apache.poi.hssf.record.FileSharingRecord

- All Implemented Interfaces:
    Duplicatable

      public final class FileSharingRecord
      extends StandardRecord

  Stores the encrypted readonly for a workbook (write protect).

  This functionality is accessed from the options dialog box available when performing 'Save As'.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static short` | `sid`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `FileSharingRecord()`
    `FileSharingRecord(FileSharingRecord other)`
    `FileSharingRecord(RecordInputStream in)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `FileSharingRecord` | `clone()` Deprecated.
    `FileSharingRecord` | `copy()`
    `protected int` | `getDataSize()`
    `short` | `getPassword()`
    `short` | `getReadOnly()` get the readonly
    `short` | `getSid()` return the non static version of the id for this record.
    `java.lang.String` | `getUsername()`
    `void` | `serialize(LittleEndianOutput out)` Write the data content of this BIFF record.
    `void` | `setPassword(short password)`
    `void` | `setReadOnly(short readonly)` set the readonly flag
    `void` | `setUsername(java.lang.String username)`
    `java.lang.String` | `toString()` get a string representation of the record (for biffview/debugging)

    - ### Methods inherited from class org.apache.poi.hssf.record.StandardRecord

      `getRecordSize, serialize`

    - ### Methods inherited from class org.apache.poi.hssf.record.Record

      `cloneViaReserialise, serialize`

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### sid

          public static final short sid

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### FileSharingRecord

          public FileSharingRecord()

    - #### FileSharingRecord

          public FileSharingRecord(FileSharingRecord other)

    - #### FileSharingRecord

          public FileSharingRecord(RecordInputStream in)

  - ### Method Detail

    - #### setReadOnly

          public void setReadOnly(short readonly)

      set the readonly flag
      Parameters:
        `readonly` - 1 for true, not 1 for false

    - #### getReadOnly

          public short getReadOnly()

      get the readonly
      Returns:
        short representing if this is read only (1 = true)

    - #### setPassword

          public void setPassword(short password)

      Parameters:
        `password` - hashed password

    - #### getPassword

          public short getPassword()

      Returns:
        password hashed with hashPassword() (very lame)

    - #### getUsername

          public java.lang.String getUsername()

      Returns:
        username of the user that created the file

    - #### setUsername

          public void setUsername(java.lang.String username)

      Parameters:
        `username` - of the user that created the file

    - #### toString

          public java.lang.String toString()

      Description copied from class: `Record`
      get a string representation of the record (for biffview/debugging)
      Overrides:
        `toString` in class `Record`

    - #### serialize

          public void serialize(LittleEndianOutput out)

      Description copied from class: `StandardRecord`
      Write the data content of this BIFF record. The 'ushort sid' and 'ushort size' header fields have already been written by the superclass.

      The number of bytes written must equal the record size reported by `RecordBase.getRecordSize()`} minus four ( record header consisting of a 'ushort sid' and 'ushort reclength' has already been written by their superclass).

      Specified by:
        `serialize` in class `StandardRecord`
      Parameters:
        `out` - the output object

    - #### getDataSize

          protected int getDataSize()

      Specified by:
        `getDataSize` in class `StandardRecord`

    - #### getSid

          public short getSid()

      Description copied from class: `Record`
      return the non static version of the id for this record.
      Specified by:
        `getSid` in class `Record`
      Returns:
        he id for this record

    - #### clone

          @Deprecated
           @Removal(version="5.0.0")
          public FileSharingRecord clone()

      Deprecated.
      Overrides:
        `clone` in class `java.lang.Object`

    - #### copy

          public FileSharingRecord copy()

      Specified by:
        `copy` in interface `Duplicatable`
      Specified by:
        `copy` in class `StandardRecord`
      Returns:
        a deep copy of the implementing class / instance

Copyright 2020 The Apache Software Foundation or its licensors, as applicable.