org.apache.ignite.internal.util.distributed

## Class FullMessage<R extends Serializable>

- java.lang.Object
- - org.apache.ignite.internal.util.distributed.FullMessage<R>

Type Parameters:
  `R` - Result type.

All Implemented Interfaces:
  Serializable, DiscoveryCustomMessage

    public class FullMessage<R extends Serializable>
    extends Object
    implements DiscoveryCustomMessage

Full process message. Contains single nodes results.

See Also:
  `DistributedProcess`, `InitMessage`, `SingleNodeMessage`, Serialized Form

### Constructor Summary

Constructors
Constructor and Description
`FullMessage(UUID processId, DistributedProcess.DistributedProcessType type, Map<UUID,R> res, Map<UUID,Exception> err)`

### Method Summary

All Methods Instance Methods Concrete Methods
`@Nullable DiscoveryCustomMessage` `ackMessage()` Called when custom message has been handled by all nodes.
`DiscoCache` `createDiscoCache(GridDiscoveryManager mgr, AffinityTopologyVersion topVer, DiscoCache discoCache)` Creates new discovery cache if message caused topology version change.
`Map<UUID,Exception>` `error()`
`IgniteUuid` `id()`
`boolean` `isMutable()`
`UUID` `processId()`
`Map<UUID,R>` `result()`
`String` `toString()`
`int` `type()`

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

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

### Constructor Detail

#### FullMessage

    public FullMessage(UUID processId,
                       DistributedProcess.DistributedProcessType type,
                       Map<UUID,R> res,
                       Map<UUID,Exception> err)

Parameters:
  `processId` - Process id.
  `type` - Process type.
  `res` - Results.
  `err` - Errors

### Method Detail

#### id

    public IgniteUuid id()

Specified by:
  `id` in interface `DiscoveryCustomMessage`
Returns:
  Unique custom message ID.

#### ackMessage

    @Nullable
    public @Nullable DiscoveryCustomMessage ackMessage()

Called when custom message has been handled by all nodes.

Specified by:
  `ackMessage` in interface `DiscoveryCustomMessage`
Returns:
  Ack message or `null` if ack is not required.

#### isMutable

    public boolean isMutable()

Specified by:
  `isMutable` in interface `DiscoveryCustomMessage`
Returns:
  `True` if message can be modified during listener notification. Changes will be sent to next nodes.

#### createDiscoCache

    public DiscoCache createDiscoCache(GridDiscoveryManager mgr,
                                       AffinityTopologyVersion topVer,
                                       DiscoCache discoCache)

Creates new discovery cache if message caused topology version change.

Specified by:
  `createDiscoCache` in interface `DiscoveryCustomMessage`
Parameters:
  `mgr` - Discovery manager.
  `topVer` - New topology version.
  `discoCache` - Current discovery cache.
Returns:
  Reused discovery cache.

#### processId

    public UUID processId()

Returns:
  Process id.

#### type

    public int type()

Returns:
  Process type.

#### result

    public Map<UUID,R> result()

Returns:
  Nodes results.

#### error

    public Map<UUID,Exception> error()

Returns:
  Nodes errors.

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`

${current.year} Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Database and Caching Platform | : ver. 2.11.1
Release Date | : December 20 2021