comparison python/metadata.py @ 1004:75601be6019f

work on process
author Nicolas Saunier <nicolas.saunier@polymtl.ca>
date Sun, 03 Jun 2018 00:21:18 -0400
parents b50145235f9e
children
comparison
equal deleted inserted replaced
1003:75af46516b2b 1004:75601be6019f
348 'creates a session to query the filename' 348 'creates a session to query the filename'
349 engine = create_engine('sqlite:///'+filename) 349 engine = create_engine('sqlite:///'+filename)
350 Session = sessionmaker(bind=engine) 350 Session = sessionmaker(bind=engine)
351 return Session() 351 return Session()
352 352
353 def getSite(session, siteId): 353 def getSite(session, siteId = None, name = None, description = None):
354 'Returns the site(s) matching the index or the name' 354 'Returns the site(s) matching the index or the name'
355 if str.isdigit(siteId): 355 if siteId is not None:
356 return session.query(Site).filter(Site.idx == int(siteId)).all() 356 return session.query(Site).filter(Site.idx == int(siteId)).all()
357 elif name is not None:
358 return session.query(Site).filter(Site.description.like('%'+name+'%')).all()
359 elif description is not None:
360 return session.query(Site).filter(Site.description.like('%'+description+'%')).all()
357 else: 361 else:
358 return session.query(Site).filter(Site.description.like('%'+siteId+'%')).all() 362 print('No siteId, name or description have been provided to the function')
363 return []
359 364
360 def getCameraView(session, viewId): 365 def getCameraView(session, viewId):
361 'Returns the site(s) matching the index' 366 'Returns the site(s) matching the index'
362 return session.query(CameraView).filter(CameraView.idx == int(viewId)).first() 367 return session.query(CameraView).filter(CameraView.idx == int(viewId)).first()
363 368
403 duration = timedelta(seconds=duration/fps) 408 duration = timedelta(seconds=duration/fps)
404 videoSequences.append(VideoSequence(directoryName+sep+name, startTime, duration, cameraView, directoryName+sep+prefix+'.sqlite')) 409 videoSequences.append(VideoSequence(directoryName+sep+name, startTime, duration, cameraView, directoryName+sep+prefix+'.sqlite'))
405 startTime += duration 410 startTime += duration
406 session.add_all(videoSequences) 411 session.add_all(videoSequences)
407 session.commit() 412 session.commit()
413
414 # management
415 # TODO need to be able to copy everything from a site from one sqlite to another, and delete everything attached to a site