From 1ee71b7d951ec9c977c8df2e577eae74e1ff4296 Mon Sep 17 00:00:00 2001 From: Brian Moe <brian.moe@ligo.org> Date: Mon, 3 Dec 2012 15:53:09 -0600 Subject: [PATCH] Bring Labels media type into line. Minor doc fix. --- gracedb/api.py | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/gracedb/api.py b/gracedb/api.py index 624f5687c..61e346fa6 100644 --- a/gracedb/api.py +++ b/gracedb/api.py @@ -25,7 +25,7 @@ PAGINATE_BY = REST_FRAMEWORK_SETTINGS.get('PAGINATE_BY', 10) # rest_framework from rest_framework import serializers, status from rest_framework.response import Response -from rest_framework.parsers import BaseParser +#from rest_framework.parsers import BaseParser #from rest_framework import generics #from rest_framework.renderers import JSONRenderer, JSONPRenderer #from rest_framework.renderers import YAMLRenderer, XMLRenderer @@ -101,7 +101,6 @@ def eventToDict(event, columns=None, request=None): # [(e.gpstime, reverse("event-detail", args=[e.graceid()], request=request)) # for e in event.neighbors()]), "neighbors" : reverse("neighbors", args=[graceid], request=request), - "data" : event.weburl(), "log" : reverse("eventlog-list", args=[graceid], request=request), "files" : reverse("files", args=[graceid], request=request), "filemeta" : reverse("filemeta", args=[graceid], request=request), @@ -113,19 +112,21 @@ def eventToDict(event, columns=None, request=None): class EventList(APIView): """ - This resource represents the candidate events in GraceDB. + This resource represents the collection of all candidate events in GraceDB. ### GET Retrieve events. You may use the following parameters: - * `query=Q` : use any query string as one might use on the query page. - * `count=N` : the maximum number of events in a response. (default: 10) - * `page=N` : events starting with the (count*(page-1))th event. (default: 1) - * `orderby=O` : how to order events. (default: -created) + * `query=Q` : use any query string as one might use on the query page. + * `count=N` : the maximum number of events in a response. (default: 10) + * `start=N` : events starting with the Nth event. (default: 0) + * `sort=Order` : how to order events. (default: -created) Example: `curl -X GET --insecure --cert $X509_USER_PROXY https://gracedb.ligo.org/api/events/?query=LowMass%20EM_READY&orderby=-far` + Add header `Accept: application/ligolw` for ligolw formatted response. + ### POST To create an event. Expects `multipart/form-data` mime-type with parameters, `group`, `type` and a file part, `eventFile` containing @@ -356,9 +357,16 @@ class EventNeighbors(APIView): neighbors = event.neighbors(delta=delta, delta2=delta2) else: neighbors = event.neighbors() - return Response( - [eventToDict(neighbor, request=request) - for neighbor in neighbors]) + neighbors = [eventToDict(neighbor, request=request) + for neighbor in neighbors] + return Response({ + 'neighbors' : neighbors, + 'delta' : (5,5), # XXX get from Event, or request. + 'links' : { + 'self': request.build_absolute_uri(), + 'event': reverse("event-detail", args=[graceid], request=request), + } + }) #================================================================== # Labels -- GitLab