def METHOD_NAME(self, builder):
    """This method is responsible for dispatching job to scheduler and extracting job ID by applying a ``re.search`` against
    output at onset of job submission. If job id is not retrieved due to job failure or unable to match regular expression we
    mark job incomplete by invoking :func:`buildtest.buildsystem.base.BuilderBase.incomplete`` method and return from method.
    If we have a valid job ID we invoke :class:`buildtest.executors.lsf.LSFJob` class given the job id to poll job and store this
    into ``builder.job`` attribute.
    Args:
        builder (buildtest.buildsystem.base.BuilderBase): An instance object of BuilderBase type
    """
    os.chdir(builder.stage_dir)
    self.logger.debug(f"Changing to stage directory {builder.stage_dir}")
    cmd = f"bash {self._bashopts} {os.path.basename(builder.build_script)}"
    timeout = self.timeout or self._buildtestsettings.target_config.get("timeout")
    command = builder.METHOD_NAME(cmd, timeout)
    if command.returncode() != 0:
        builder.failed()
        return builder
    out = command.get_output()
    out = " ".join(out)
    pattern = r"(\d+)"
    # output in the form:  'Job <58654> is submitted to queue <batch>' and applying regular expression to get job ID
    m = re.search(pattern, out)
    self.logger.debug(f"Applying regular expression '{pattern}' to output: '{out}'")
    # if there is no match we raise error
    if not m:
        self.logger.debug(f"Unable to find LSF Job ID in output: '{out}'")
        builder.failed()
        return builder
    try:
        job_id = int(m.group(0))
    except ValueError:
        self.logger.debug(
            f"Unable to convert '{m.group(0)}' to int to extract Job ID"
        )
        builder.failed()
        return builder
    builder.job = LSFJob(job_id)
    builder.metadata["jobid"] = job_id
    msg = f"[blue]{builder}[/]: JobID: {builder.metadata['jobid']} dispatched to scheduler"
    self.logger.debug(msg)
    console.print(msg)
    return builder