public DeliverAverageSpeedFusedDataResponse GetDeliverAverageSpeedFusedDataResponse(DeliverAverageSpeedFusedDataRequest deliverAverageSpeedFusedDataRequest) { log.Info("New DeliverAverageSpeedFusedDataRequest received."); D2LogicalModel d2LogicalModel = deliverAverageSpeedFusedDataRequest.d2LogicalModel; FusedDataPublication fusedDataPublication = null; // Validate D2LogicalModel if (!ExampleDataCheckOk(d2LogicalModel)) { throw new SoapException("Incoming request does not appear to be valid!", SoapException.ClientFaultCode); } // FusedDataPublication contains the journey time, direction, code, region, etc. try { fusedDataPublication = (FusedDataPublication)d2LogicalModel.payloadPublication; if (fusedDataPublication != null && fusedDataPublication.fusedData[0] != null) { log.Info(string.Format("CreatedUTC is {0}", fusedDataPublication.fusedData[0].createdUtc)); // You could use the FusedDataPublication and extract the corresponding fields ProcessedTrafficData[] trafficData = fusedDataPublication.fusedData[0].linkData; if (trafficData.Count() > 0) { log.Info(string.Format("speedKph {0}",trafficData[0].speedKph)); } } } catch (Exception e) { log.Error("Error while obtaining FusedDataPublication."); log.Error(e.Message); throw new SoapException("Error while obtaining FusedDataPublication.", SoapException.ServerFaultCode, e); } DeliverAverageSpeedFusedDataResponse response = new DeliverAverageSpeedFusedDataResponse(); response.status = "DeliverAverageSpeedFusedDataRequest: Successful Delivery"; return response; }
public void CheckErrorInGetDeliverAverageSpeedFusedDataResponseTest() { IAverageSpeedFusedDataService averageSpeedFusedData = new AverageSpeedFusedDataService(); DeliverAverageSpeedFusedDataRequest deliverAverageSpeedFusedDataRequest = new DeliverAverageSpeedFusedDataRequest(); model = null; // This will be checked by ExampleDataCheckOk(d2LogicalModel) deliverAverageSpeedFusedDataRequest.d2LogicalModel = model; string expected = "DeliverAverageSpeedFusedDataRequest: Successful Delivery"; string actual; // This should cause a SoapException actual = (averageSpeedFusedData.GetDeliverAverageSpeedFusedDataResponse(deliverAverageSpeedFusedDataRequest)).status; Assert.AreEqual(expected, actual); }
public void CheckValidGetDeliverAverageSpeedFusedDataResponseTest() { IAverageSpeedFusedDataService averageSpeedFusedData = new AverageSpeedFusedDataService(); DeliverAverageSpeedFusedDataRequest deliverAverageSpeedFusedDataRequest = new DeliverAverageSpeedFusedDataRequest(); deliverAverageSpeedFusedDataRequest.d2LogicalModel = model; string expected = "DeliverAverageSpeedFusedDataRequest: Successful Delivery"; string actual; actual = (averageSpeedFusedData.GetDeliverAverageSpeedFusedDataResponse(deliverAverageSpeedFusedDataRequest)).status; Assert.AreEqual(expected, actual); }