def getEntity(self, id): """get an entity from db by id Arguments: id {[string]} -- [entity id] Returns: [Transfer] -- [Transfer with matching id] """ if (transferData := self._client.get( # noqa: E231,E203,E999,E251,E261 self._client.key(self._kind, id))) is not None: transfer = Transfer(**transferData) transfer.transferId = id return transfer
def updateEntity(self, id, updated_entity): """update existing entity by id Arguments: id {[string]} -- [entity id to update] updated_entity {[type]} -- [new transfer data] Returns: [Transfer] -- [updated Transfer] """ transfer = self._client.get(self._client.key(self._kind, id)) transfer.update(updated_entity.get_dict()) self._client.put(transfer) updatedTransfer = Transfer(**transfer) updatedTransfer.transferId = id return updatedTransfer
def getEntityByFilter(self, filters): """get all entities matching a filter Arguments: filter {[[array of filters]]} -- [filters for datastore of the form ["key","operator","val"]] Returns: [list] -- [list of matching entities] """ query = self._client.query(kind=self._kind) for filter in filters: query.add_filter(*filter) transfers_list = [] transfers = list(query.fetch()) for entity in transfers: transfer = Transfer(**entity) transfer.transferId = entity.key.id transfers_list.append(transfer.get_dict()) return transfers_list