def expire(self, session=None, attrs=None):
     """Expire this object ()."""
     if not session:
         session = Session.object_session(self)
         if not session:
             session = get_session()
     session.expire(self, attrs)
 def refresh(self, session=None, attrs=None):
     """Refresh this object."""
     if not session:
         session = Session.object_session(self)
         if not session:
             session = get_session()
     session.refresh(self, attrs)
 def refresh(self, session=None, attrs=None):
     """Refresh this object."""
     if not session:
         session = Session.object_session(self)
         if not session:
             session = get_session()
     session.refresh(self, attrs)
 def expire(self, session=None, attrs=None):
     """Expire this object ()."""
     if not session:
         session = Session.object_session(self)
         if not session:
             session = get_session()
     session.expire(self, attrs)
 def delete(self, session=None):
     """Delete this object."""
     if not session:
         session = Session.object_session(self)
         if not session:
             session = get_session()
     session.delete(self)
     session.flush()
 def delete(self, session=None):
     """Delete this object."""
     if not session:
         session = Session.object_session(self)
         if not session:
             session = get_session()
     session.delete(self)
     session.flush()
 def update_and_save(self, values, session=None):
     if not session:
         session = Session.object_session(self)
         if not session:
             session = get_session()
     session.begin()
     for k, v in values.iteritems():
         setattr(self, k, v)
     session.commit()
 def update_and_save(self, values, session=None):
     if not session:
         session = Session.object_session(self)
         if not session:
             session = get_session()
     session.begin()
     for k, v in values.iteritems():
         setattr(self, k, v)
     session.commit()
 def save(self, session=None):
     """Save this object."""
     if not session:
         session = Session.object_session(self)
         if not session:
             session = get_session()
     session.add(self)
     try:
         session.flush()
     except IntegrityError as e:
         if str(e).endswith('is not unique'):
             raise exception.Duplicate(str(e))
         else:
             raise
 def save(self, session=None):
     """Save this object."""
     if not session:
         session = Session.object_session(self)
         if not session:
             session = get_session()
     session.add(self)
     try:
         session.flush()
     except IntegrityError as e:
         if str(e).endswith('is not unique'):
             raise exception.Duplicate(str(e))
         else:
             raise
def _session(context):
    return (context and context.session) or get_session()
def _session(context):
    return (context and context.session) or get_session()