IdA1CommandUserSearchBegin.java
package com.io7m.idstore.protocol.admin.cb;
import com.io7m.cedarbridge.runtime.api.CBDeserializerMethod;
import com.io7m.cedarbridge.runtime.api.CBSerializableType;
import com.io7m.cedarbridge.runtime.api.CBSerializationContextType;
import com.io7m.cedarbridge.runtime.api.CBSerializerMethod;
import java.io.IOException;
import java.util.Objects;
/**
* Start searching for users.
* @param fieldParameters The search parameters.
*/
public record IdA1CommandUserSearchBegin(
IdA1UserSearchParameters fieldParameters) implements CBSerializableType, ProtocolIdAv1Type {
public IdA1CommandUserSearchBegin {
Objects.requireNonNull(fieldParameters, "fieldParameters");
}
/**
* Serialize a value of type IdA1CommandUserSearchBegin.
* @param $context The serialization context.
* @param $x The value to be serialized.
*/
@CBSerializerMethod
public static void serialize(final CBSerializationContextType $context,
final IdA1CommandUserSearchBegin $x) throws IOException {
// Serialization calls in field order.
$context.begin("parameters");
IdA1UserSearchParameters.serialize($context, $x.fieldParameters);
$context.end("parameters");
}
/**
* Deserialize a value of type IdA1CommandUserSearchBegin.
* @param $context The serialization context.
* @return A value of type IdA1CommandUserSearchBegin.
*/
@CBDeserializerMethod
public static IdA1CommandUserSearchBegin deserialize(final CBSerializationContextType $context)
throws IOException {
// Deserialization calls in field order.
$context.begin("parameters");
final var $v0000 = IdA1UserSearchParameters.deserialize($context);
$context.end("parameters");
return new IdA1CommandUserSearchBegin($v0000);
}
}