@Override
    public BuildSetTask build(BuildConfiguration buildConfiguration,
                           User user, BuildOptions buildOptions) throws BuildConflictException {
        BuildConfigurationAudited buildConfigurationAudited = datastoreAdapter.getLatestBuildConfigurationAuditedInitializeBCDependencies(buildConfiguration.getId());
        return build0(user, buildOptions, buildConfigurationAudited);
    }
@Override
    public BuildSetTask build(BuildConfiguration buildConfiguration,
                           User user, BuildOptions buildOptions) throws BuildConflictException {
        BuildConfigurationAudited buildConfigurationAudited = datastoreAdapter.getLatestBuildConfigurationAuditedInitializeBCDependencies(buildConfiguration.getId());
        return build0(user, buildOptions, buildConfigurationAudited);
    }
@ Override public BuildSetTask build ( BuildConfiguration buildConfiguration , User user , BuildOptions buildOptions ) throws BuildConflictException { BuildConfigurationAudited buildConfigurationAudited = datastoreAdapter . getLatestBuildConfigurationAuditedInitializeBCDependencies ( buildConfiguration . getId ( ) ) ; return build0 ( user , buildOptions , buildConfigurationAudited ) ; }
Run a single build.  Uses the settings from the latest saved/audited build configuration.

@param buildConfiguration The build configuration which will be used.  The latest version of this
build config will be built.
@param user The user who triggered the build.
@param buildOptions Customization of a build specified by user

@return The new build task
@throws BuildConflictException If there is already a build running with the same build configuration Id and version
Run a single build . Uses the settings from the latest saved / audited build configuration .