org.jfree.io

## Class SerialUtilities

- java.lang.Object
- - org.jfree.io.SerialUtilities

    public class SerialUtilities
    extends java.lang.Object

A class containing useful utility methods relating to serialization.

Author:
  David Gilbert

### Method Summary

Methods
`static boolean` `isSerializable(java.lang.Class c)` Returns `true` if a class implements `Serializable` and `false` otherwise.
`static java.text.AttributedString` `readAttributedString(java.io.ObjectInputStream stream)` Reads a `AttributedString` object that has been serialised by the `writeAttributedString(AttributedString, ObjectOutputStream)` method.
`static java.awt.Composite` `readComposite(java.io.ObjectInputStream stream)` Reads a `Composite` object that has been serialised by the `writeComposite(Composite, ObjectOutputStream)` method.
`static java.awt.Paint` `readPaint(java.io.ObjectInputStream stream)` Reads a `Paint` object that has been serialised by the `writePaint(Paint, ObjectOutputStream)` method.
`static java.awt.geom.Point2D` `readPoint2D(java.io.ObjectInputStream stream)` Reads a `Point2D` object that has been serialised by the `writePoint2D(Point2D, ObjectOutputStream)` method.
`static java.awt.Shape` `readShape(java.io.ObjectInputStream stream)` Reads a `Shape` object that has been serialised by the `writeShape(Shape, ObjectOutputStream)` method.
`static java.awt.Stroke` `readStroke(java.io.ObjectInputStream stream)` Reads a `Stroke` object that has been serialised by the `writeStroke(Stroke, ObjectOutputStream)` method.
`static void` `writeAttributedString(java.text.AttributedString as, java.io.ObjectOutputStream stream)` Serialises an `AttributedString` object.
`static void` `writeComposite(java.awt.Composite composite, java.io.ObjectOutputStream stream)` Serialises a `Composite` object.
`static void` `writePaint(java.awt.Paint paint, java.io.ObjectOutputStream stream)` Serialises a `Paint` object.
`static void` `writePoint2D(java.awt.geom.Point2D p, java.io.ObjectOutputStream stream)` Serialises a `Point2D` object.
`static void` `writeShape(java.awt.Shape shape, java.io.ObjectOutputStream stream)` Serialises a `Shape` object.
`static void` `writeStroke(java.awt.Stroke stroke, java.io.ObjectOutputStream stream)` Serialises a `Stroke` object.

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

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

### Method Detail

#### isSerializable

    public static boolean isSerializable(java.lang.Class c)

Returns `true` if a class implements `Serializable` and `false` otherwise.

Parameters:
  `c` - the class.
Returns:
  A boolean.

#### readPaint

    public static java.awt.Paint readPaint(java.io.ObjectInputStream stream)
                                    throws java.io.IOException,
                                           java.lang.ClassNotFoundException

Reads a `Paint` object that has been serialised by the `writePaint(Paint, ObjectOutputStream)` method.

Parameters:
  `stream` - the input stream (`null` not permitted).
Returns:
  The paint object (possibly `null`).
Throws:
  `java.io.IOException` - if there is an I/O problem.
  `java.lang.ClassNotFoundException` - if there is a problem loading a class.

#### writePaint

    public static void writePaint(java.awt.Paint paint,
                  java.io.ObjectOutputStream stream)
                           throws java.io.IOException

Serialises a `Paint` object.

Parameters:
  `paint` - the paint object (`null` permitted).
  `stream` - the output stream (`null` not permitted).
Throws:
  `java.io.IOException` - if there is an I/O error.

#### readStroke

    public static java.awt.Stroke readStroke(java.io.ObjectInputStream stream)
                                      throws java.io.IOException,
                                             java.lang.ClassNotFoundException

Reads a `Stroke` object that has been serialised by the `writeStroke(Stroke, ObjectOutputStream)` method.

Parameters:
  `stream` - the input stream (`null` not permitted).
Returns:
  The stroke object (possibly `null`).
Throws:
  `java.io.IOException` - if there is an I/O problem.
  `java.lang.ClassNotFoundException` - if there is a problem loading a class.

#### writeStroke

    public static void writeStroke(java.awt.Stroke stroke,
                   java.io.ObjectOutputStream stream)
                            throws java.io.IOException

Serialises a `Stroke` object. This code handles the `BasicStroke` class which is the only `Stroke` implementation provided by the JDK (and isn't directly `Serializable`).

Parameters:
  `stroke` - the stroke object (`null` permitted).
  `stream` - the output stream (`null` not permitted).
Throws:
  `java.io.IOException` - if there is an I/O error.

#### readComposite

    public static java.awt.Composite readComposite(java.io.ObjectInputStream stream)
                                            throws java.io.IOException,
                                                   java.lang.ClassNotFoundException

Reads a `Composite` object that has been serialised by the `writeComposite(Composite, ObjectOutputStream)` method.

Parameters:
  `stream` - the input stream (`null` not permitted).
Returns:
  The composite object (possibly `null`).
Throws:
  `java.io.IOException` - if there is an I/O problem.
  `java.lang.ClassNotFoundException` - if there is a problem loading a class.
Since:
  1.0.17

#### writeComposite

    public static void writeComposite(java.awt.Composite composite,
                      java.io.ObjectOutputStream stream)
                               throws java.io.IOException

Serialises a `Composite` object.

Parameters:
  `composite` - the composite object (`null` permitted).
  `stream` - the output stream (`null` not permitted).
Throws:
  `java.io.IOException` - if there is an I/O error.
Since:
  1.0.17

#### readShape

    public static java.awt.Shape readShape(java.io.ObjectInputStream stream)
                                    throws java.io.IOException,
                                           java.lang.ClassNotFoundException

Reads a `Shape` object that has been serialised by the `writeShape(Shape, ObjectOutputStream)` method.

Parameters:
  `stream` - the input stream (`null` not permitted).
Returns:
  The shape object (possibly `null`).
Throws:
  `java.io.IOException` - if there is an I/O problem.
  `java.lang.ClassNotFoundException` - if there is a problem loading a class.

#### writeShape

    public static void writeShape(java.awt.Shape shape,
                  java.io.ObjectOutputStream stream)
                           throws java.io.IOException

Serialises a `Shape` object.

Parameters:
  `shape` - the shape object (`null` permitted).
  `stream` - the output stream (`null` not permitted).
Throws:
  `java.io.IOException` - if there is an I/O error.

#### readPoint2D

    public static java.awt.geom.Point2D readPoint2D(java.io.ObjectInputStream stream)
                                             throws java.io.IOException

Reads a `Point2D` object that has been serialised by the `writePoint2D(Point2D, ObjectOutputStream)` method.

Parameters:
  `stream` - the input stream (`null` not permitted).
Returns:
  The point object (possibly `null`).
Throws:
  `java.io.IOException` - if there is an I/O problem.

#### writePoint2D

    public static void writePoint2D(java.awt.geom.Point2D p,
                    java.io.ObjectOutputStream stream)
                             throws java.io.IOException

Serialises a `Point2D` object.

Parameters:
  `p` - the point object (`null` permitted).
  `stream` - the output stream (`null` not permitted).
Throws:
  `java.io.IOException` - if there is an I/O error.

#### readAttributedString

    public static java.text.AttributedString readAttributedString(java.io.ObjectInputStream stream)
                                                           throws java.io.IOException,
                                                                  java.lang.ClassNotFoundException

Reads a `AttributedString` object that has been serialised by the `writeAttributedString(AttributedString, ObjectOutputStream)` method.

Parameters:
  `stream` - the input stream (`null` not permitted).
Returns:
  The attributed string object (possibly `null`).
Throws:
  `java.io.IOException` - if there is an I/O problem.
  `java.lang.ClassNotFoundException` - if there is a problem loading a class.

#### writeAttributedString

    public static void writeAttributedString(java.text.AttributedString as,
                             java.io.ObjectOutputStream stream)
                                      throws java.io.IOException

Serialises an `AttributedString` object.

Parameters:
  `as` - the attributed string object (`null` permitted).
  `stream` - the output stream (`null` not permitted).
Throws:
  `java.io.IOException` - if there is an I/O error.