C# 클래스 Sage.Platform.Upgrade.ProjectUpgradeService

상속: IProjectUpgradeService
파일 보기 프로젝트 열기: Saleslogix/ProjectUpgrade

공개 프로퍼티들

프로퍼티 타입 설명
GetModelUpgradeServices IEnumerable>.Func

보호된 프로퍼티들

프로퍼티 타입 설명
_registeredBundles BundleInfo>.Dictionary
_registeredProjects RegisteredProjectInfo>.Dictionary

Private Properties

프로퍼티 타입 설명
AddCommandParameter void
AddDirectoryFilesToRepository void
AddFileToReleaseDb void
AddFileToReleaseDb void
ApplyTweaksForAutoBundleInstall void
BundleExistsInRepository bool
CalculateHashCode byte[]
CreateFileReleaseInfosFromReader IEnumerable
CreateReleaseDbSchemaIfNecessary void
CreateReleaseDbSchemaIfNecessary void
DetermineProjectVersionFromMatches RegisteredProjectInfo
ExecuteNonQuery void
ExtractBundleInfoFromBundleManifest BundleInfo
FileHasReleaseMatch bool
FileIsAValidAdd bool
FileIsAutoMergable bool
FileShouldBeTracked bool
FindAllMatchingReleaseInfo List
FindAllMatchingReleasesInProject List>.Dictionary
FindInstalledBundlesByMatches IEnumerable
GetAllReleaseInfoFromProjectByFile List>>.IEnumerable
GetAllTrackedFilesInProject IEnumerable
GetBackupFileNameFromProjectPath string
GetBundleInfoById BundleInfo
GetBundlesApplied List
GetLastInsertId long
GetPossibleBundlesApplied List
GetProjectById RegisteredProjectInfo
GetReaderOfMatchesByFileName IDataReader
GetReaderOfMatchesByUrl IDataReader
InsertBundleRecord long
InsertProjectRecord long
InstallBundle bool
LoadRegisteredBundles BundleInfo>.Dictionary
LoadRegisteredProjects RegisteredProjectInfo>.Dictionary
MergeFileIsAValidDiff bool

공개 메소드들

메소드 설명
AddBundleToRepository ( string bundlePath, System.Version version ) : void
AddProjectToRepository ( string projectPath, System.Version version, string projectName ) : void
AnalyzeForUpgrade ( IProject sourceProject, IProject baseProject ) : UpgradeReport
BuildBaseProject ( ProjectInstallInfo installedProjectInfo, IDirectoryInfo projectBackupDir, string baseProjectPath ) : bool
GetBundleInfosFromProject ( IDriveInfo projectDrive ) : IEnumerable
GetReleaseInfoByPath ( string path ) : List
IdentifyProjectVersion ( string projectPath ) : ProjectInstallInfo
ProjectUpgradeService ( ) : System
Upgrade ( IProject sourceProject, IProject baseProject, IProject targetProject ) : UpgradeReport

보호된 메소드들

메소드 설명
GetOpenConnection ( ) : IDbConnection

비공개 메소드들

