## org.apache.poi.hpsf
Class MutableProperty

    java.lang.Object
      org.apache.poi.hpsf.Property
          org.apache.poi.hpsf.MutableProperty

Direct Known Subclasses:
  CustomProperty

    public class MutableProperty

extends Property

Adds writing capability to the `Property` class.

Please be aware that this class' functionality will be merged into the `Property` class at a later time, so the API will change.

Author:
  Rainer Klute <klute@rainer-klute.de>

Field Summary

Fields inherited from class org.apache.poi.hpsf.Property
`id, type, value`

Constructor Summary
`MutableProperty()` Creates an empty property.
`MutableProperty(Property p)` Creates a `MutableProperty` as a copy of an existing `Property`.

Method Summary
`void` `setID(long id)` Sets the property's ID.
`void` `setType(long type)` Sets the property's type.
`void` `setValue(java.lang.Object value)` Sets the property's value.
`int` `write(java.io.OutputStream out, int codepage)` Writes the property to an output stream.

Methods inherited from class org.apache.poi.hpsf.Property
`equals, getID, getSize, getType, getValue, hashCode, readDictionary, toString`

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

Constructor Detail

### MutableProperty

    public MutableProperty()

  Creates an empty property. It must be filled using the set method to be usable.

### MutableProperty

    public MutableProperty(Property p)

  Creates a `MutableProperty` as a copy of an existing `Property`.

  Parameters:
    `p` - The property to copy.

Method Detail

### setID

    public void setID(long id)

  Sets the property's ID.

  Parameters:
    `id` - the ID

### setType

    public void setType(long type)

  Sets the property's type.

  Parameters:
    `type` - the property's type

### setValue

    public void setValue(java.lang.Object value)

  Sets the property's value.

  Parameters:
    `value` - the property's value

### write

    public int write(java.io.OutputStream out,
                     int codepage)
              throws java.io.IOException,
                     WritingNotSupportedException

  Writes the property to an output stream.

  Parameters:
    `out` - The output stream to write to.
    `codepage` - The codepage to use for writing non-wide strings
  Returns:
    the number of bytes written to the stream
  Throws:
    `java.io.IOException` - if an I/O error occurs
    `WritingNotSupportedException` - if a variant type is to be written that is not yet supported

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