Skip to content
Snippets Groups Projects
Commit c10b5cf9 authored by Jorrit Schaap's avatar Jorrit Schaap
Browse files

Task #9351: rest url to delete data for task

parent ba303b5c
Branches
Tags
No related merge requests found
......@@ -50,6 +50,9 @@ from lofar.sas.resourceassignment.resourceassignmentservice.config import DEFAUL
from lofar.mom.momqueryservice.momqueryrpc import MoMQueryRPC
from lofar.mom.momqueryservice.config import DEFAULT_MOMQUERY_BUSNAME, DEFAULT_MOMQUERY_SERVICENAME
from lofar.sas.resourceassignment.resourceassignmenteditor.mom import updateTaskMomDetails
from lofar.sas.datamanagement.cleanup.rpc import CleanupRPC
from lofar.sas.datamanagement.cleanup.config import DEFAULT_BUSNAME as DEFAULT_CLEANUP_BUSNAME
from lofar.sas.datamanagement.cleanup.config import DEFAULT_SERVICENAME as DEFAULT_CLEANUP_SERVICENAME
#from lofar.sas.resourceassignment.resourceassigner. import updateTaskMomDetails
logger = logging.getLogger(__name__)
......@@ -93,6 +96,7 @@ app.json_encoder = CustomJSONEncoder
rarpc = None
momrpc = None
curpc = None
radbchangeshandler = None
@app.route('/')
......@@ -236,6 +240,20 @@ def putTask(task_id):
abort(404)
abort(406)
@app.route('/rest/tasks/<int:task_id>/cleanup', methods=['DELETE'])
def cleanupTaskData(task_id):
try:
task = rarpc.getTask(task_id)
if not task:
abort(404, 'No such task (id=%s)' % task_id)
result = curpc.removeTaskData(task['otdb_id'])
logger.info(result)
return jsonify(result)
except Exception as e:
abort(500)
@app.route('/rest/tasks/<int:task_id>/resourceclaims')
def taskResourceClaims(task_id):
return jsonify({'taskResourceClaims': rarpc.getResourceClaims(task_id=task_id, include_properties=True)})
......@@ -323,6 +341,8 @@ def main():
parser.add_option('--radb_notification_subjects', dest='radb_notification_subjects', type='string', default=DEFAULT_RADB_CHANGES_SUBJECTS, help='Subject(s) to listen for on the radb notification bus exchange on the qpid broker, default: %default')
parser.add_option('--mom_busname', dest='mom_busname', type='string', default=DEFAULT_MOMQUERY_BUSNAME, help='Name of the bus exchange on the qpid broker on which the momservice listens, default: %default')
parser.add_option('--mom_servicename', dest='mom_servicename', type='string', default=DEFAULT_MOMQUERY_SERVICENAME, help='Name of the momservice, default: %default')
parser.add_option('--cleanup_busname', dest='cleanup_busname', type='string', default=DEFAULT_CLEANUP_BUSNAME, help='Name of the bus exchange on the qpid broker on which the cleanupservice listens, default: %default')
parser.add_option('--cleanup_servicename', dest='cleanup_servicename', type='string', default=DEFAULT_CLEANUP_SERVICENAME, help='Name of the cleanupservice, default: %default')
parser.add_option('-V', '--verbose', dest='verbose', action='store_true', help='verbose logging')
(options, args) = parser.parse_args()
......@@ -330,13 +350,15 @@ def main():
level=logging.DEBUG if options.verbose else logging.INFO)
global rarpc
rarpc = RARPC(busname=DEFAULT_RADB_BUSNAME, servicename=DEFAULT_RADB_SERVICENAME, broker=options.broker)
rarpc = RARPC(busname=options.radb_busname, servicename=options.radb_servicename, broker=options.broker)
global momrpc
momrpc = MoMQueryRPC(busname=DEFAULT_MOMQUERY_BUSNAME, servicename=DEFAULT_MOMQUERY_SERVICENAME, timeout=2.5, broker=options.broker)
momrpc = MoMQueryRPC(busname=options.mom_busname, servicename=options.mom_servicename, timeout=2.5, broker=options.broker)
global curpc
curpc = CleanupRPC(busname=options.cleanup_busname, servicename=options.cleanup_servicename, broker=options.broker)
global radbchangeshandler
radbchangeshandler = RADBChangesHandler(DEFAULT_RADB_CHANGES_BUSNAME, broker=options.broker, momrpc=momrpc)
radbchangeshandler = RADBChangesHandler(options.radb_notification_busname, broker=options.broker, momrpc=momrpc)
with radbchangeshandler, rarpc, momrpc:
with radbchangeshandler, rarpc, curpc, momrpc:
'''Start the webserver'''
app.run(debug=options.verbose, threaded=True, host='0.0.0.0', port=options.port)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment