All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.camunda.bpm.engine.batch.Batch Maven / Gradle / Ivy

There is a newer version: 7.23.0-alpha2
Show newest version
/* Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.camunda.bpm.engine.batch;

/**
 * 

A batch represents a number of jobs which * execute a number of commands asynchronously. * *

Batches have three types of jobs: *

    *
  • Seed jobs: Create execution jobs *
  • Execution jobs: Execute the actual action *
  • Monitor jobs: Manage the batch once all execution jobs have been created * (e.g. responsible for deletion of the Batch after completion). *
* *

All three job types have independent job definitions. They can be controlled individually * (e.g. suspension) and are independently represented in the historic job log. */ public interface Batch { String TYPE_PROCESS_INSTANCE_MIGRATION = "instance-migration"; /** * @return the id of the batch */ String getId(); /** * @return the type of the batch */ String getType(); /** * @return the number of batch execution jobs required to complete the batch */ int getTotalJobs(); /** * @return the number of batch execution jobs already created by the seed job */ int getJobsCreated(); /** * @return number of batch jobs created per batch seed job invocation */ int getBatchJobsPerSeed(); /** * @return the number of invocations executed per batch job */ int getInvocationsPerBatchJob(); /** * @return the id of the batch seed job definition */ String getSeedJobDefinitionId(); /** * @return the id of the batch monitor job definition */ String getMonitorJobDefinitionId(); /** * @return the id of the batch job definition */ String getBatchJobDefinitionId(); /** * @return the batch's tenant id or null */ String getTenantId(); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy