コード例 #1
0
ファイル: Disruptions.py プロジェクト: homerquan/navitia
from flask.globals import g
from jormungandr import i_manager, timezone
from fields import PbField, error, network, line,\
    NonNullList, NonNullNested, pagination, stop_area
from ResourceUri import ResourceUri
from jormungandr.interfaces.argument import ArgumentDoc
from jormungandr.interfaces.parsers import date_time_format
from errors import ManageError
from datetime import datetime
import aniso8601
from datetime import timedelta
from jormungandr.interfaces.v1.fields import DisruptionsField

disruption = {
    "network": PbField(network, attribute='network'),
    "lines": NonNullList(NonNullNested(line)),
    "stop_areas": NonNullList(NonNullNested(stop_area))
}

traffic = {
    "traffic_reports":
    NonNullList(NonNullNested(disruption), attribute='disruptions'),
    "error":
    PbField(error, attribute='error'),
    "pagination":
    NonNullNested(pagination),
    "disruptions":
    DisruptionsField,
}

コード例 #2
0
from flask.ext.restful import Resource, fields, marshal_with
from jormungandr import i_manager
from make_links import add_coverage_link, add_coverage_link, add_collection_links, clean_links
from converters_collection_type import collections_to_resource_type
from collections import OrderedDict
from fields import NonNullNested


region_fields = {
    "id": fields.String(attribute="region_id"),
    "start_production_date": fields.String,
    "end_production_date": fields.String,
    "status": fields.String,
    "shape": fields.String,
    "error": NonNullNested({
        "code": fields.String,
        "value": fields.String
    })
}
regions_fields = OrderedDict([
    ("regions", fields.List(fields.Nested(region_fields)))
])

collections = collections_to_resource_type.keys()


class Coverage(Resource):

    @clean_links()
    @add_coverage_link()
    @add_collection_links(collections)
    @marshal_with(regions_fields)
コード例 #3
0
ファイル: Calendars.py プロジェクト: l-vincent-l/navitia
    "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),
    "codes": NonNullList(NonNullNested(code))
}


class Calendars(ResourceUri):
    def __init__(self):
コード例 #4
0
ファイル: Ptobjects.py プロジェクト: l-vincent-l/navitia
from flask import Flask, request
from flask.ext.restful import Resource, fields, marshal_with, reqparse, abort
from flask.globals import g
from jormungandr import i_manager, timezone
from jormungandr.interfaces.v1.fields import use_old_disruptions_if_needed, DisruptionsField
from make_links import add_id_links
from fields import NonNullList, NonNullNested, PbField, error, pt_object
from ResourceUri import ResourceUri
from make_links import add_id_links
from jormungandr.interfaces.argument import ArgumentDoc
from jormungandr.interfaces.parsers import depth_argument, option_value
from copy import deepcopy

pt_objects = {
    "pt_objects": NonNullList(NonNullNested(pt_object), attribute='places'),
    "disruptions": DisruptionsField,
    "error": PbField(error, attribute='error'),
}

pt_object_type_values = [
    "network", "commercial_mode", "line", "route", "stop_area"
]


class Ptobjects(ResourceUri):
    parsers = {}

    def __init__(self, *args, **kwargs):
        ResourceUri.__init__(self, *args, **kwargs)
        self.parsers["get"] = reqparse.RequestParser(
コード例 #5
0
    "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":
    additional_informations_vj(),
    "geojson":
    GeoJson(),
    "path":
    NonNullList(NonNullNested({
        "length": fields.Integer(),
        "name": fields.String(),
        "duration": fields.Integer(),
        "direction": fields.Integer()
    }),
                attribute="street_network.path_items"),
    "transfer_type":
    enum_type(),
    "stop_date_times":
    NonNullList(NonNullNested(stop_date_time)),
    "departure_date_time":
    fields.String(attribute="begin_date_time"),
    "arrival_date_time":
    fields.String(attribute="end_date_time"),
}

