public List<Workflow> getWorkflows(
            String name, String correlationId, boolean includeClosed, boolean includeTasks) {
        Preconditions.checkArgument(StringUtils.isNotBlank(name), "name cannot be blank");
        Preconditions.checkArgument(
                StringUtils.isNotBlank(correlationId), "correlationId cannot be blank");

        WorkflowServicePb.GetWorkflowsResponse workflows =
                stub.getWorkflows(
                        WorkflowServicePb.GetWorkflowsRequest.newBuilder()
                                .setName(name)
                                .addCorrelationId(correlationId)
                                .setIncludeClosed(includeClosed)
                                .setIncludeTasks(includeTasks)
                                .build());

        if (!workflows.containsWorkflowsById(correlationId)) {
            return Collections.emptyList();
        }

        return workflows.getWorkflowsByIdOrThrow(correlationId).getWorkflowsList().stream()
                .map(protoMapper::fromProto)
                .collect(Collectors.toList());
    }
Retrieve all workflows for a given correlation id and name

@param name the name of the workflow
@param correlationId the correlation id
@param includeClosed specify if all workflows are to be returned or only running workflows
@param includeTasks specify if the tasks in the workflow need to be returned
@return list of workflows for the given correlation id and name
grpc-client/src/main/java/com/netflix/conductor/client/grpc/WorkflowClient.java