메소드 설명
AddCommandParameter ( string name, object value, IDbCommand command ) : void
AddDirectoryFilesToRepository ( IDirectoryInfo directory, System.Version version, int bundleId = null, int projectId = null ) : void
AddFileToReleaseDb ( IFileInfo file, System.Version version, IDbConnection connection, int bundleId = null, int projectId = null ) : void
AddFileToReleaseDb ( string url, System.Version version, IDbConnection connection, byte hash, int bundleId = null, int projectId = null ) : void
ApplyTweaksForAutoBundleInstall ( Bundle bundle ) : void
BundleExistsInRepository ( IDirectoryInfo bundleDir, string bundleFileName ) : bool
CalculateHashCode ( IFileInfo file ) : byte[]
CreateFileReleaseInfosFromReader ( IDataReader reader ) : IEnumerable
CreateReleaseDbSchemaIfNecessary ( ) : void
CreateReleaseDbSchemaIfNecessary ( IDbConnection connection ) : void
DetermineProjectVersionFromMatches ( IEnumerable matchesByUrl ) : RegisteredProjectInfo
ExecuteNonQuery ( string sql, IDbConnection connection ) : void
ExtractBundleInfoFromBundleManifest ( IFileInfo bundleManifestFile, string bundleFileName ) : BundleInfo
FileHasReleaseMatch ( IFileInfo file, List releases ) : bool
FileIsAValidAdd ( IFileInfo file, IProject baseProject, IProject sourceProject, List warnings, IEnumerable modelUpgradeServices ) : bool
FileIsAutoMergable ( string url, IEnumerable modelUpgradeServices ) : bool
FileShouldBeTracked ( string path ) : bool
FindAllMatchingReleaseInfo ( IFileInfo file ) : List
FindAllMatchingReleasesInProject ( string projectPath ) : List>.Dictionary
FindInstalledBundlesByMatches ( IEnumerable matchesByUrl, System.Version mainVersion ) : IEnumerable
GetAllReleaseInfoFromProjectByFile ( string projectPath ) : List>>.IEnumerable
GetAllTrackedFilesInProject ( string projectPath ) : IEnumerable
GetBackupFileNameFromProjectPath ( string projectPath ) : string
GetBundleInfoById ( int id ) : BundleInfo
GetBundlesApplied ( IEnumerable matchedBundles, IEnumerable bundlesFromManifests ) : List
GetLastInsertId ( IDbConnection connection ) : long
GetPossibleBundlesApplied ( IEnumerable matchedBundles, IEnumerable bundlesFromManifests ) : List
GetProjectById ( int id ) : RegisteredProjectInfo
GetReaderOfMatchesByFileName ( string fileName, IDbConnection connection ) : IDataReader
GetReaderOfMatchesByUrl ( string url, IDbConnection connection ) : IDataReader
InsertBundleRecord ( BundleInfo bundleInfo, System.Version version ) : long
InsertProjectRecord ( RegisteredProjectInfo project ) : long
InstallBundle ( string bundlePath, string bundleFileName, IProject project ) : bool
LoadRegisteredBundles ( ) : BundleInfo>.Dictionary
LoadRegisteredProjects ( ) : RegisteredProjectInfo>.Dictionary
MergeFileIsAValidDiff ( IFileInfo file, List releases, IProject baseProject, IProject sourceProject, List warnings, IEnumerable modelUpgradeServices ) : bool

메소드 상세

AddBundleToRepository() 공개 메소드

public AddBundleToRepository ( string bundlePath, System.Version version ) : void
bundlePath string
version System.Version
리턴 void

AddProjectToRepository() 공개 메소드

public AddProjectToRepository ( string projectPath, System.Version version, string projectName ) : void
projectPath string
version System.Version
projectName string
리턴 void

AnalyzeForUpgrade() 공개 메소드

public AnalyzeForUpgrade ( IProject sourceProject, IProject baseProject ) : UpgradeReport
sourceProject IProject
baseProject IProject
리턴 UpgradeReport

BuildBaseProject() 공개 메소드

public BuildBaseProject ( ProjectInstallInfo installedProjectInfo, IDirectoryInfo projectBackupDir, string baseProjectPath ) : bool
installedProjectInfo ProjectInstallInfo
projectBackupDir IDirectoryInfo
baseProjectPath string
리턴 bool

GetBundleInfosFromProject() 공개 메소드

public GetBundleInfosFromProject ( IDriveInfo projectDrive ) : IEnumerable
projectDrive IDriveInfo
리턴 IEnumerable

GetOpenConnection() 보호된 메소드

protected GetOpenConnection ( ) : IDbConnection
리턴 IDbConnection

GetReleaseInfoByPath() 공개 메소드

public GetReleaseInfoByPath ( string path ) : List
path string
리턴 List

IdentifyProjectVersion() 공개 메소드

public IdentifyProjectVersion ( string projectPath ) : ProjectInstallInfo
projectPath string
리턴 ProjectInstallInfo

ProjectUpgradeService() 공개 메소드

public ProjectUpgradeService ( ) : System
리턴 System

Upgrade() 공개 메소드

public Upgrade ( IProject sourceProject, IProject baseProject, IProject targetProject ) : UpgradeReport
sourceProject IProject
baseProject IProject
targetProject IProject
리턴 UpgradeReport

프로퍼티 상세

GetModelUpgradeServices 공개적으로 프로퍼티

This is a temporary measure to inject IModelUpgradeService instances until the implementations can be moved to the proper assemblies and accessed through IModel.GetModelService(). This allows the project upgrade service to be a purely additive change for now that can be version controlled elsewhere.
public Func,IEnumerable> GetModelUpgradeServices
리턴 IEnumerable>.Func

_registeredBundles 보호되어 있는 프로퍼티

protected Dictionary _registeredBundles
리턴 BundleInfo>.Dictionary

_registeredProjects 보호되어 있는 프로퍼티

protected Dictionary _registeredProjects
리턴 RegisteredProjectInfo>.Dictionary