public virtual int SetSccLocation(string sccProjectName, string sccAuxPath, string sccLocalPath, string sccProvider)
{
if (this.IsSccDisabled)
{
throw new NotImplementedException();
}
if (sccProjectName == null)
{
throw new ArgumentNullException("sccProjectName");
}
if (sccAuxPath == null)
{
throw new ArgumentNullException("sccAuxPath");
}
if (sccLocalPath == null)
{
throw new ArgumentNullException("sccLocalPath");
}
if (sccProvider == null)
{
throw new ArgumentNullException("sccProvider");
}
// Save our settings (returns true if something changed)
if (!this.SetSccSettings(sccProjectName, sccLocalPath, sccAuxPath, sccProvider))
{
return VSConstants.S_OK;
}
bool unbinding = (sccProjectName.Length == 0 && sccProvider.Length == 0);
if (unbinding || this.QueryEditProjectFile(false))
{
this.buildProject.SetProperty(ProjectFileConstants.SccProjectName, sccProjectName);
this.buildProject.SetProperty(ProjectFileConstants.SccProvider, sccProvider);
this.buildProject.SetProperty(ProjectFileConstants.SccAuxPath, sccAuxPath);
this.buildProject.SetProperty(ProjectFileConstants.SccLocalPath, sccLocalPath);
}
this.isRegisteredWithScc = true;
return VSConstants.S_OK;
}