All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.geotab.model.entity.device.S1 Maven / Gradle / Ivy

package com.geotab.model.entity.device;

import static java.lang.Boolean.FALSE;

import java.util.List;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.experimental.SuperBuilder;

/**
 * The Go Anywhere Solar S1 device. Additional properties can be seen in {@link GoCurveAuxiliary}.
 *
 * @deprecated This project was canceled, and we must don't use this device type
 */
@Getter @Setter
@NoArgsConstructor
@SuperBuilder(builderMethodName = "s1Builder")
@Deprecated
public class S1 extends GoCurveAuxiliary {

  /**
   * Gets or sets value of the Go Anywhere device type.
   *
   * @deprecated AssetMovementType is obsolete and will be removed. Do not use.
   */
  @Deprecated
  public EosAssetMovementType assetMovementType;

  /**
   * Enables or disables OBD alerts for the device. Default [False].
   */
  protected Boolean obdAlertEnabled;

  /**
   * Gets or sets value for the Go Anywhere device communication rate in minutes
   */
  public Integer communicationFrequency;

  /**
   * Gets or sets value for indicating if the Go Anywhere device asset recovery mode is enabled
   */
  public Boolean assetRecoveryModeEnabled;

  /**
   * Gets or sets value for the Movement health check interval in seconds. Default [86400].
   */
  public Integer movementHealthCheckInterval;

  /**
   * Gets or sets value for indicating if the Go Anywhere device movement alert or trip start alert is enabled
   */
  public Boolean checkInOnTripEnabled;

  /**
   * Gets or sets value for indicating if the Go Anywhere device trip end alert is enabled
   */
  public Boolean checkInOnTripEndEnabled;

  /**
   * Gets or sets value for indicating if the Go Anywhere device scheduled sync is enabled
   */
  public Boolean scheduledSyncEnabled;

  /**
   * Gets or sets value for the Go Anywhere device scheduled sync time, it's the number of seconds since midnight 00:00 UTC
   */
  public Integer scheduledSyncTime;

  /**
   * Gets or sets value for indicating if the Go Anywhere device timed check-in is enabled
   */
  public Boolean timedCheckInEnabled;

  /**
   * Gets or sets value for the number of the Go Anywhere device timed check-ins
   */
  public Integer timedCheckInEntries;

  /**
   * Gets or sets value for the array of the Go Anywhere device check-in times in seconds
   */
  public List timedCheckInSeconds;

  {
    setDeviceType(DeviceType.S1);
  }

  @Override
  public void populateDefaults() {
    super.populateDefaults();
    this.productId = S1_PRODUCT_ID;
    this.obdAlertEnabled = FALSE;
    this.movementHealthCheckInterval = 86400;
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy