C# Class NuGet.ProjectManager

Inheritance: IProjectManager
Show file Open project: OneGet/nuget

Public Methods

Method Description
AddPackageReference ( IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions ) : void
AddPackageReference ( string packageId ) : void

Seems to be used by unit tests only. Perhaps, consumers of NuGet.Core may be using this overload

AddPackageReference ( string packageId, NuGet.SemanticVersion version ) : void
AddPackageReference ( string packageId, NuGet.SemanticVersion version, bool ignoreDependencies, bool allowPrereleaseVersions ) : void
IsInstalled ( IPackage package ) : bool
ProjectManager ( IPackageRepository sourceRepository, IPackagePathResolver pathResolver, IProjectSystem project, IPackageRepository localRepository ) : System
RemovePackageReference ( IPackage package, bool forceRemove, bool removeDependencies ) : void
RemovePackageReference ( string packageId ) : void
RemovePackageReference ( string packageId, bool forceRemove ) : void
RemovePackageReference ( string packageId, bool forceRemove, bool removeDependencies ) : void
UpdatePackageReference ( IPackage remotePackage, bool updateDependencies, bool allowPrereleaseVersions ) : void
UpdatePackageReference ( string packageId, IVersionSpec versionSpec, bool updateDependencies, bool allowPrereleaseVersions ) : void
UpdatePackageReference ( string packageId, SemanticVersion version, bool updateDependencies, bool allowPrereleaseVersions ) : void

If the remote package is already determined, consider using the overload which directly takes in the remote package Can avoid calls FindPackage calls to source repository. However, it should also be remembered that SourceRepository of ProjectManager is an aggregate of "SharedPackageRepository" and the selected repository. So, if the package is present on the repository path (by default, the packages folder) It would not result in a call to the server

Protected Methods

Method Description
AddPackageReferenceToProject ( IPackage package ) : void
Execute ( NuGet.PackageOperation operation ) : void
UpdatePackageReference ( IPackage package ) : void

Private Methods

Method Description
CreateOperation ( IPackage package ) : NuGet.PackageOperationEventArgs
Execute ( IPackage package, IPackageOperationResolver resolver ) : void
ExtractPackageFilesToProject ( IPackage package ) : void
FilterAssemblyReferences ( List assemblyReferences, ICollection packageAssemblyReferences ) : void
GetCompatibleInstalledItemsForPackage ( string packageId, IEnumerable items ) : IEnumerable

This method uses the 'targetFramework' attribute in the packages.config to determine compatible items. Hence, it's only good for uninstall operations.

GetConfigMappings ( ) : IDictionary>
GetFilteredAssembliesToDelete ( IPackage package ) : IList
GetPackageTargetFramework ( string packageId ) : FrameworkName
IsTransformFile ( string path ) : bool
LogTargetFrameworkInfo ( IPackage package, List assemblyReferences, List contentFiles, List buildFiles ) : void
OnPackageReferenceAdded ( NuGet.PackageOperationEventArgs e ) : void
OnPackageReferenceAdding ( NuGet.PackageOperationEventArgs e ) : void
OnPackageReferenceRemoved ( NuGet.PackageOperationEventArgs e ) : void
OnPackageReferenceRemoving ( NuGet.PackageOperationEventArgs e ) : void
RemovePackageReferenceFromProject ( IPackage package ) : void
UpdatePackageReference ( string packageId ) : void

Seems to be used by unit tests only. Perhaps, consumers of NuGet.Core may be using this overload

UpdatePackageReference ( string packageId, Func resolvePackage, bool updateDependencies, bool allowPrereleaseVersions, bool targetVersionSetExplicitly ) : void
UpdatePackageReference ( string packageId, SemanticVersion version ) : void

Seems to be used by unit tests only. Perhaps, consumers of NuGet.Core may be using this overload

UpdatePackageReferenceCore ( IPackage package, bool updateDependencies, bool allowPrereleaseVersions ) : void

Method Details

AddPackageReference() public method

public AddPackageReference ( IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions ) : void
package IPackage
ignoreDependencies bool
allowPrereleaseVersions bool
return void

AddPackageReference() public method

Seems to be used by unit tests only. Perhaps, consumers of NuGet.Core may be using this overload
public AddPackageReference ( string packageId ) : void
packageId string
return void

AddPackageReference() public method

public AddPackageReference ( string packageId, NuGet.SemanticVersion version ) : void
packageId string
version NuGet.SemanticVersion
return void

AddPackageReference() public method

public AddPackageReference ( string packageId, NuGet.SemanticVersion version, bool ignoreDependencies, bool allowPrereleaseVersions ) : void
packageId string
version NuGet.SemanticVersion
ignoreDependencies bool
allowPrereleaseVersions bool
return void

AddPackageReferenceToProject() protected method

protected AddPackageReferenceToProject ( IPackage package ) : void
package IPackage
return void

Execute() protected method

protected Execute ( NuGet.PackageOperation operation ) : void
operation NuGet.PackageOperation
return void

IsInstalled() public method

public IsInstalled ( IPackage package ) : bool
package IPackage
return bool

ProjectManager() public method

public ProjectManager ( IPackageRepository sourceRepository, IPackagePathResolver pathResolver, IProjectSystem project, IPackageRepository localRepository ) : System
sourceRepository IPackageRepository
pathResolver IPackagePathResolver
project IProjectSystem
localRepository IPackageRepository
return System

RemovePackageReference() public method

public RemovePackageReference ( IPackage package, bool forceRemove, bool removeDependencies ) : void
package IPackage
forceRemove bool
removeDependencies bool
return void

RemovePackageReference() public method

public RemovePackageReference ( string packageId ) : void
packageId string
return void

RemovePackageReference() public method

public RemovePackageReference ( string packageId, bool forceRemove ) : void
packageId string
forceRemove bool
return void

RemovePackageReference() public method

public RemovePackageReference ( string packageId, bool forceRemove, bool removeDependencies ) : void
packageId string
forceRemove bool
removeDependencies bool
return void

UpdatePackageReference() protected method

protected UpdatePackageReference ( IPackage package ) : void
package IPackage
return void

UpdatePackageReference() public method

public UpdatePackageReference ( IPackage remotePackage, bool updateDependencies, bool allowPrereleaseVersions ) : void
remotePackage IPackage
updateDependencies bool
allowPrereleaseVersions bool
return void

UpdatePackageReference() public method

public UpdatePackageReference ( string packageId, IVersionSpec versionSpec, bool updateDependencies, bool allowPrereleaseVersions ) : void
packageId string
versionSpec IVersionSpec
updateDependencies bool
allowPrereleaseVersions bool
return void

UpdatePackageReference() public method

If the remote package is already determined, consider using the overload which directly takes in the remote package Can avoid calls FindPackage calls to source repository. However, it should also be remembered that SourceRepository of ProjectManager is an aggregate of "SharedPackageRepository" and the selected repository. So, if the package is present on the repository path (by default, the packages folder) It would not result in a call to the server
public UpdatePackageReference ( string packageId, SemanticVersion version, bool updateDependencies, bool allowPrereleaseVersions ) : void
packageId string
version SemanticVersion
updateDependencies bool
allowPrereleaseVersions bool
return void