io.camunda.operate.store.ProcessStore Maven / Gradle / Ivy
/*
* Copyright Camunda Services GmbH and/or licensed to Camunda Services GmbH under
* one or more contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright ownership.
* Licensed under the Camunda License 1.0. You may not use this file
* except in compliance with the Camunda License 1.0.
*/
package io.camunda.operate.store;
import io.camunda.operate.entities.ProcessEntity;
import io.camunda.operate.entities.listview.ProcessInstanceForListViewEntity;
import io.camunda.operate.entities.listview.ProcessInstanceState;
import java.io.IOException;
import java.util.*;
import org.springframework.lang.Nullable;
public interface ProcessStore {
// General methods -> TODO: refactor to upper interface?
Optional getDistinctCountFor(final String fieldName);
void refreshIndices(String... indices);
// ProcessStore
ProcessEntity getProcessByKey(final Long processDefinitionKey);
String getDiagramByKey(final Long processDefinitionKey);
Map> getProcessesGrouped(
String tenantId, @Nullable Set allowedBPMNprocessIds);
Map getProcessesIdsToProcessesWithFields(
@Nullable Set allowedBPMNIds, int maxSize, String... fields);
long deleteProcessDefinitionsByKeys(Long... processDefinitionKeys);
/// Process instance methods
ProcessInstanceForListViewEntity getProcessInstanceListViewByKey(Long processInstanceKey);
Map getCoreStatistics(@Nullable Set allowedBPMNids);
String getProcessInstanceTreePathById(final String processInstanceId);
List