Skip to content
Snippets Groups Projects
Commit 443f6fbb authored by Branson Craig Stephens's avatar Branson Craig Stephens
Browse files

Some fixes for the EMBB resources in API.

parent f0e34a54
No related branches found
No related tags found
No related merge requests found
...@@ -990,21 +990,11 @@ class EventLogDetail(APIView): ...@@ -990,21 +990,11 @@ class EventLogDetail(APIView):
# Janky serialization # Janky serialization
def embbEventLogToDict(eel, request=None): def embbEventLogToDict(eel, request=None):
uri = None uri = None
taglist_uri = None
file_uri = None file_uri = None
if request: if request:
uri = reverse("embbeventeel-detail", uri = reverse("embbeventlog-detail",
args=[eel.event.graceid(), eel.N], args=[eel.event.graceid(), eel.N],
request=request) request=request)
if eel.filename:
actual_filename = eel.filename
if eel.file_version:
actual_filename += ',%d' % eel.file_version
filename = urlquote(actual_filename)
file_uri = reverse("files",
args=[eel.event.graceid(), filename],
request=request)
return { return {
"comment" : eel.comment, "comment" : eel.comment,
"created" : eel.created, "created" : eel.created,
...@@ -1028,11 +1018,12 @@ class EMBBEventLogList(APIView): ...@@ -1028,11 +1018,12 @@ class EMBBEventLogList(APIView):
# XXX Real error message. # XXX Real error message.
return Response("Event does not exist.", return Response("Event does not exist.",
status=status.HTTP_404_NOT_FOUND) status=status.HTTP_404_NOT_FOUND)
embblogset = event.embbeventlog_set.order_by("created","N")
count = embblogset.count() eel_set = event.embbeventlog_set.order_by("created","N")
count = eel_set.count()
eel = [ embbEventLogToDict(eel, request) eel = [ embbEventLogToDict(eel, request)
for eel in embblogset.iterator() ] for eel in eel_set.iterator() ]
rv = { rv = {
'start': 0, 'start': 0,
...@@ -1046,17 +1037,21 @@ class EMBBEventLogList(APIView): ...@@ -1046,17 +1037,21 @@ class EMBBEventLogList(APIView):
} }
return Response(rv) return Response(rv)
def post(self, request, graceid): def post(self, request, graceid):
event = Event.getByGraceid(graceid) try:
# message -> comment event = Event.getByGraceid(graceid)
except Event.DoesNotExist:
return Response("Event Not Found",
status=status.HTTP_404_NOT_FOUND)
# Now create the EEL
try: try:
eel = create_eel(request.DATA, event, request.user) eel = create_eel(request.DATA, event, request.user)
# XXX Need to handle multiple exception types here.
except Exception, e: except Exception, e:
pass return Response("Problem creating EEL: %s" % str(e),
# Since this is likely due to race conditions, we will return 503 status=status.HTTP_400_BAD_REQUEST)
# Since this is likely due to race conditions, we will return 503
# return Response("Failed to save log entry: %s" % str(e), # return Response("Failed to save log entry: %s" % str(e),
# status=status.HTTP_503_SERVICE_UNAVAILABLE) # status=status.HTTP_503_SERVICE_UNAVAILABLE)
...@@ -1066,6 +1061,7 @@ class EMBBEventLogList(APIView): ...@@ -1066,6 +1061,7 @@ class EMBBEventLogList(APIView):
# Issue alert. # Issue alert.
description = "New EMBB log entry." description = "New EMBB log entry."
issueAlertForUpdate(event, description, doxmpp=True)
return response return response
...@@ -1087,8 +1083,6 @@ class EMBBEventLogDetail(APIView): ...@@ -1087,8 +1083,6 @@ class EMBBEventLogDetail(APIView):
return Response(embbEventLogToDict(rv, request=request)) return Response(embbEventLogToDict(rv, request=request))
#================================================================== #==================================================================
# Tags # Tags
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment