# Poco

# namespace MongoDB

## Overview

Classes: Array, BSONReader, BSONWriter, Binary, ConcreteElement, Connection, Cursor, Database, DeleteRequest, Document, Element, ElementComparator, ElementFindByName, ElementTraits, GetMoreRequest, InsertRequest, JavaScriptCode, KillCursorsRequest, Message, MessageHeader, ObjectId, PooledConnection, QueryRequest, RegularExpression, ReplicaSet, RequestMessage, ResponseMessage, UpdateRequest

Types: ElementSet, NullValue

## Classes

### class Array

Implements the BSON Array

### class BSONReader

Class for reading BSON from a Poco::BinaryReader

### class BSONWriter

Class for writing BSON to a Poco::BinaryWriter.

### class Binary

Implements BSON Binary.

### class ConcreteElement

### class Connection

Represents a connection to a MongoDB server

### class Cursor

Cursor is an helper class for querying multiple documents

### class Database

Database is a helper class for creating requests.

### class DeleteRequest

Class for creating an OP_DELETE client request.

### class Document

Represents a BSON document

### class Element

Represents an element of a Document or an Array

### class ElementComparator

### class ElementFindByName

### struct ElementTraits

### class GetMoreRequest

Class for creating an OP_GETMORE client request.

### class InsertRequest

Class for creating an OP_INSERT client request.

### class JavaScriptCode

Represents JavaScript type in BSON

### class KillCursorsRequest

Class for creating an OP_KILL_CURSORS client request.

### class Message

Base class for all messages send or retrieved from MongoDB server

### class MessageHeader

Represents the header which is always prepended to a request or response of MongoDB

### class ObjectId

ObjectId is a 12-byte BSON type, constructed using: - a 4-byte timestamp, - a 3-byte machine identifier, - a 2-byte process id, and - a 3-byte counter, starting with a random value.

### class PooledConnection

Helper class for borrowing and returning a connection automatically from a pool.

### class QueryRequest

Class for creating an OP_QUERY client request.

### class RegularExpression

Represents a regular expression in BSON format

### class ReplicaSet

Class for working with a replicaset

### class RequestMessage

Base class for a request

### class ResponseMessage

Class that represents a response (OP_REPLY) from MongoDB

### class UpdateRequest

Class for creating an OP_UPDATE client request.

## Types

### ElementSet

typedef std::set < Element::Ptr, ElementComparator > ElementSet;

### NullValue

typedef Nullable < unsigned char > NullValue;