'Checks that the job is valid given the global config settings
First, either control_file must be set, or parameterized_job must be
set, but not both. Second, parameterized_job must be set if and only if
the parameterized_jobs option in the global config is set to True.
:param control_file: the definition of the control file
:type control_file: string
:param parameterized_job: a :class:`ParameterizedJob`
:type parameterized_job: :class:`ParameterizedJob`
:return: None'

@classmethod
def check_parameterized_job(cls, control_file, parameterized_job):

    if (not (bool(control_file) ^ bool(parameterized_job))):
        raise Exception('Job    must    have    either    control    file    or    parameterization,    but    not    both')
    parameterized_jobs_enabled = cls.parameterized_jobs_enabled()
    if (control_file and parameterized_jobs_enabled):
        raise Exception('Control    file    specified,    but    parameterized    jobs    are    enabled')
    if (parameterized_job and (not parameterized_jobs_enabled)):
        raise Exception('Parameterized    job    specified,    but    parameterized    jobs    are    not    enabled')
