org.apache.poi.hsmf.datatypes

## Class RecipientChunks

- java.lang.Object
- - org.apache.poi.hsmf.datatypes.RecipientChunks

- All Implemented Interfaces:
    ChunkGroup, ChunkGroupWithProperties

      public final class RecipientChunks
      extends java.lang.Object
      implements ChunkGroupWithProperties

  Collection of convenience chunks for the Recip(ient) part of an outlook file. If a message has multiple recipients, there will be several of these.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `RecipientChunks.RecipientChunksSorter` Orders by the recipient number.

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static MAPIProperty` | `DELIVERY_TYPE`
    `StringChunk` | `deliveryTypeChunk` Normally EX or SMTP.
    `static java.lang.String` | `PREFIX`
    `static MAPIProperty` | `RECIPIENT_DISPLAY_NAME`
    `static MAPIProperty` | `RECIPIENT_EMAIL_ADDRESS`
    `static MAPIProperty` | `RECIPIENT_NAME`
    `static MAPIProperty` | `RECIPIENT_SEARCH`
    `static MAPIProperty` | `RECIPIENT_SMTP_ADDRESS`
    `StringChunk` | `recipientDisplayNameChunk` The display name of the recipient.
    `StringChunk` | `recipientEmailChunk` The email address of the recipient, which could be in SMTP or SEARCH format, but isn't always present...
    `StringChunk` | `recipientNameChunk` The "name", which could be their name if an internal person, or their email address if an external person
    `int` | `recipientNumber` Our 0 based position in the list of recipients
    `ByteChunk` | `recipientSearchChunk` TODO
    `StringChunk` | `recipientSMTPChunk` The smtp destination email address of the recipient, but isn't always present...

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `RecipientChunks(java.lang.String name)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `chunksComplete()` Called by the parser when all chunks have been found.
    `Chunk[]` | `getAll()`
    `Chunk[]` | `getChunks()` Returns the chunks that make up the group.
    `java.util.Map<MAPIProperty,java.util.List<PropertyValue>>` | `getProperties()` Returns all the Properties contained in the Chunk, along with their Values.
    `java.lang.String` | `getRecipientEmailAddress()` Tries to find their email address, in whichever chunk holds it given the delivery type.
    `java.lang.String` | `getRecipientName()` Tries to find their name, in whichever chunk holds it.
    `void` | `record(Chunk chunk)` Called by the parser whenever a chunk is found.

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

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

- - ### Field Detail

    - #### PREFIX

          public static final java.lang.String PREFIX

      See Also:
        Constant Field Values

    - #### RECIPIENT_NAME

          public static final MAPIProperty RECIPIENT_NAME

    - #### DELIVERY_TYPE

          public static final MAPIProperty DELIVERY_TYPE

    - #### RECIPIENT_EMAIL_ADDRESS

          public static final MAPIProperty RECIPIENT_EMAIL_ADDRESS

    - #### RECIPIENT_SEARCH

          public static final MAPIProperty RECIPIENT_SEARCH

    - #### RECIPIENT_SMTP_ADDRESS

          public static final MAPIProperty RECIPIENT_SMTP_ADDRESS

    - #### RECIPIENT_DISPLAY_NAME

          public static final MAPIProperty RECIPIENT_DISPLAY_NAME

    - #### recipientNumber

          public int recipientNumber

      Our 0 based position in the list of recipients

    - #### recipientSearchChunk

          public ByteChunk recipientSearchChunk

      TODO

    - #### recipientNameChunk

          public StringChunk recipientNameChunk

      The "name", which could be their name if an internal person, or their email address if an external person

    - #### recipientEmailChunk

          public StringChunk recipientEmailChunk

      The email address of the recipient, which could be in SMTP or SEARCH format, but isn't always present...

    - #### recipientSMTPChunk

          public StringChunk recipientSMTPChunk

      The smtp destination email address of the recipient, but isn't always present...

    - #### deliveryTypeChunk

          public StringChunk deliveryTypeChunk

      Normally EX or SMTP. Will generally affect where the email address ends up.

    - #### recipientDisplayNameChunk

          public StringChunk recipientDisplayNameChunk

      The display name of the recipient. Normally seems to hold the same value as in recipientNameChunk

  - ### Constructor Detail

    - #### RecipientChunks

          public RecipientChunks(java.lang.String name)

  - ### Method Detail

    - #### getRecipientName

          public java.lang.String getRecipientName()

      Tries to find their name, in whichever chunk holds it.

    - #### getRecipientEmailAddress

          public java.lang.String getRecipientEmailAddress()

      Tries to find their email address, in whichever chunk holds it given the delivery type.

    - #### getProperties

          public java.util.Map<MAPIProperty,java.util.List<PropertyValue>> getProperties()

      Description copied from interface: `ChunkGroupWithProperties`
      Returns all the Properties contained in the Chunk, along with their Values. Normally, each property will have one value, sometimes none, and rarely multiple (normally for Unknown etc). For fixed sized properties, the value can be fetched straight from the `PropertyValue`. For variable sized properties, you'll need to go via the chunk.
      Specified by:
        `getProperties` in interface `ChunkGroupWithProperties`

    - #### getAll

          public Chunk[] getAll()

    - #### getChunks

          public Chunk[] getChunks()

      Description copied from interface: `ChunkGroup`
      Returns the chunks that make up the group. Should certainly contain all the interesting Chunks, but needn't always contain all of the Chunks.
      Specified by:
        `getChunks` in interface `ChunkGroup`

    - #### record

          public void record(Chunk chunk)

      Called by the parser whenever a chunk is found.
      Specified by:
        `record` in interface `ChunkGroup`

    - #### chunksComplete

          public void chunksComplete()

      Description copied from interface: `ChunkGroup`
      Called by the parser when all chunks have been found.
      Specified by:
        `chunksComplete` in interface `ChunkGroup`

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