@Override
 protected void applySortBy(
     HistoricProcessInstanceQuery query,
     String sortBy,
     Map<String, Object> parameters,
     ProcessEngine engine) {
   if (sortBy.equals(SORT_BY_PROCESS_INSTANCE_ID_VALUE)) {
     query.orderByProcessInstanceId();
   } else if (sortBy.equals(SORT_BY_PROCESS_DEFINITION_ID_VALUE)) {
     query.orderByProcessDefinitionId();
   } else if (sortBy.equals(SORT_BY_PROCESS_INSTANCE_BUSINESS_KEY_VALUE)) {
     query.orderByProcessInstanceBusinessKey();
   } else if (sortBy.equals(SORT_BY_PROCESS_INSTANCE_START_TIME_VALUE)) {
     query.orderByProcessInstanceStartTime();
   } else if (sortBy.equals(SORT_BY_PROCESS_INSTANCE_END_TIME_VALUE)) {
     query.orderByProcessInstanceEndTime();
   } else if (sortBy.equals(SORT_BY_PROCESS_INSTANCE_DURATION_VALUE)) {
     query.orderByProcessInstanceDuration();
   } else if (sortBy.equals(SORT_BY_TENANT_ID)) {
     query.orderByTenantId();
   }
 }