예제 #1
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="gpsBabelGateway"></param>
        /// <param name="gpxDataContainerConverter"></param>
        /// <param name="routeDataSplitterService"></param>
        /// <param name="converterFlowItems"></param>
        public DataContainerConverterService(IGpsBabelGateway gpsBabelGateway,
                                             IGpxDataContainerConverter gpxDataContainerConverter,
                                             IRouteDataSplitterService routeDataSplitterService,
                                             IEnumerable <IConverterFlowItem> converterFlowItems)
        {
            _gpsBabelGateway           = gpsBabelGateway;
            _gpxDataContainerConverter = gpxDataContainerConverter;
            _routeDataSplitterService  = routeDataSplitterService;
            _converterFlowItems        = new List <IConverterFlowItem>();
            _converterFlowItems.AddRange(converterFlowItems);

            var supportedGpsBabelFormats = new List <string>
            {
                FlowFormats.GPX_BABEL_FORMAT,
                FlowFormats.KML_BABEL_FORMAT,
                FlowFormats.TWL_BABEL_FORMAT,
                FlowFormats.CSV_BABEL_FORMAT
            };

            foreach (var supportedGpsBabelInputFromat in supportedGpsBabelFormats)
            {
                foreach (var supportedGpsBabelOutputFormat in supportedGpsBabelFormats.Where(t => t != supportedGpsBabelInputFromat))
                {
                    _converterFlowItems.Add(new GpsBabelConverterFlow(_gpsBabelGateway, supportedGpsBabelInputFromat, supportedGpsBabelOutputFormat));
                }
            }
        }
        public DataContainerConverterService(IGpsBabelGateway gpsBabelGateway,
            IGpxGeoJsonConverter gpxGeoJsonConverter,
            IGpxDataContainerConverter gpxDataContainerConverter,
            IRouteDataSplitterService routeDataSplitterService)
        {
            _gpsBabelGateway = gpsBabelGateway;
            _gpxDataContainerConverter = gpxDataContainerConverter;
            _routeDataSplitterService = routeDataSplitterService;

            _converterFlowItems = new List<IConverterFlowItem>
            {
                new GeoJsonGpxConverterFlow(gpxGeoJsonConverter),
                new GpxGeoJsonConverterFlow(gpxGeoJsonConverter),
                new GpxToSingleTrackGpxConverterFlow(),
                new KmzToKmlConverterFlow(),
                new GpxGzToGpxConverterFlow(),
                new GpxVersion1ToGpxVersion11ConverterFlow(_gpsBabelGateway),
                new GpxBz2ToGpxConverterFlow()
            };
            var supportedGpsBabelFormats = new List<string>
            {
                FlowFormats.GPX_BABEL_FORMAT,
                FlowFormats.KML_BABEL_FORMAT,
                FlowFormats.TWL_BABEL_FORMAT,
                FlowFormats.CSV_BABEL_FORMAT
            };
            foreach (var supportedGpsBabelInputFromat in supportedGpsBabelFormats)
            {
                foreach (var supportedGpsBabelOutputFormat in supportedGpsBabelFormats.Where(t => t != supportedGpsBabelInputFromat))
                {
                    _converterFlowItems.Add(new GpsBabelConverterFlow(_gpsBabelGateway, supportedGpsBabelInputFromat, supportedGpsBabelOutputFormat));
                }
            }
        }
예제 #3
0
 public void TestInitialize()
 {
     _randomBytes = new byte[] { 0, 1, 1, 0 };
     _simpleGpx   = new gpxType {
         wpt = new[] { new wptType() }
     };
     _gpsBabelGateway          = Substitute.For <IGpsBabelGateway>();
     _routeDataSplitterService = Substitute.For <IRouteDataSplitterService>();
     _converterService         = new DataContainerConverterService(_gpsBabelGateway, new GpxGeoJsonConverter(), new GpxDataContainerConverter(), _routeDataSplitterService);
 }
예제 #4
0
        public void TestInitialize()
        {
            _randomBytes = new byte[] { 0, 1, 1, 0 };
            _simpleGpx   = new GpxFile();
            _simpleGpx.Waypoints.Add(new GpxWaypoint(new GpxLongitude(0), new GpxLatitude(0), null));
            _gpsBabelGateway          = Substitute.For <IGpsBabelGateway>();
            _imgurGateway             = Substitute.For <IImgurGateway>();
            _routeDataSplitterService = Substitute.For <IRouteDataSplitterService>();
            var gpxGeoJsonConverter = new GpxGeoJsonConverter();
            var converterFlowItems  = new List <IConverterFlowItem>
            {
                new GeoJsonGpxConverterFlow(gpxGeoJsonConverter),
                new GpxGeoJsonConverterFlow(gpxGeoJsonConverter),
                new GpxToSingleTrackGpxConverterFlow(),
                new GpxToRouteGpxConverterFlow(),
                new KmzToKmlConverterFlow(),
                new GpxGzToGpxConverterFlow(),
                new GpxVersion1ToGpxVersion11ConverterFlow(_gpsBabelGateway),
                new GpxBz2ToGpxConverterFlow(),
                new JpgToGpxConverterFlow(_gpsBabelGateway, _imgurGateway)
            };

            _converterService = new DataContainerConverterService(_gpsBabelGateway, new GpxDataContainerConverter(), _routeDataSplitterService, converterFlowItems);
        }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="gpsBabelGateway"></param>
        /// <param name="gpxGeoJsonConverter"></param>
        /// <param name="gpxDataContainerConverter"></param>
        /// <param name="routeDataSplitterService"></param>
        public DataContainerConverterService(IGpsBabelGateway gpsBabelGateway,
                                             IGpxGeoJsonConverter gpxGeoJsonConverter,
                                             IGpxDataContainerConverter gpxDataContainerConverter,
                                             IRouteDataSplitterService routeDataSplitterService)
        {
            _gpsBabelGateway           = gpsBabelGateway;
            _gpxDataContainerConverter = gpxDataContainerConverter;
            _routeDataSplitterService  = routeDataSplitterService;

            _converterFlowItems = new List <IConverterFlowItem>
            {
                new GeoJsonGpxConverterFlow(gpxGeoJsonConverter),
                new GpxGeoJsonConverterFlow(gpxGeoJsonConverter),
                new GpxToSingleTrackGpxConverterFlow(),
                new GpxToRouteGpxConverterFlow(),
                new KmzToKmlConverterFlow(),
                new GpxGzToGpxConverterFlow(),
                new GpxVersion1ToGpxVersion11ConverterFlow(_gpsBabelGateway),
                new GpxBz2ToGpxConverterFlow()
            };
            var supportedGpsBabelFormats = new List <string>
            {
                FlowFormats.GPX_BABEL_FORMAT,
                FlowFormats.KML_BABEL_FORMAT,
                FlowFormats.TWL_BABEL_FORMAT,
                FlowFormats.CSV_BABEL_FORMAT
            };

            foreach (var supportedGpsBabelInputFromat in supportedGpsBabelFormats)
            {
                foreach (var supportedGpsBabelOutputFormat in supportedGpsBabelFormats.Where(t => t != supportedGpsBabelInputFromat))
                {
                    _converterFlowItems.Add(new GpsBabelConverterFlow(_gpsBabelGateway, supportedGpsBabelInputFromat, supportedGpsBabelOutputFormat));
                }
            }
        }