def new_incident(self, request): if self.config.ReadOnly: set_response_header( request, HeaderName.contentType, ContentType.plain ) request.setResponseCode(http.FORBIDDEN) return "Server is in read-only mode." incident = Incident.from_json_io( request.content, number=self.storage.next_incident_number() ) # Edit report entrys to add author for entry in incident.report_entries: entry.author = self.avatarId.decode("utf-8") self.storage.write_incident(incident) request.setResponseCode(http.CREATED) request.setHeader( HeaderName.incidentNumber.value, incident.number ) request.setHeader( HeaderName.location.value, url_for(request, "get_incident", {"number": incident.number}) ) return ""
def new_incident(self, request): incident = Incident.from_json_io(request.content, number=self.storage.next_incident_number()) # Edit report entrys to add author for entry in incident.report_entries: entry.author = self.avatarId.decode("utf-8") self.storage.write_incident(incident) request.setResponseCode(http.CREATED) request.setHeader( HeaderName.incidentNumber.value, incident.number ) request.setHeader( HeaderName.location.value, url_for(request, "get_incident", {"number": incident.number}) ) return "";
def test_from_json_io(self): """ Test for L{ims.data.Incident.from_json_io} with incident data. """ self.equals_1(Incident.from_json_io(StringIO(incident1_text), 1))
def read_incident_with_number(self, number): handle = self._open_incident(number, "r") try: return Incident.from_json_io(handle, number=number) finally: handle.close()