def delete_credential(self, credential_id): session = self.get_session() try: ref = session.query(Credential).filter_by(id=credential_id).one() except sql.NotFound: raise exception.CredentialNotFound(credential_id=credential_id) with session.begin(): session.delete(ref) session.flush()
def update_credential(self, credential_id, credential): session = self.get_session() with session.begin(): ref = session.query(Credential).filter_by(id=credential_id).first() if ref is None: raise exception.CredentialNotFound(credential_id=credential_id) old_dict = ref.to_dict() for k in credential: old_dict[k] = credential[k] new_credential = Credential.from_dict(old_dict) for attr in Credential.attributes: if attr != 'id': setattr(ref, attr, getattr(new_credential, attr)) ref.extra = new_credential.extra session.flush() return ref.to_dict()
def _get_credential(self, session, credential_id): ref = session.query(CredentialModel).get(credential_id) if ref is None: raise exception.CredentialNotFound(credential_id=credential_id) return ref
def get_credential(self, credential_id): session = self.get_session() ref = session.query(Credential).filter_by(id=credential_id).first() if ref is None: raise exception.CredentialNotFound(credential_id=credential_id) return ref.to_dict()