Class ForecastedEvent

    • Method Detail

      • eventId

        public final String eventId()

        The forecasted event identifier.

        Returns:
        The forecasted event identifier.
      • geofenceId

        public final String geofenceId()

        The geofence identifier pertaining to the forecasted event.

        Returns:
        The geofence identifier pertaining to the forecasted event.
      • isDeviceInGeofence

        public final Boolean isDeviceInGeofence()

        Indicates if the device is located within the geofence.

        Returns:
        Indicates if the device is located within the geofence.
      • nearestDistance

        public final Double nearestDistance()

        The closest distance from the device's position to the geofence.

        Returns:
        The closest distance from the device's position to the geofence.
      • eventType

        public final ForecastedGeofenceEventType eventType()

        The event type, forecasting three states for which a device can be in relative to a geofence:

        ENTER: If a device is outside of a geofence, but would breach the fence if the device is moving at its current speed within time horizon window.

        EXIT: If a device is inside of a geofence, but would breach the fence if the device is moving at its current speed within time horizon window.

        IDLE: If a device is inside of a geofence, and the device is not moving.

        If the service returns an enum value that is not available in the current SDK version, eventType will return ForecastedGeofenceEventType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from eventTypeAsString().

        Returns:
        The event type, forecasting three states for which a device can be in relative to a geofence:

        ENTER: If a device is outside of a geofence, but would breach the fence if the device is moving at its current speed within time horizon window.

        EXIT: If a device is inside of a geofence, but would breach the fence if the device is moving at its current speed within time horizon window.

        IDLE: If a device is inside of a geofence, and the device is not moving.

        See Also:
        ForecastedGeofenceEventType
      • eventTypeAsString

        public final String eventTypeAsString()

        The event type, forecasting three states for which a device can be in relative to a geofence:

        ENTER: If a device is outside of a geofence, but would breach the fence if the device is moving at its current speed within time horizon window.

        EXIT: If a device is inside of a geofence, but would breach the fence if the device is moving at its current speed within time horizon window.

        IDLE: If a device is inside of a geofence, and the device is not moving.

        If the service returns an enum value that is not available in the current SDK version, eventType will return ForecastedGeofenceEventType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from eventTypeAsString().

        Returns:
        The event type, forecasting three states for which a device can be in relative to a geofence:

        ENTER: If a device is outside of a geofence, but would breach the fence if the device is moving at its current speed within time horizon window.

        EXIT: If a device is inside of a geofence, but would breach the fence if the device is moving at its current speed within time horizon window.

        IDLE: If a device is inside of a geofence, and the device is not moving.

        See Also:
        ForecastedGeofenceEventType
      • forecastedBreachTime

        public final Instant forecastedBreachTime()

        The forecasted time the device will breach the geofence in ISO 8601 format: YYYY-MM-DDThh:mm:ss.sssZ

        Returns:
        The forecasted time the device will breach the geofence in ISO 8601 format: YYYY-MM-DDThh:mm:ss.sssZ
      • hasGeofenceProperties

        public final boolean hasGeofenceProperties()
        For responses, this returns true if the service returned a value for the GeofenceProperties property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
      • geofenceProperties

        public final Map<String,​String> geofenceProperties()

        The geofence properties.

        Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

        This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasGeofenceProperties() method.

        Returns:
        The geofence properties.
      • hashCode

        public final int hashCode()
        Overrides:
        hashCode in class Object
      • equals

        public final boolean equals​(Object obj)
        Overrides:
        equals in class Object
      • toString

        public final String toString()
        Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
        Overrides:
        toString in class Object
      • getValueForField

        public final <T> Optional<T> getValueForField​(String fieldName,
                                                      Class<T> clazz)