com.informix.json

## Class Bytes

- java.lang.Object
- - org.bson.BSON
  - - com.informix.json.Bytes

    public class Bytes
    extends org.bson.BSON

Class that hold definitions of the wire protocol

### Nested Class Summary

Nested Classes
`static class` `Bytes.OptionHolder`

### Field Summary

Fields
`static java.util.logging.Logger` `LOGGER`
`static int` `MAX_OBJECT_SIZE` this size is set low to 4MB, but just serves as safe default
`static java.nio.ByteOrder` `ORDER` Little-endian
`static int` `QUERYOPTION_AWAITDATA` Use with TailableCursor.
`static int` `QUERYOPTION_EXHAUST` Stream the data down full blast in multiple "more" packages, on the assumption that the client will fully read all data queried.
`static int` `QUERYOPTION_NOTIMEOUT` The server normally times out idle cursors after an inactivity period (10 minutes) to prevent excess memory use.
`static int` `QUERYOPTION_OPLOGREPLAY` Internal replication use only - driver should not set
`static int` `QUERYOPTION_PARTIAL` Use with sharding (mongos).
`static int` `QUERYOPTION_SLAVEOK` When turned on, read queries will be directed to slave servers instead of the primary server.
`static int` `QUERYOPTION_TAILABLE` Tailable means cursor is not closed when the last data is retrieved.
`static int` `RESULTFLAG_AWAITCAPABLE` Set when the server supports the AwaitData Query option.
`static int` `RESULTFLAG_CURSORNOTFOUND` Set when getMore is called but the cursor id is not valid at the server.
`static int` `RESULTFLAG_ERRSET` Set when query failed.
`static int` `RESULTFLAG_SHARDCONFIGSTALE` Drivers should ignore this.

### Fields inherited from class org.bson.BSON

`_utf8, ARRAY, B_BINARY, B_FUNC, B_GENERAL, B_UUID, BINARY, BOOLEAN, CODE, CODE_W_SCOPE, DATE, EOO, MAXKEY, MINKEY, NULL, NUMBER, NUMBER_INT, NUMBER_LONG, OBJECT, OID, REF, REGEX, STRING, SYMBOL, TIMESTAMP, UNDEFINED`

### Constructor Summary

Constructors
Constructor and Description
`Bytes()`

### Method Summary

Methods
`static byte` `getType(java.lang.Object o)` Gets the type byte for a given object.

### Methods inherited from class org.bson.BSON

`addDecodingHook, addEncodingHook, applyDecodingHooks, applyEncodingHooks, clearAllHooks, clearDecodingHooks, clearEncodingHooks, decode, encode, getDecodingHooks, getEncodingHooks, hasDecodeHooks, regexFlag, regexFlags, regexFlags, removeDecodingHook, removeDecodingHooks, removeEncodingHook, removeEncodingHooks, toInt`

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

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

### Field Detail

#### LOGGER

    public static final java.util.logging.Logger LOGGER

#### ORDER

    public static final java.nio.ByteOrder ORDER

Little-endian

#### MAX_OBJECT_SIZE

    public static final int MAX_OBJECT_SIZE

this size is set low to 4MB, but just serves as safe default

See Also:
  Constant Field Values

#### QUERYOPTION_TAILABLE

    public static final int QUERYOPTION_TAILABLE

Tailable means cursor is not closed when the last data is retrieved. Rather, the cursor marks the final object's position. You can resume using the cursor later, from where it was located, if more data were received. Like any "latent cursor", the cursor may become invalid at some point (CursorNotFound) – for example if the final object it references were deleted.

See Also:
  Constant Field Values

#### QUERYOPTION_SLAVEOK

    public static final int QUERYOPTION_SLAVEOK

When turned on, read queries will be directed to slave servers instead of the primary server.

See Also:
  Constant Field Values

#### QUERYOPTION_OPLOGREPLAY

    public static final int QUERYOPTION_OPLOGREPLAY

Internal replication use only - driver should not set

See Also:
  Constant Field Values

#### QUERYOPTION_NOTIMEOUT

    public static final int QUERYOPTION_NOTIMEOUT

The server normally times out idle cursors after an inactivity period (10 minutes) to prevent excess memory use. Set this option to prevent that.

See Also:
  Constant Field Values

#### QUERYOPTION_AWAITDATA

    public static final int QUERYOPTION_AWAITDATA

Use with TailableCursor. If we are at the end of the data, block for a while rather than returning no data. After a timeout period, we do return as normal.

See Also:
  Constant Field Values

#### QUERYOPTION_EXHAUST

    public static final int QUERYOPTION_EXHAUST

Stream the data down full blast in multiple "more" packages, on the assumption that the client will fully read all data queried. Faster when you are pulling a lot of data and know you want to pull it all down. Note: the client is not allowed to not read all the data unless it closes the connection.

See Also:
  Constant Field Values

#### QUERYOPTION_PARTIAL

    public static final int QUERYOPTION_PARTIAL

Use with sharding (mongos). Allows partial results from a sharded system if any shards are down/missing from the cluster. If not used an error will be returned from the mongos server.

See Also:
  Constant Field Values

#### RESULTFLAG_CURSORNOTFOUND

    public static final int RESULTFLAG_CURSORNOTFOUND

Set when getMore is called but the cursor id is not valid at the server. Returned with zero results.

See Also:
  Constant Field Values

#### RESULTFLAG_ERRSET

    public static final int RESULTFLAG_ERRSET

Set when query failed. Results consist of one document containing an "$err" field describing the failure.

See Also:
  Constant Field Values

#### RESULTFLAG_SHARDCONFIGSTALE

    public static final int RESULTFLAG_SHARDCONFIGSTALE

Drivers should ignore this. Only mongos will ever see this set, in which case, it needs to update config from the server.

See Also:
  Constant Field Values

#### RESULTFLAG_AWAITCAPABLE

    public static final int RESULTFLAG_AWAITCAPABLE

Set when the server supports the AwaitData Query option. If it doesn't, a client should sleep a little between getMore's of a Tailable cursor. Mongod version 1.6 supports AwaitData and thus always sets AwaitCapable.

See Also:
  Constant Field Values

### Constructor Detail

#### Bytes

    public Bytes()

### Method Detail

#### getType

    public static byte getType(java.lang.Object o)

Gets the type byte for a given object.

Parameters:
  `o` - the object
Returns:
  the byte value associated with the type, or -1 if no type is matched