public FindRouteNodesParameters TranslateFromViewToService(RouteMapViewParameters viewParameters)
        {
            FindRouteNodesParameters serviceParameters = new FindRouteNodesParameters();

            serviceParameters.RouteId      = viewParameters.RouteId;
            serviceParameters.NodeId       = viewParameters.NodeId;
            serviceParameters.LanguageCode = UserSessionService.LanguageCode;

            return(serviceParameters);
        }
        public override void OnViewReady()
        {
            viewServiceTranslator = WorkItem.Items.AddNew <RouteMapViewToRouteServiceTranslator>() as RouteMapViewToRouteServiceTranslator;

            if (WorkItem.Items.FindByType <RouteMapViewParameters>().Count > 0)
            {
                viewParameters = WorkItem.Items.FindByType <RouteMapViewParameters>().Last();
                forceUpdate    = true;
            }
        }
        public void UpdateView(RouteMapViewParameters viewParameters)
        {
            this.viewParameters = viewParameters;

            if (View.IsVisible)
            {
                forceUpdate = false;

                ExecuteSearch(viewParameters);
            }
            else
            {
                forceUpdate = true;
            }
        }
        protected override object ExecuteSearchAsync(object parameters)
        {
            object data = null;

            if ((parameters != null) && (parameters is RouteMapViewParameters))
            {
                viewParameters = parameters as RouteMapViewParameters;

                FindRouteNodesRequest serviceRequest = new FindRouteNodesRequest();

                serviceRequest.FindRouteNodesParameters = viewServiceTranslator.TranslateFromViewToService(viewParameters);

                FindRouteNodesResponse serviceResponse = Service.FindRouteNodes(serviceRequest);

                if ((serviceResponse != null) && (serviceResponse.FindRouteNodesResultCollection != null))
                {
                    IEnumerable <RouteMapViewResult> viewResultCollection = viewServiceTranslator.TranslateFromServiceToView(serviceResponse.FindRouteNodesResultCollection);
                    data = viewResultCollection;
                }
            }

            return(data);
        }
        public void Search(object parameters)
        {
            RouteMapViewParameters viewParameters = parameters as RouteMapViewParameters;

            UpdateView(viewParameters);
        }