-
Notifications
You must be signed in to change notification settings - Fork 5
Home
Jon Clausen edited this page Feb 6, 2016
·
12 revisions
CBMongoDB applies an Active Record to manage MongoDB documents and schema using a familiar syntax for CRUD operations, recordset processing and retrieval. It makes direct use of and provides a CFML interface to the Mongo 3.0 Java driver for advanced operations.
- Compatibility: ColdFusion 9.0.1+/Lucee 4.2+ w/ Coldbox 4+
- Module Version: 3.1.0.3 (Release Date: 12/12/2015)
- Mongo Java Driver Version: 3.1.0
- Compatibility Note: This module is no longer compatible with the CFMongoDB module, due to conflicting configuration keys.
Patch v3.2.0.3
- Fixes issues with ACF Compatibility
Patch v3.2.0.2
- Fixes issues with unexpected driver return types
- Adds
offset()
helper method (alias forset_offset()
) to ActiveEntity - Adds
isObjectId()
helper method to MongoUtil for detecting whether an object is a Mongo _id string
Patch v3.2.0.1
- Fixes issues with module load/unload connection operations
- Adds GridFS operational support
- Adds GridFS FileEntity model
- Fixes issues with
_id
queries not being typed appropriately - Fixes error when attempting to truncate a collection
Release v3.2.0.0
- Updates MongoDB Java driver to version 3.2.0
- Adds support for readConcern configuration option
Patch v3.1.0.4:
- Adds validation methods for entities and support for new property
ForceValidation
, which will prevent saving of documents which do not validate - Adds auto-normalization capabilities for schema properties. When attributes are configured, schema will auto-normalize when set() and populate() methods are called.
- Implements full support for component accessors on all schema properties. Var safe accessor closures are generated to allow recursion through an underscore delimiter (e.g.
getFirstLevel_SecondLevel()
to retrievegetDocument().FirstLevel.SecondLevel
) - Fixes native CFML data types not being sanitized on deeply nested structs and arrays.
- Add getDocument() and asStruct() utility methods, which can be used on unloaded and unloaded entities.
- Adds append() and prepend() functions to assit in managing document schema arrays.
- Fixes issues with property maps not being defined correctly and correct casting of boolean property defaults.
- Adds MongoIndexer singleton to delegate index management away from Entity instances.
Patch v3.1.0.3:
- Fixes issue with connections not being pooled accurately and adds connection closing to module unload
- Moves module bindings to onLoad() to ensure availability of cbjavaloader module
- Changes return type of all single record retrievals inserts and updates to native structs and adds auto-stringification of _id (eliminates the need for toString())
- Ensures version of returned object from findOneAndUpdate/findOneAndReplace operations is the after-save version
Major Release v3.1.0:
- Removes Requirement For CFMongoDB Module
- Adds Requirement for CBJavaloader Module
- Implements MongoDB 3.0 Driver
- Implements the ability to use multiple databases
- Implements the ability to configure databases at the entity level
- Implements Native Collection Methods for the 3.0 MongoCollection
- Implements CFML Aggregation methods while allowing direct access to native driver methods
- Implements CFML Map-Reduce methods
- Demonstrates 52% reduction in query execution times and database operations from the previous version
- Implements handlers for API documentation (/cmbongodb/docs) and Unit Tests (/cbmongodb/tests)
- Fixes issue with near() GEOSpatial operations on Polygon objects
- Re-factors Test Suite to Require the Framework Context
- Adds an asJSON argument to find() and findAll() entity queries
- Encapsulates all Collection Result queries to provide the following delivery methods: .asResult() - MongoIterable, .asCursor() - MongoIterator, .asArray(), asJSON()