public Builder mergeFrom(com.google.transit.realtime.GtfsRealtime.Alert other) { if (other == com.google.transit.realtime.GtfsRealtime.Alert.getDefaultInstance()) return this; if (activePeriodBuilder_ == null) { if (!other.activePeriod_.isEmpty()) { if (other.hasCause()) { setCause(other.getCause()); if (other.hasEffect()) { setEffect(other.getEffect()); if (other.hasUrl()) { mergeUrl(other.getUrl()); if (other.hasHeaderText()) { mergeHeaderText(other.getHeaderText()); if (other.hasDescriptionText()) { mergeDescriptionText(other.getDescriptionText()); this.mergeUnknownFields(other.getUnknownFields()); return this;
private void handleAlert(String id, GtfsRealtime.Alert alert) { Alert alertText = new Alert(); alertText.alertDescriptionText = deBuffer(alert.getDescriptionText()); alertText.alertHeaderText = deBuffer(alert.getHeaderText()); alertText.alertUrl = deBuffer(alert.getUrl()); ArrayList<TimePeriod> periods = new ArrayList<TimePeriod>(); if(alert.getActivePeriodCount() > 0) { long bestStartTime = Long.MAX_VALUE; long lastEndTime = Long.MIN_VALUE; for (TimeRange activePeriod : alert.getActivePeriodList()) { final long realStart = activePeriod.hasStart() ? activePeriod.getStart() : 0; final long start = activePeriod.hasStart() ? realStart - earlyStart : 0; for (EntitySelector informed : alert.getInformedEntityList()) { if (fuzzyTripMatcher != null && informed.hasTrip()) { TripDescriptor trip = fuzzyTripMatcher.match(feedId, informed.getTrip());
List<GtfsRealtime.EntitySelector> entitySelectors = alert.getInformedEntityList(); if (entitySelectors != null && entitySelectors.size() > 0) { for (GtfsRealtime.EntitySelector entitySelector : entitySelectors) {
List<GtfsRealtime.EntitySelector> informedEntityList = entity.getAlert().getInformedEntityList(); for (GtfsRealtime.EntitySelector entitySelector : informedEntityList) { if (entitySelector.hasStopId()) {
public Builder mergeFrom(com.google.transit.realtime.GtfsRealtime.Alert other) { if (other == com.google.transit.realtime.GtfsRealtime.Alert.getDefaultInstance()) return this; if (activePeriodBuilder_ == null) { if (!other.activePeriod_.isEmpty()) { if (other.hasCause()) { setCause(other.getCause()); if (other.hasEffect()) { setEffect(other.getEffect()); if (other.hasUrl()) { mergeUrl(other.getUrl()); if (other.hasHeaderText()) { mergeHeaderText(other.getHeaderText()); if (other.hasDescriptionText()) { mergeDescriptionText(other.getDescriptionText()); this.mergeUnknownFields(other.getUnknownFields()); return this;
for (int i = 0; i < getActivePeriodCount(); i++) { if (!getActivePeriod(i).isInitialized()) { memoizedIsInitialized = 0; return false; for (int i = 0; i < getInformedEntityCount(); i++) { if (!getInformedEntity(i).isInitialized()) { memoizedIsInitialized = 0; return false; if (hasUrl()) { if (!getUrl().isInitialized()) { memoizedIsInitialized = 0; return false; if (hasHeaderText()) { if (!getHeaderText().isInitialized()) { memoizedIsInitialized = 0; return false; if (hasDescriptionText()) { if (!getDescriptionText().isInitialized()) { memoizedIsInitialized = 0; return false; if (!extensionsAreInitialized()) { memoizedIsInitialized = 0; return false;
alrt.setTimestamp(new Date(timestamp)); Alert alert = entity.getAlert(); for (TimeRange tr : alert.getActivePeriodList()) { TimeRangeModel timeRange = readTimeRange(tr); if (timeRange != null) { for (EntitySelector es : alert.getInformedEntityList()) { EntitySelectorModel entitySelector = readEntitySelector(es); if (entitySelector != null) { if (alert.hasCause()) { String cause = alert.getCause().getValueDescriptor().getFullName(); cause = cause.substring(cause.lastIndexOf('.') + 1); alrt.setCause(cause); if (alert.hasEffect()) { String effect = alert.getEffect().getValueDescriptor().getFullName(); effect = effect.substring(effect.lastIndexOf('.') + 1); alrt.setEffect(effect); if (alert.hasUrl()) { alrt.setUrl(alert.getUrl().getTranslation(0).getText()); if (alert.hasHeaderText()) { alrt.setHeaderText(alert.getHeaderText().getTranslation(0).getText()); if (alert.hasDescriptionText()) { alrt.setDescriptionText( alert.getDescriptionText().getTranslation(0).getText());
if (e.hasAlert()) { GtfsRealtime.Alert a = e.getAlert(); if (a.hasEffect() && a.getEffect().equals(GtfsRealtime.Alert.Effect.DETOUR)) { for (GtfsRealtime.EntitySelector entitySelector : a.getInformedEntityList()) { if (entitySelector.hasTrip()) { if (tripId.equals(entitySelector.getTrip().getTripId())) {
/** * Validate Alert time ranges - E001 * * @param entity entity that has alerts to check * @param errors list to which any errors can be added */ private void checkAlertE001(GtfsRealtime.FeedEntity entity, List<OccurrenceModel> errors) { GtfsRealtime.Alert alert = entity.getAlert(); List<GtfsRealtime.TimeRange> activePeriods = alert.getActivePeriodList(); if (activePeriods != null) { for (GtfsRealtime.TimeRange range : activePeriods) { if (range.hasStart()) { if (!isPosix(range.getStart())) { RuleUtils.addOccurrence(E001, "alert in entity " + entity.getId() + " active_period.start " + range.getStart(), errors, _log); } } if (range.hasEnd()) { if (!isPosix(range.getEnd())) { RuleUtils.addOccurrence(E001, "alert in entity " + entity.getId() + " active_period.end " + range.getEnd(), errors, _log); } } } } } }
b.setModifiedTime(SystemTime.currentTimeMillis()); b.setId(ServiceAlertLibrary.id(id)); for (GtfsRealtime.TimeRange range : alert.getActivePeriodList()) { ServiceAlerts.TimeRange.Builder rangeBuilder = ServiceAlerts.TimeRange.newBuilder(); if (range.hasStart()) b.addActiveWindow(rangeBuilder); if (alert.hasCause()) b.setCause(convertCause(alert.getCause())); if (alert.hasHeaderText()) b.setSummary(convertTranslatedString(alert.getHeaderText())); if (alert.hasDescriptionText()) b.setDescription(convertTranslatedString(alert.getDescriptionText())); if (alert.hasEffect()) { Consequence.Builder consequence = Consequence.newBuilder(); consequence.setEffect(convertEffect(alert.getEffect())); b.addConsequence(consequence); for (EntitySelector selector : alert.getInformedEntityList()) { Affects.Builder affects = getEntitySelectorAsAffects(selector, agencyIdMap); b.addAffects(affects); if (alert.hasUrl()) b.setUrl(convertTranslatedString(alert.getUrl())); return b;
for (int i = 0; i < getActivePeriodCount(); i++) { if (!getActivePeriod(i).isInitialized()) { memoizedIsInitialized = 0; return false; for (int i = 0; i < getInformedEntityCount(); i++) { if (!getInformedEntity(i).isInitialized()) { memoizedIsInitialized = 0; return false; if (hasUrl()) { if (!getUrl().isInitialized()) { memoizedIsInitialized = 0; return false; if (hasHeaderText()) { if (!getHeaderText().isInitialized()) { memoizedIsInitialized = 0; return false; if (hasDescriptionText()) { if (!getDescriptionText().isInitialized()) { memoizedIsInitialized = 0; return false; if (!extensionsAreInitialized()) { memoizedIsInitialized = 0; return false;