public bool CheckOutFile(Cdc.MetaManager.DataAccess.IVersionControlled domainObject, Cdc.MetaManager.DataAccess.Domain.Application application, out string errorMessage) { System.Configuration.AppSettingsReader appReader = new System.Configuration.AppSettingsReader(); string rootPath = appReader.GetValue("RepositoryPath", typeof(System.String)).ToString(); string parentPath = System.IO.Path.Combine(rootPath, application.Name + (application.IsFrontend.Value ? "_Frontend" : "_Backend")); string filePath = System.IO.Path.Combine(parentPath, NHibernate.Proxy.NHibernateProxyHelper.GetClassWithoutInitializingProxy(domainObject).Name); string fileName = domainObject.RepositoryFileName + ".xml"; string fullPath = System.IO.Path.Combine(filePath, fileName); bool success = true; errorMessage = string.Empty; if (IsFileInClearCase(fullPath)) { if (!IsCheckedOutByMe(fullPath)) { errorMessage = ExecuteClearCaseCommand(ClearCaseCommands.CHECK_OUT, fullPath).Error; success = string.IsNullOrEmpty(errorMessage); } } return(success); }
public bool CheckInFile(Cdc.MetaManager.DataAccess.IVersionControlled domainObject, Cdc.MetaManager.DataAccess.Domain.Application application, out string errorMessage) { string parentPath = System.IO.Path.Combine(_workspacePath, application.Name + (application.IsFrontend.Value ? "_Frontend" : "_Backend")); string filePath = System.IO.Path.Combine(parentPath, NHibernate.Proxy.NHibernateProxyHelper.GetClassWithoutInitializingProxy(domainObject).Name); string fileName = domainObject.RepositoryFileName + ".xml"; string fullPath = System.IO.Path.Combine(filePath, fileName); errorMessage = string.Empty; try { if (!_versionControlServer.ServerItemExists(_workspace.GetServerItemForLocalItem(fullPath), ItemType.Any)) { _workspace.PendAdd(fullPath); } CheckIn(domainObject, fullPath); return(true); } catch (Exception ex) { errorMessage = ex.ToString(); return(false); } }