import six week_pattern = { "monday": fields.Boolean(), "tuesday": fields.Boolean(), "wednesday": fields.Boolean(), "thursday": fields.Boolean(), "friday": fields.Boolean(), "saturday": fields.Boolean(), "sunday": fields.Boolean(), } calendar_period = {"begin": fields.String(), "end": fields.String()} calendar_exception = {"datetime": fields.String(attribute="date"), "type": enum_type()} validity_pattern = {'beginning_date': fields.String(), 'days': fields.String()} calendar = { "id": NonNullString(attribute="uri"), "name": NonNullString(), "week_pattern": NonNullNested(week_pattern), "active_periods": NonNullList(NonNullNested(calendar_period)), "exceptions": NonNullList(NonNullNested(calendar_exception)), "validity_pattern": NonNullProtobufNested(validity_pattern), } calendars = { "calendars": NonNullList(NonNullNested(calendar)), "error": PbField(error, attribute='error'), "pagination": NonNullNested(pagination), "disruptions": fields.List(NonNullNested(disruption_marshaller), attribute="impacts"),
'nb_vj_extentions': obj.nb_vj_extentions, 'nb_sections': obj.nb_sections, } if hasattr(obj, 'internal_id'): debug['internal_id'] = obj.internal_id return debug section = { "type": section_type(), "id": fields.String(), "mode": enum_type(attribute="street_network.mode"), "duration": fields.Integer(), "from": section_place(place, attribute="origin"), "to": section_place(place, attribute="destination"), "links": SectionLinks(attribute="uris"), "display_informations": PbField(display_informations_vj, attribute='pt_display_informations'), "additional_informations": NonNullList(PbEnum(response_pb2.SectionAdditionalInformationType)), "geojson": SectionGeoJson(), "path":
if not args["from_datetime"] and args["until_datetime"]\ and self.endpoint[:4] == "next": self.endpoint = "previous" + self.endpoint[4:] self._register_interpreted_parameters(args) return i_manager.dispatch(args, self.endpoint, instance_name=self.region) date_time = { "date_time": SplitDateTime(date='date', time='time'), "additional_informations": additional_informations(), "links": stop_time_properties_links(), 'data_freshness': enum_type(attribute='realtime_level'), } row = { "stop_point": PbField(stop_point), "date_times": fields.List(fields.Nested(date_time)) } header = { "display_informations": PbField(display_informations_vj, attribute='pt_display_informations'), "additional_informations": NonNullList(PbEnum(response_pb2.SectionAdditionalInformationType)), "links": UrisToLinks() }
class date_time_links(fields.Raw): def output(self, key, obj): disruption_links = [create_internal_link(_type="disruption", rel="disruptions", id=uri) for uri in obj.impact_uris] properties_links = pt.make_properties_links(obj.properties) return properties_links + disruption_links date_time = { "date_time": SplitDateTime(date='date', time='time'), "base_date_time": DateTime(), "additional_informations": additional_informations(), "links": date_time_links(), 'data_freshness': enum_type(attribute='realtime_level'), } row = { "stop_point": PbField(stop_point), "date_times": fields.List(fields.Nested(date_time)) } header = { "display_informations": PbField(display_informations_vj, attribute='pt_display_informations'), "additional_informations": NonNullList(PbEnum(response_pb2.SectionAdditionalInformationType)), "links": UrisToLinks() } table_field = { "rows": fields.List(fields.Nested(row)),
seats_description = { "total": Integer(), "available": Integer(), } individual_rating = { "value": fields.Raw, "count": Integer(), "scale_min": fields.Raw, "scale_max": fields.Raw, } individual_information = { "alias": fields.String(), "image": fields.String(), "gender": enum_type(attribute="gender"), "rating": PbField(individual_rating, attribute="rating"), } ridesharing_information = { "operator": fields.String(), "network": fields.String(), "driver": PbField(individual_information, attribute="driver"), "seats": PbField(seats_description, attribute="seats"), } section = { "type": section_type(), "id": fields.String(), "mode": enum_type(attribute="street_network.mode"), "duration": Integer(),
"tuesday": fields.Boolean(), "wednesday": fields.Boolean(), "thursday": fields.Boolean(), "friday": fields.Boolean(), "saturday": fields.Boolean(), "sunday": fields.Boolean(), } calendar_period = { "begin": fields.String(), "end": fields.String(), } calendar_exception = { "datetime": fields.String(attribute="date"), "type": enum_type(), } validity_pattern = { 'beginning_date': fields.String(), 'days': fields.String(), } calendar = { "id": NonNullString(attribute="uri"), "name": NonNullString(), "week_pattern": NonNullNested(week_pattern), "active_periods": NonNullList(NonNullNested(calendar_period)), "exceptions": NonNullList(NonNullNested(calendar_exception)), "validity_pattern": NonNullProtobufNested(validity_pattern) } calendars = {
'streetnetwork_duration': obj.sn_dur, 'transfer_duration': obj.transfer_dur, 'min_waiting_duration': obj.min_waiting_dur, 'nb_vj_extentions': obj.nb_vj_extentions, 'nb_sections': obj.nb_sections, } if hasattr(obj, 'internal_id'): debug['internal_id'] = obj.internal_id return debug section = { "type": section_type(), "id": fields.String(), "mode": enum_type(attribute="street_network.mode"), "duration": Integer(), "from": section_place(place, attribute="origin"), "to": section_place(place, attribute="destination"), "links": SectionLinks(attribute="uris"), "display_informations": PbField(display_informations_vj, attribute='pt_display_informations'), "additional_informations": NonNullList(PbEnum(response_pb2.SectionAdditionalInformationType)), "geojson": SectionGeoJson(), "path": NonNullList(NonNullNested({"length": Integer(), "name": fields.String(), "duration": Integer(), "direction": fields.Integer()}), attribute="street_network.path_items"), "transfer_type": enum_type(), "stop_date_times": NonNullList(NonNullNested(stop_date_time)),
seats_description = { "total": Integer(), "available": Integer(), } individual_rating = { "value": fields.Raw, "count": Integer(), "scale_min": fields.Raw, "scale_max": fields.Raw, } individual_information = { "alias": fields.String(), "image": fields.String(), "gender": enum_type(attribute="gender"), "rating": PbField(individual_rating, attribute="rating"), } ridesharing_information = { "operator": fields.String(), "network": fields.String(), "driver": PbField(individual_information, attribute="driver"), "seats": PbField(seats_description, attribute="seats"), } section = { "type": section_type(), "id": fields.String(),