Exemple #1
0
 def get(self, parcel_id, parcel_event_id):
     response_dict = None
     if parcel_id is None:
         # show all parcels, sans events
         pq = Parcel.all()
         parcels = pq.fetch(100)
         response_dict = [p.to_dict() for p in parcels]
     else:
         # show single parcel, with events
         # unless event id set,
         # in that case, just return the event
         parcel = Parcel.get_by_id(int(parcel_id))
         if parcel is None:
             return self.not_found()
         response_dict = parcel.to_dict()
         
         if parcel_event_id is None:
             eq = ParcelEvent.all()
             eq.ancestor(parcel)
             eq.order("date")
             events = eq.fetch(100)
             event_dicts = [e.to_dict() for e in events]
             response_dict["events"] = event_dicts
         else:
             event = ParcelEvent.get_by_id(int(parcel_event_id), parent=parcel)
             if event is None:
                 return self.not_found()
             response_dict = event.to_dict()
     
     self.response.headers["Content-Type"] =  "application/json; charset=UTF-8"
     self.response.out.write(json.dumps(response_dict))
Exemple #2
0
 def get(self):
     tracking_number = self.request.get("kolliid")
     
     
     if len(tracking_number) < 9:
         xml = ParcelHelper().tracking_number_error_as_xml()
     else:
         parcel_query = Parcel.all()
         parcel_query.filter("tracking_number =", tracking_number)
         parcel = parcel_query.get()
         
         if parcel is None:
             xml = ParcelHelper().no_parcel_as_xml(tracking_number)
         else:
             events_query = ParcelEvent.all()
             logging.info( parcel )
             events_query.ancestor(parcel.key())
             events = events_query.fetch(100)
             
             xml = ParcelHelper().parcel_as_xml(tracking_number, parcel, events)
     
     self.response.headers["Content-Type"] =  "text/xml; charset=ISO-8859-1"
     self.response.out.write(xml)