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

com.geotab.model.search.StatusDataSearch Maven / Gradle / Ivy

package com.geotab.model.search;

import com.geotab.model.entity.statusdata.StatusData;
import java.time.LocalDateTime;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

/**
 * The object used to specify the arguments when searching for {@link StatusData}.
 *
 * 

When searching for status data including DeviceSearch and DiagnosticSearch the system will * return all records that match the search criteria and interpolate the value at the provided from/to dates when there * is no record that corresponds to the date. Interpolated records are dynamically created when the request is made and * can be identified as not having the ID property populated. Records with an ID are stored in the database. * *

This search has been designed to work efficiently with these combinations of parameters: *

    *
  • * Id *
  • *
  • * DeviceSearch + DiagnosticSearch + FromDate and/or ToDate *
  • *
* *

Cannot be used with DriverGroups. */ @Getter @Setter @NoArgsConstructor public class StatusDataSearch extends Search { /** * Search for {@link StatusData} recorded for this DeviceSearch Id * *

Available DeviceSearch options are:. *

    *
  • id
  • *
*/ private DeviceSearch deviceSearch; /** * Search for {@link StatusData} with this DiagnosticSearch Id * *

Available DiagnosticSearch options are:. *

    *
  • id
  • *
*/ private DiagnosticSearch diagnosticSearch; /** * Search for {@link StatusData} records that were logged at this date or after. */ private LocalDateTime fromDate; /** * Search for {@link StatusData} records that were logged at this date or before. */ private LocalDateTime toDate; @Builder public StatusDataSearch(String id, DeviceSearch deviceSearch, DiagnosticSearch diagnosticSearch, LocalDateTime fromDate, LocalDateTime toDate) { super(id); this.deviceSearch = deviceSearch; this.diagnosticSearch = diagnosticSearch; this.fromDate = fromDate; this.toDate = toDate; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy