setFieldValue method

dynamic setFieldValue(
  1. int fieldID,
  2. Object? value
)
override

Set a field's value by fieldId. Primitive types must be "boxed" in the appropriate object wrapper type.

Implementation

setFieldValue(int fieldID, Object? value) {
  switch (fieldID) {
    case CODE:
      if (value == null) {
        unsetCode();
      } else {
        this.code = value as int?;
      }
      break;

    case LEADER:
      if (value == null) {
        unsetLeader();
      } else {
        this.leader = value as t_nebula.HostAddr?;
      }
      break;

    case KILLED_QUERIES:
      if (value == null) {
        unsetKilled_queries();
      } else {
        this.killed_queries = value as Map<int, Map<int, QueryDesc>>?;
      }
      break;

    case KILLED_SESSIONS:
      if (value == null) {
        unsetKilled_sessions();
      } else {
        this.killed_sessions = value as List<int>?;
      }
      break;

    default:
      throw new ArgumentError("Field $fieldID doesn't exist!");
  }
}