code: public void init(InternalSerializationService serializationService, Data key, Object value, Extractors extractors) {
          if (key == null) {
              throw new IllegalArgumentException("keyData cannot be null");
          }
  
          this.serializationService = serializationService;
  
          this.key = key;
          this.value = value;
          this.extractors = extractors;
      }
docs: It may be useful to use this {@code init} method in some cases that same instance of this class can be used
  instead of creating a new one for every iteration when scanning large data sets, for example:
  <pre>
  <code>Predicate predicate = ...
  QueryEntry entry = new QueryEntry()
  for (i == 0; i < HUGE_NUMBER; i++) {
  entry.init(...)
  boolean valid = predicate.apply(queryEntry);
  
  if (valid) {
  ....
  }
  }
  </code>
  </pre>