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

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

/*
 *
 * 2020 Copyright (C) Geotab Inc. All rights reserved.
 */

package com.geotab.model.search;

import com.geotab.model.enumeration.DeviceType;
import java.time.LocalDateTime;
import java.util.List;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;

@NoArgsConstructor
@AllArgsConstructor
@Getter
@Setter
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
public class DeviceSearch extends IdSearch {

  /**
   * Gets or sets search for Devices with comments matching this value. Wildcard can be used by
   * prepending/appending "%" to String. Example "%comments%".
   */
  private String comment;

  /**
   * Gets or sets search for Devices of this {@link com.geotab.model.enumeration.DeviceType}.
   */
  private DeviceType deviceType;

  /**
   * Gets or sets search for Devices that were active at this date or after. Set to UTC now to
   * search for only currently active (non-archived) devices.
   */
  private LocalDateTime fromDate;

  /**
   * Gets or sets search for Devices that are a member of these {@link GroupSearch}(s). Each
   * GroupSearch is an object within the array.
   *
   * 

Available GroupSearch options are:. *

    *
  • id
  • *
*/ private List groups; /** * Gets or sets search for a Device with this unique hardware ID. */ private Long hardwareId; /** * Gets or sets search for Devices with a license plate matching this value. Wildcard can be used * by prepending/appending "%" to String. Example "%comments%". */ private String licensePlate; /** * Gets or sets search for Devices with this Name. Name is the primary description of the Device. * Wildcard can be used by prepending/appending "%" to String. Example "%name%". */ private String name; /** * Gets or sets search for a Device by its unique serial number. */ private String serialNumber; /** * Gets or sets search for Devices that were active at this date or before. */ private LocalDateTime toDate; /** * Gets or sets search for a Device by Vehicle Identification Number (VIN). This is the unique * number assigned to the vehicle during manufacturing. */ private String vehicleIdentificationNumber; /** * Gets or sets search for entities that contain specific keywords in all wildcard * String-searchable fields. */ private List keywords; @Builder @SuppressWarnings("squid:S00107") public DeviceSearch(String id, String comment, DeviceType deviceType, LocalDateTime fromDate, List groups, Long hardwareId, String licensePlate, String name, String serialNumber, LocalDateTime toDate, String vehicleIdentificationNumber, List keywords) { super(id); this.comment = comment; this.deviceType = deviceType; this.fromDate = fromDate; this.groups = groups; this.hardwareId = hardwareId; this.licensePlate = licensePlate; this.name = name; this.serialNumber = serialNumber; this.toDate = toDate; this.vehicleIdentificationNumber = vehicleIdentificationNumber; this.keywords = keywords; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy