Класс FindMode содержит поля, которые участвуют в поиске электронных ключей. Используется для формирования множества полей поиска ключа.

Поля поиска ключа

FindField.FindByProgramПоиск по номеру программы.

FindField.FindByteId

Поиск по ID ключа.

FindField.FindBySerial

Поиск по серийному номеру.

FindField.FindByVersion

Поиск по номеру версии.

FindField.FindByMask

Поиск по битовой маске.

FindField.FindByFeature

Поиск по типу ключа.

FindField.FindByModel

Поиск по модели ключа.

Открытые конструкторы

 

public FindMode() 

Создаёт класс для поиска всех электронных ключей.

 

public FindMode(int publicCode)

Создаёт класс для поиска электронных ключей с заданным PUBLIC кодом.

Параметры

publicCode - Значение PUBLIC кода

 

public FindMode(int publicCode, byte programNumber) 

Создаёт класс для поиска электронных ключей с заданным PUBLIC кодом и номером программы.

Параметры

publicCode - Значение PUBLIC кода.

programNumber - Значение номера программы. 


Открытые методы

 

public boolean setField(FindField findField, byte value)

Добавляет новое поле поиска (только для однобайтовых полей).

Параметры

findField - Новое поле поиска.

value - Значение поля.

Возвращаемое значение

Возвращает false при попытке установить поле, длина которого больше 1 байта.

 

public boolean setField(FindField findField, short value)

Добавляет новое поле поиска (только для однобайтовых и двухбайтовых полей).

Параметры

findField - Новое поле поиска. 

value - Значение поля. 

Возвращаемое значение

Возвращает false при попытке установить поле, длина которого больше 2-х байт. Также возвращает false, если установлены старшие биты для однобайтовых полей или устанавливаемое значение неверно для указанного поля.

 

public boolean setField(FindField findField, int value)

Добавляет новое поле поиска.

Параметры

findField - Новое поле поиска (любое поле).

value - Значение поля.

Возвращаемое значение

Возвращает false, если установлены старшие биты для полей длиной меньше 4-х байт. Также возвращает false, если устанавливаемое значение неверно для указанного поля.

 

public void setField(FeatureEnum featureEnum)

Добавляет поиск по функциональным возможностям ключа.

Параметры

featureEnum - Множество функциональных возможностей ключа.

Типы ключей

Feature.LoadableCode - Ключ с возможностью загрузки кода.

Feature.RTC - Ключ с часами реального времени

Пример поиска ключей с часами реального времени:

findMode = new FindMode(PUBLIC_CODE);

findMode.setField(FeatureEnum.of(Feature.RTC));

 

public void setField(ModelEnum modelEnum)

Добавляет поиск по модели ключа.

Параметры

modelEnum - Множество моделей для поиска.

Модели ключей

Model.Code - Электронный ключ Guardant Code micro/Code/Code Time.

Model.JavaCard - Электронный ключ Guardant micro SD.

Пример поиска только Guardant microSD ключей:

findMode = new FindMode(PUBLOC_CODE);

findMode.setField(ModelEnum.of(Mode.JavaCard));

 

public void removeField(FindField findField)

Удаляет заданное поле из множества полей поиска.

Параметры

findField - Поле поиска ключа.

 

public EnumSet<FindField> getFindFlags()

Возвращает заданные условия поиска электронных ключей (текущее множество полей поиска).

  • No labels