Package com.io7m.smfj.format.binary2.internal.serial

## Class SMFB2SerializerDataAttributesNonInterleaved

- java.lang.Object
- - com.io7m.smfj.format.binary2.internal.serial.SMFB2SerializerDataAttributesNonInterleaved

- All Implemented Interfaces:
    `SMFSerializerDataAttributesNonInterleavedType`, `java.io.Closeable`, `java.lang.AutoCloseable`

      public final class SMFB2SerializerDataAttributesNonInterleaved
      extends java.lang.Object
      implements SMFSerializerDataAttributesNonInterleavedType

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `SMFB2SerializerDataAttributesNonInterleaved​(SMFHeader inHeader, com.io7m.jbssio.api.BSSWriterSequentialType inWriter)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `close()` |
    `SMFSerializerDataAttributesValuesType` | `serializeData​(SMFAttributeName name)` | Start serializing data for a single attribute.
    `SMFB2SerializerDataAttributesNonInterleaved` | `start()` |

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

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

- - ### Constructor Detail

    - #### SMFB2SerializerDataAttributesNonInterleaved

          public SMFB2SerializerDataAttributesNonInterleaved​(SMFHeader inHeader,
                                                             com.io7m.jbssio.api.BSSWriterSequentialType inWriter)

  - ### Method Detail

    - #### start

          public SMFB2SerializerDataAttributesNonInterleaved start()
                                                            throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### serializeData

          public SMFSerializerDataAttributesValuesType serializeData​(SMFAttributeName name)
                                                              throws java.lang.IllegalArgumentException,
                                                                     java.io.IOException

      Description copied from interface: `SMFSerializerDataAttributesNonInterleavedType`

      Start serializing data for a single attribute.

      This method must be called once for each attribute in the header passed to `SMFSerializerType.serializeHeader(com.io7m.smfj.core.SMFHeader)` in the order the attributes are specified by `SMFHeader.attributesInOrder()`.

      If the method raises an exception, the serializer is considered to have failed and all subsequent method calls will raise `IllegalArgumentException`.

      Specified by:
        `serializeData` in interface `SMFSerializerDataAttributesNonInterleavedType`
      Parameters:
        `name` - The attribute name
      Returns:
        A serializer for the data values
      Throws:
        `java.lang.IllegalArgumentException` - Iff the given attribute is not the next expected attribute
        `java.io.IOException` - On I/O errors

    - #### close

          public void close()
                     throws java.io.IOException

      Specified by:
        `close` in interface `java.lang.AutoCloseable`
      Specified by:
        `close` in interface `java.io.Closeable`
      Throws:
        `java.io.IOException`