use of uk.org.siri.siri.PtSituationElementStructure in project onebusaway-application-modules by camsys.
the class ServiceAlertsHelper method addSituationExchangeToServiceDelivery.
public void addSituationExchangeToServiceDelivery(ServiceDelivery serviceDelivery, List<VehicleActivityStructure> activities, TransitDataService transitDataService, List<AgencyAndId> routeIds) {
if (activities == null)
return;
Map<String, PtSituationElementStructure> ptSituationElements = new HashMap<String, PtSituationElementStructure>();
for (VehicleActivityStructure activity : activities) {
if (activity.getMonitoredVehicleJourney() != null) {
addSituationElement(transitDataService, ptSituationElements, activity.getMonitoredVehicleJourney().getSituationRef());
}
}
addPtSituationElementsToServiceDelivery(serviceDelivery, ptSituationElements);
if (routeIds == null)
return;
List<ServiceAlertBean> serviceAlerts = new ArrayList<ServiceAlertBean>();
for (AgencyAndId routeId : routeIds) {
SituationQueryBean query = new SituationQueryBean();
SituationQueryBean.AffectsBean affects = new SituationQueryBean.AffectsBean();
query.getAffects().add(affects);
affects.setRouteId(routeId.toString());
ListBean<ServiceAlertBean> serviceAlertsForRoute = transitDataService.getServiceAlerts(query);
if (serviceAlertsForRoute != null) {
serviceAlerts.addAll(serviceAlertsForRoute.getList());
}
}
if (serviceAlerts.size() == 0)
return;
addSituationExchangeToServiceDelivery(serviceDelivery, serviceAlerts);
}
use of uk.org.siri.siri.PtSituationElementStructure in project onebusaway-application-modules by camsys.
the class ServiceAlertsHelper method addSituationElement.
private void addSituationElement(TransitDataService transitDataService, Map<String, PtSituationElementStructure> ptSituationElements, List<SituationRefStructure> situationRefs) {
if (situationRefs == null)
return;
for (SituationRefStructure situationRef : situationRefs) {
String situationId = situationRef.getSituationSimpleRef().getValue();
ServiceAlertBean serviceAlert = transitDataService.getServiceAlertForId(situationId);
PtSituationElementStructure e = getServiceAlertBeanAsPtSituationElementStructure(serviceAlert);
ptSituationElements.put(situationId, e);
}
}
use of uk.org.siri.siri.PtSituationElementStructure in project onebusaway-application-modules by camsys.
the class ServiceAlertsHelper method addGlobalServiceAlertsToServiceDelivery.
public void addGlobalServiceAlertsToServiceDelivery(ServiceDelivery serviceDelivery, RealtimeService realtimeService) {
List<ServiceAlertBean> serviceAlertBeans = realtimeService.getServiceAlertsGlobal();
if (serviceAlertBeans == null)
return;
Map<String, PtSituationElementStructure> ptSituationElements = new HashMap<String, PtSituationElementStructure>();
for (ServiceAlertBean serviceAlertBean : serviceAlertBeans) {
ptSituationElements.put(serviceAlertBean.getId(), getServiceAlertBeanAsPtSituationElementStructure(serviceAlertBean));
}
addPtSituationElementsToServiceDelivery(serviceDelivery, ptSituationElements);
}
use of uk.org.siri.siri.PtSituationElementStructure in project onebusaway-application-modules by camsys.
the class ServiceAlertsHelper method getServiceAlertBeanAsPtSituationElementStructure.
public PtSituationElementStructure getServiceAlertBeanAsPtSituationElementStructure(ServiceAlertBean serviceAlert) {
PtSituationElementStructure ptSit = new PtSituationElementStructure();
EntryQualifierStructure value = new EntryQualifierStructure();
if (serviceAlert != null) {
value.setValue(serviceAlert.getId());
ptSit.setSituationNumber(value);
} else {
// nothing to do
return ptSit;
}
if (serviceAlert.getCreationTime() != 0)
ptSit.setCreationTime(new Date(serviceAlert.getCreationTime()));
handleDescriptions(serviceAlert, ptSit);
handleOtherFields(serviceAlert, ptSit);
handleAffects(serviceAlert, ptSit);
handleConsequences(serviceAlert, ptSit);
return ptSit;
}
use of uk.org.siri.siri.PtSituationElementStructure in project onebusaway-application-modules by camsys.
the class ServiceAlertsHelper method addClosedSituationExchangesToSiri.
public void addClosedSituationExchangesToSiri(ServiceDelivery serviceDelivery, Collection<String> deletedIds) {
Map<String, PtSituationElementStructure> ptSituationElements = new HashMap<String, PtSituationElementStructure>();
for (String id : deletedIds) {
PtSituationElementStructure ptSit = new PtSituationElementStructure();
EntryQualifierStructure value = new EntryQualifierStructure();
value.setValue(id);
ptSit.setSituationNumber(value);
ptSit.setProgress(WorkflowStatusEnumeration.CLOSED);
ptSituationElements.put(id, ptSit);
}
addPtSituationElementsToServiceDelivery(serviceDelivery, ptSituationElements);
}
Aggregations