private void processPredefinedLocationContainer(PredefinedLocationContainer predefinedLocationContainer, DateTime publicationTime) { if (predefinedLocationContainer.GetType() == typeof(PredefinedItinerary)) { PredefinedItinerary predefinedItinerary = (PredefinedItinerary)predefinedLocationContainer; string predefinedLocationContainerId = predefinedItinerary.id; _PredefinedItineraryIndexPredefinedLocation[] predefinedLocationList = predefinedItinerary.predefinedLocation; for (int predefinedLocationListPos = 0; predefinedLocationListPos < predefinedLocationList.Length; predefinedLocationListPos++) { _PredefinedItineraryIndexPredefinedLocation predefinedItineraryIndexPredefinedLocation = predefinedLocationList[predefinedLocationListPos]; processPredefinedLocation(predefinedItineraryIndexPredefinedLocation.predefinedLocation, publicationTime, predefinedLocationContainerId); } } else if (predefinedLocationContainer.GetType() == typeof(PredefinedNonOrderedLocationGroup)) { PredefinedNonOrderedLocationGroup predefinedNonOrderedLocationGroup = (PredefinedNonOrderedLocationGroup)predefinedLocationContainer; string predefinedLocationContainerId = predefinedNonOrderedLocationGroup.id; PredefinedLocation[] predefinedLocationList = predefinedNonOrderedLocationGroup.predefinedLocation; for (int predefinedLocationListPos = 0; predefinedLocationListPos < predefinedLocationList.Length; predefinedLocationListPos++) { PredefinedLocation predefinedLocation = predefinedLocationList[predefinedLocationListPos]; processPredefinedLocation(predefinedLocation, publicationTime, predefinedLocationContainerId); } } else { logWrapper.Error("Unexpected data type for PredefinedLocationContainer: " + predefinedLocationContainer.GetType().ToString()); return; } }
public override void processMessage(D2LogicalModel d2LogicalModel) { if (logWrapper.isDebug()) { logWrapper.Debug("NTIS Model Predefined Location Update"); } linkShapeStaticDataStore.clearDataStore(); nwkLinkStaticDataStore.clearDataStore(); anprRouteStaticDataStore.clearDataStore(); hatrisSectionStaticDataStore.clearDataStore(); nwkNodeStaticDataStore.clearDataStore(); alternateRouteStaticDataStore.clearDataStore(); PredefinedLocationsPublication predefinedLocationsPublication = (PredefinedLocationsPublication)d2LogicalModel.payloadPublication; if (predefinedLocationsPublication != null) { DateTime publicationTime = predefinedLocationsPublication.publicationTime; PredefinedLocationContainer[] predefinedLocationContainerList = predefinedLocationsPublication.predefinedLocationContainer; for (int predefinedLocationContainerListPos = 0; predefinedLocationContainerListPos < predefinedLocationContainerList.Length; predefinedLocationContainerListPos++) { PredefinedLocationContainer predefinedLocationContainer = predefinedLocationContainerList[predefinedLocationContainerListPos]; processPredefinedLocationContainer(predefinedLocationContainer, publicationTime); } } if (logWrapper.isDebug()) { logWrapper.Debug("NTIS Model Predefined Location Update Complete"); } }