org.apache.ignite.internal.processors.platform.datastructures

## Class PlatformAtomicReference

- java.lang.Object
- - org.apache.ignite.internal.processors.platform.PlatformAbstractTarget
  - - org.apache.ignite.internal.processors.platform.datastructures.PlatformAtomicReference

All Implemented Interfaces:
  PlatformTarget

    public class PlatformAtomicReference
    extends PlatformAbstractTarget

Platform atomic reference wrapper.

### Field Summary

### Fields inherited from class org.apache.ignite.internal.processors.platform.PlatformAbstractTarget

`FALSE, log, platformCtx, TRUE`

### Method Summary

Methods
`void` `close()` Closes this instance.
`static PlatformAtomicReference` `createInstance(PlatformContext ctx, String name, long memPtr, boolean create)` Creates an instance or returns null.
`boolean` `isClosed()` Returns a value indicating whether this instance has been closed.
`protected long` `processInStreamOutLong(int type, BinaryRawReaderEx reader)` Process IN operation.
`protected void` `processInStreamOutStream(int type, BinaryRawReaderEx reader, BinaryRawWriterEx writer)` Process IN-OUT operation.
`protected void` `processOutStream(int type, BinaryRawWriterEx writer)` Process OUT operation.

### Methods inherited from class org.apache.ignite.internal.processors.platform.PlatformAbstractTarget

`convertException, currentFuture, futureWriter, inObjectStreamOutStream, inStreamOutLong, inStreamOutObject, inStreamOutStream, listenFuture, listenFutureAndGet, listenFutureForOperation, listenFutureForOperationAndGet, outLong, outObject, outStream, platformContext, processInObjectStreamOutStream, processInStreamOutObject, processOutLong, processOutObject, throwUnsupported`

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

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

### Method Detail

#### createInstance

    public static PlatformAtomicReference createInstance(PlatformContext ctx,
                                         String name,
                                         long memPtr,
                                         boolean create)

Creates an instance or returns null.

Parameters:
  `ctx` - Context.
  `name` - Name.
  `memPtr` - Pointer to a stream with initial value. 0 for default value.
  `create` - Create flag.
Returns:
  Instance of a PlatformAtomicReference, or null when Ignite reference with specific name is null.

#### isClosed

    public boolean isClosed()

Returns a value indicating whether this instance has been closed.

Returns:
  Value indicating whether this instance has been closed.

#### close

    public void close()

Closes this instance.

#### processOutStream

    protected void processOutStream(int type,
                        BinaryRawWriterEx writer)
                             throws IgniteCheckedException

Process OUT operation.

Overrides:
  `processOutStream` in class `PlatformAbstractTarget`
Parameters:
  `type` - Type.
  `writer` - Binary writer.
Throws:
  `IgniteCheckedException` - In case of exception.

#### processInStreamOutLong

    protected long processInStreamOutLong(int type,
                              BinaryRawReaderEx reader)
                                   throws IgniteCheckedException

Process IN operation.

Overrides:
  `processInStreamOutLong` in class `PlatformAbstractTarget`
Parameters:
  `type` - Type.
  `reader` - Binary reader.
Returns:
  Result.
Throws:
  `IgniteCheckedException` - In case of exception.

#### processInStreamOutStream

    protected void processInStreamOutStream(int type,
                                BinaryRawReaderEx reader,
                                BinaryRawWriterEx writer)
                                     throws IgniteCheckedException

Process IN-OUT operation.

Overrides:
  `processInStreamOutStream` in class `PlatformAbstractTarget`
Parameters:
  `type` - Type.
  `reader` - Binary reader.
  `writer` - Binary writer.
Throws:
  `IgniteCheckedException` - In case of exception.

2015 Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Fabric | : ver. 1.7.0
Release Date | : August 1 2016