def delete_course(cls): """Called back repeatedly from deferred queue dispatcher.""" try: kind_name = cls.get_any_undeleted_kind_name() if not kind_name: # No entity types remain to be deleted from the Datastore for # this course (i.e. namespace), so call (in no particular # order) callbacks waiting to be informed of course deletion. ns_name = namespace_manager.get_namespace() common_utils.run_hooks( cls.COURSE_DELETED_HOOKS.itervalues(), ns_name) logging.info( 'CourseDeleteHandler found no entity types to delete for ' 'namespace %s; deletion complete.', ns_name) return model = Model(kind_name) keys = list(db.Query(Model(kind_name), keys_only=True).run( batch_size=cls.DELETE_BATCH_SIZE)) entities.delete(keys) logging.info( 'CourseDeleteHandler deleted %d entities of type %s from ' 'namespace %s', len(keys), kind_name, namespace_manager.get_namespace()) deferred.defer(cls.delete_course) except Exception: logging.critical( 'Failed when attempting to delete course for namespace %s', namespace_manager.get_namespace()) common_utils.log_exception_origin() raise
def delete_course(cls): """Called back repeatedly from deferred queue dispatcher.""" try: kind_name = cls.get_any_undeleted_kind_name() if not kind_name: # No entity types remain to be deleted from the Datastore for # this course (i.e. namespace), so call (in no particular # order) callbacks waiting to be informed of course deletion. ns_name = namespace_manager.get_namespace() common_utils.run_hooks(cls.COURSE_DELETED_HOOKS.itervalues(), ns_name) logging.info( 'CourseDeleteHandler found no entity types to delete for ' 'namespace %s; deletion complete.', ns_name) return model = Model(kind_name) keys = list( db.Query(Model(kind_name), keys_only=True).run(batch_size=cls.DELETE_BATCH_SIZE)) entities.delete(keys) logging.info( 'CourseDeleteHandler deleted %d entities of type %s from ' 'namespace %s', len(keys), kind_name, namespace_manager.get_namespace()) deferred.defer(cls.delete_course) except Exception: logging.critical( 'Failed when attempting to delete course for namespace %s', namespace_manager.get_namespace()) common_utils.log_exception_origin() raise
def delete_course(cls): """Called back repeatedly from deferred queue dispatcher.""" try: kind = metadata.Kind.all().get() if not kind: logging.info( 'CourseDeleteHandler found no entity types to delete for ' 'namespace %s; deletion complete.', namespace_manager.get_namespace()) return kind_name = kind.kind_name model = Model(kind_name) keys = list(db.Query(Model(kind_name), keys_only=True).run( batch_size=cls.DELETE_BATCH_SIZE)) entities.delete(keys) logging.info( 'CourseDeleteHandler deleted %d entities of type %s from ' 'namespace %s', len(keys), kind_name, namespace_manager.get_namespace()) deferred.defer(cls.delete_course) except Exception: logging.critical( 'Failed when attempting to delete course for namespace %s', namespace_manager.get_namespace()) common_utils.log_exception_origin() raise
def delete_by_to_email(cls, email): query = cls.all(keys_only=True) query.filter('to =', email) entities.delete(query.run())
def map(entity): entities.delete(entity)