public virtual UpdateProcessDefinitionSuspensionStateBuilderImpl CreateBuilder()
            {
                var builder = new UpdateProcessDefinitionSuspensionStateBuilderImpl();

                if (By.Equals(JobHandlerCfgProcessDefinitionId))
                {
                    builder.ByProcessDefinitionId(ProcessDefinitionId);
                }
                else if (By.Equals(JobHandlerCfgProcessDefinitionKey))
                {
                    builder.byProcessDefinitionKey(ProcessDefinitionKey);

                    if (IsTenantIdSet)
                    {
                        if (!ReferenceEquals(TenantId, null))
                        {
                            builder.processDefinitionTenantId(TenantId);
                        }
                        else
                        {
                            builder.processDefinitionWithoutTenantId();
                        }
                    }
                }
                else
                {
                    throw new ProcessEngineException("Unexpected job handler configuration for property '" +
                                                     JobHandlerCfgBy + "': " + By);
                }

                builder.includeProcessInstances(IncludeProcessInstances);

                return(builder);
            }