cost = {
    'value': fields.Float(),
コード例 #6
0
ファイル: Disruptions.py プロジェクト: linvan/navitia
from flask.globals import g
from jormungandr import i_manager, timezone
from fields import PbField, error, network, line,\
    NonNullList, NonNullNested, pagination, stop_area
from ResourceUri import ResourceUri
from jormungandr.interfaces.argument import ArgumentDoc
from jormungandr.interfaces.parsers import date_time_format
from errors import ManageError
from datetime import datetime
import aniso8601
from datetime import timedelta
from jormungandr.interfaces.v1.fields import DisruptionsField

disruption = {
    "network": PbField(network, attribute='network'),
    "lines": NonNullList(NonNullNested(line)),
    "stop_areas": NonNullList(NonNullNested(stop_area))
}

traffic = {
    "traffic_reports": NonNullList(NonNullNested(disruption)),
    "error": PbField(error, attribute='error'),
    "pagination": NonNullNested(pagination),
    "disruptions": DisruptionsField,
}


class TrafficReport(ResourceUri):
    def __init__(self):
        ResourceUri.__init__(self)
        self.parsers = {}
コード例 #7
0
from elasticsearch.connection.http_urllib3 import ConnectionError
from jormungandr.exceptions import TechnicalError
from functools import wraps
from flask_restful import marshal


class Lit(fields.Raw):
    def __init__(self, val):
        self.val = val

    def output(self, key, obj):
        return self.val


places = {
    "places": NonNullList(NonNullNested(place)),
    "error": PbField(error, attribute='error'),
    "disruptions": DisruptionsField,
}

ww_admin = {
    "id": fields.String,
    #"insee": dict["id"][6:],
    #"coord": ??
    "level": fields.Integer,
    "name": fields.String,
    "label": fields.String(attribute="name"),
    "zip_code": fields.String,
}

ww_address = {
コード例 #8
0
ファイル: Disruptions.py プロジェクト: skywave/navitia
# IRC #navitia on freenode
# https://groups.google.com/d/forum/navitia
# www.navitia.io

from flask.ext.restful import marshal_with, reqparse
from jormungandr import i_manager
from fields import PbField, error, network, line,\
    NonNullList, NonNullNested, pagination, stop_area
from ResourceUri import ResourceUri
from jormungandr.interfaces.argument import ArgumentDoc
from errors import ManageError
from datetime import datetime

disruption = {
    "network": PbField(network, attribute='network'),
    "lines": NonNullList(NonNullNested(line)),
    "stop_areas": NonNullList(NonNullNested(stop_area))
}

disruptions = {
    "disruptions": NonNullList(NonNullNested(disruption)),
    "error": PbField(error, attribute='error'),
    "pagination": NonNullNested(pagination)
}


class Disruptions(ResourceUri):
    def __init__(self):
        ResourceUri.__init__(self)
        self.parsers = {}
        self.parsers["get"] = reqparse.RequestParser(
コード例 #9
0
from flask import Flask, request
from flask.ext.restful import Resource, fields, marshal_with, reqparse, abort
from flask.globals import g
from jormungandr import i_manager, timezone
from jormungandr.interfaces.v1.fields import DisruptionsField
from make_links import add_id_links
from fields import NonNullList, NonNullNested, PbField, error, pt_object, feed_publisher
from ResourceUri import ResourceUri
from make_links import add_id_links
from jormungandr.interfaces.argument import ArgumentDoc
from jormungandr.interfaces.parsers import depth_argument, option_value
from copy import deepcopy

pt_objects = {
    "pt_objects": NonNullList(NonNullNested(pt_object), attribute='places'),
    "disruptions": DisruptionsField,
    "error": PbField(error, attribute='error'),
    "feed_publishers": fields.List(NonNullNested(feed_publisher))
}

pt_object_type_values = [
    "network", "commercial_mode", "line", "line_group", "route", "stop_area"
]


class Ptobjects(ResourceUri):
    parsers = {}

    def __init__(self, *args, **kwargs):
        ResourceUri.__init__(self, *args, **kwargs)