hydrate-mongodb
Version:
An Object Document Mapper (ODM) for MongoDB.
92 lines (91 loc) • 3.93 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var arrayMapping_1 = require("./arrayMapping");
var booleanMapping_1 = require("./booleanMapping");
var classMapping_1 = require("./classMapping");
var dateMapping_1 = require("./dateMapping");
var entityMapping_1 = require("./entityMapping");
var enumMapping_1 = require("./enumMapping");
var numberMapping_1 = require("./numberMapping");
var objectMapping_1 = require("./objectMapping");
var regExpMapping_1 = require("./regExpMapping");
var stringMapping_1 = require("./stringMapping");
var tupleMapping_1 = require("./tupleMapping");
var property_1 = require("./property");
var converterMapping_1 = require("./converterMapping");
var bufferMapping_1 = require("./bufferMapping");
var persistenceError_1 = require("../persistenceError");
var MappingModel;
(function (MappingModel) {
function createProperty(name, mapping) {
if (!name) {
throw new persistenceError_1.PersistenceError("Missing required argument 'name'.");
}
if (!mapping) {
throw new persistenceError_1.PersistenceError("Missing required argument 'mapping'.");
}
return new property_1.Property(name, mapping);
}
MappingModel.createProperty = createProperty;
function createArrayMapping(elementMapping) {
if (!elementMapping) {
throw new persistenceError_1.PersistenceError("Missing required argument 'elementMapping'.");
}
return new arrayMapping_1.ArrayMapping(elementMapping);
}
MappingModel.createArrayMapping = createArrayMapping;
function createBooleanMapping() {
return new booleanMapping_1.BooleanMapping();
}
MappingModel.createBooleanMapping = createBooleanMapping;
function createClassMapping(baseClass) {
return new classMapping_1.ClassMapping(baseClass);
}
MappingModel.createClassMapping = createClassMapping;
function createDateMapping() {
return new dateMapping_1.DateMapping();
}
MappingModel.createDateMapping = createDateMapping;
function createEntityMapping(baseClass) {
return new entityMapping_1.EntityMapping(baseClass);
}
MappingModel.createEntityMapping = createEntityMapping;
function createEnumMapping(members, ignoreCase) {
if (!members) {
throw new persistenceError_1.PersistenceError("Missing required argument 'members'.");
}
return new enumMapping_1.EnumMapping(members, ignoreCase);
}
MappingModel.createEnumMapping = createEnumMapping;
function createNumberMapping() {
return new numberMapping_1.NumberMapping();
}
MappingModel.createNumberMapping = createNumberMapping;
function createObjectMapping() {
return new objectMapping_1.ObjectMapping();
}
MappingModel.createObjectMapping = createObjectMapping;
function createRegExpMapping() {
return new regExpMapping_1.RegExpMapping();
}
MappingModel.createRegExpMapping = createRegExpMapping;
function createStringMapping() {
return new stringMapping_1.StringMapping();
}
MappingModel.createStringMapping = createStringMapping;
function createConverterMapping(converter) {
return new converterMapping_1.ConverterMapping(converter);
}
MappingModel.createConverterMapping = createConverterMapping;
function createBufferMapping() {
return new bufferMapping_1.BufferMapping();
}
MappingModel.createBufferMapping = createBufferMapping;
function createTupleMapping(elementMappings) {
if (!elementMappings) {
throw new persistenceError_1.PersistenceError("Missing required argument 'elementMappings'.");
}
return new tupleMapping_1.TupleMapping(elementMappings);
}
MappingModel.createTupleMapping = createTupleMapping;
})(MappingModel = exports.MappingModel || (exports.MappingModel = {}));