Forked from
DM / dm-docs
261 commits behind, 293 commits ahead of the upstream repository.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
datasetCollection.py 1.25 KiB
#!/usr/bin/env python
from dm.common.utility.loggingManager import LoggingManager
from dm.common.exceptions.invalidArgument import InvalidArgument
from dm.common.exceptions.objectAlreadyExists import ObjectAlreadyExists
from dm.common.exceptions.objectNotFound import ObjectNotFound
from dm.common.exceptions.dbError import DbError
from dmMongoCollection import DmMongoCollection
class DatasetCollection(DmMongoCollection):
"""Class responsible for updating dataset collection in mongo db."""
UNIQUE_KEYS_LIST = [ 'name' ]
def __init__(self, dbClient):
DmMongoCollection.__init__(self, 'datasets', dbClient)
#######################################################################
# Testing
if __name__ == '__main__':
from dmMongoClient import DmMongoClient
mongo = DmMongoClient('dm')
datasetCollection = DatasetCollection(mongo)
datasetInfo = {'name' : 'ds-001',
'owner' : 'sv',
'experiment' : 'exp-001',
'voltage' : { 'gt' : 400},
'current' : { 'lt' : 100},
}
#print datasetCollection.add(datasetInfo)
print datasetCollection.updateByName(datasetInfo)
print datasetCollection.findByName('ds-001')
print datasetCollection.findByQueryDict({'dataset' : 'ds-001'}, {'owner' : 1})