Package org.apache.solr.common.util

# Class FastJavaBinDecoder.EntryImpl

java.lang.Object
org.apache.solr.common.util.FastJavaBinDecoder.EntryImpl

All Implemented Interfaces:
  `DataEntry`

Enclosing class:
  `FastJavaBinDecoder`

public class FastJavaBinDecoder.EntryImpl extends Object implements DataEntry

## Nested Class Summary

## Nested classes/interfaces inherited from interface org.apache.solr.common.util.DataEntry

`DataEntry.EntryListener, DataEntry.FastDecoder, DataEntry.Type`

## Field Summary

Fields
Modifier and Type
Field
Description
`Object`
`ctx`

## Constructor Summary

Constructors
Constructor
Description
`EntryImpl()`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`boolVal()`
`void`
`callEnd()`
`Object`
`ctx()`
This is the object shared in the parent container in the {`DataEntry.listenContainer(Object, EntryListener)`} method
`int`
`depth()`
Depth of this Object.
`double`
`doubleVal()`
`float`
`floatVal()`
`FastJavaBinDecoder.Tag`
`getTag()`
`long`
`index()`
The index of this entry in the container
`int`
`intVal()`
`boolean`
`isKeyValEntry()`
If this object is a key value entry.
`int`
`length()`
If it is a non-primitive type and size is known in advance
`void`
`listenContainer(Object ctx, DataEntry.EntryListener listener)`
Register a listener to get callbacks for all entries
`long`
`longVal()`
`Object`
`metadata()`
Some Objects may have metadata.
`CharSequence`
`name()`
The name, if this is a map entry , else it returns a null
`DataEntry`
`parent()`
If this is a child of another container object this returns a non-null value
`DataEntry.Type`
`type()`
The data type
`Object`
`val()`
The object value

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

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

### Methods inherited from interface org.apache.solr.common.util.DataEntry

`strValue`

## Field Details

### ctx

public Object ctx

## Constructor Details

### EntryImpl

public EntryImpl()

## Method Details

### index

public long index()
Description copied from interface: `DataEntry`
The index of this entry in the container

Specified by:
  `index` in interface `DataEntry`

### length

public int length()
Description copied from interface: `DataEntry`
If it is a non-primitive type and size is known in advance

if it's a map/list, it's the no:of items in this container

if it's a {`CharSequence`} or byte[] , it's the no:of bytes in the stream

Specified by:
  `length` in interface `DataEntry`
Returns:
  a number greater than or equal to zero if the size is known, -1 if unknown

### getTag

public FastJavaBinDecoder.Tag getTag()

### boolVal

public boolean boolVal()

Specified by:
  `boolVal` in interface `DataEntry`

### isKeyValEntry

public boolean isKeyValEntry()
Description copied from interface: `DataEntry`
If this object is a key value entry. key value entries have name

Specified by:
  `isKeyValEntry` in interface `DataEntry`

### name

public CharSequence name()
Description copied from interface: `DataEntry`
The name, if this is a map entry , else it returns a null

Specified by:
  `name` in interface `DataEntry`

### depth

public int depth()
Description copied from interface: `DataEntry`
Depth of this Object. The root most object has a depth of 1

Specified by:
  `depth` in interface `DataEntry`

### parent

public DataEntry parent()
Description copied from interface: `DataEntry`
If this is a child of another container object this returns a non-null value

Specified by:
  `parent` in interface `DataEntry`
Returns:
  the parent container object

### metadata

public Object metadata()
Description copied from interface: `DataEntry`
Some Objects may have metadata. usually there is none

Specified by:
  `metadata` in interface `DataEntry`

### ctx

public Object ctx()
Description copied from interface: `DataEntry`
This is the object shared in the parent container in the {`DataEntry.listenContainer(Object, EntryListener)`} method

Specified by:
  `ctx` in interface `DataEntry`

### type

public DataEntry.Type type()
Description copied from interface: `DataEntry`
The data type

Specified by:
  `type` in interface `DataEntry`

### intVal

public int intVal()

Specified by:
  `intVal` in interface `DataEntry`

### longVal

public long longVal()

Specified by:
  `longVal` in interface `DataEntry`

### floatVal

public float floatVal()

Specified by:
  `floatVal` in interface `DataEntry`

### doubleVal

public double doubleVal()

Specified by:
  `doubleVal` in interface `DataEntry`

### val

public Object val()
Description copied from interface: `DataEntry`
The object value

Specified by:
  `val` in interface `DataEntry`

### listenContainer

public void listenContainer(Object ctx, DataEntry.EntryListener listener)
Description copied from interface: `DataEntry`
Register a listener to get callbacks for all entries

Specified by:
  `listenContainer` in interface `DataEntry`
Parameters:
  `ctx` - This is any object that should be shared with the child entry callbacks
  `listener` - The listener that handles each entry in this container

### callEnd

public void callEnd()