MiKTeX 23.10-next
A scalable TeX distribution
Loading...
Searching...
No Matches
Public Member Functions | List of all members
MiKTeX::Packages::internal::PackageInstallerImpl Class Reference
Inheritance diagram for MiKTeX::Packages::internal::PackageInstallerImpl:
Inheritance graph
[legend]
Collaboration diagram for MiKTeX::Packages::internal::PackageInstallerImpl:
Collaboration graph
[legend]

Public Member Functions

 PackageInstallerImpl (std::shared_ptr< MiKTeX::Packages::D6AAD62216146D44B580E92711724B78::PackageManagerImpl > manager, const InitInfo &initInfo)
 
void Dispose () override
 Releases all resources used by this package installer object. More...
 
void Download () override
 
void DownloadAsync () override
 
void FindUpdatesAsync () override
 
void FindUpgradesAsync (PackageLevel packageLevel) override
 
void InstallRemove (Role role) override
 
void InstallRemoveAsync (Role role) override
 
void OnBeginFileExtraction (const std::string &fileName, std::size_t uncompressedSize) override
 
void OnEndFileExtraction (const std::string &fileName, std::size_t uncompressedSize) override
 
bool OnError (const std::string &message) override
 
bool OnProcessOutput (const void *pOutput, std::size_t n) override
 
void OnProgress () override
 
void RegisterComponents (bool doRegister) override
 
void SetCallback (PackageInstallerCallback *callback) override
 
void UpdateDbAsync () override
 
void WaitForCompletion () override
 Waits for the started thread to complete. More...
 
void FindUpdates () override
 Checks for updates. More...
 
void FindUpgrades (PackageLevel packageLevel) override
 
ProgressInfo GetProgressInfo () override
 
std::vector< UpdateInfoGetUpdates () override
 
std::vector< UpgradeInfoGetUpgrades () override
 
bool IsRunning () const override
 
void SetDownloadDirectory (const MiKTeX::Util::PathName &directory) override
 
void SetFileList (const std::vector< std::string > &tbi) override
 
void SetFileLists (const std::vector< std::string > &tbi, const std::vector< std::string > &tbr) override
 
void SetPackageLevel (PackageLevel packageLevel) override
 
void SetRepository (const std::string &repository) override
 
void UpdateDb (UpdateDbOptionSet options) override
 Synchronizes the package database. More...
 
virtual void OnProgress ()=0
 
virtual bool ReadDirectory (const MiKTeX::Util::PathName &path, std::vector< std::string > &subDirNames, std::vector< std::string > &fileNames, std::vector< std::string > &fileNameInfos)=0
 
virtual bool OnProgress (unsigned level, const MiKTeX::Util::PathName &directory)=0
 
virtual bool OnProcessOutput (const void *output, std::size_t n)=0
 
virtual void OnBeginFileExtraction (const std::string &fileName, std::size_t uncompressedSize)=0
 
virtual void OnEndFileExtraction (const std::string &fileName, std::size_t uncompressedSize)=0
 
virtual bool OnError (const std::string &message)=0
 
virtual void Dispose ()=0
 Releases all resources used by this package installer object. More...
 
virtual void SetRepository (const std::string &repository)=0
 
virtual void SetDownloadDirectory (const MiKTeX::Util::PathName &directory)=0
 
virtual void UpdateDb (UpdateDbOptionSet options)=0
 Synchronizes the package database. More...
 
virtual void UpdateDbAsync ()=0
 
virtual void FindUpdates ()=0
 Checks for updates. More...
 
virtual void FindUpdatesAsync ()=0
 
virtual std::vector< UpdateInfoGetUpdates ()=0
 
virtual void FindUpgrades (PackageLevel packageLevel)=0
 
virtual void FindUpgradesAsync (PackageLevel packageLevel)=0
 
virtual std::vector< UpgradeInfoGetUpgrades ()=0
 
virtual void InstallRemove (Role role)=0
 
virtual void InstallRemoveAsync (Role role)=0
 
virtual void WaitForCompletion ()=0
 Waits for the started thread to complete. More...
 
virtual void Download ()=0
 
virtual void DownloadAsync ()=0
 
virtual ProgressInfo GetProgressInfo ()=0
 
virtual void SetCallback (PackageInstallerCallback *callback)=0
 
virtual void SetFileLists (const std::vector< std::string > &toBeInstalled, const std::vector< std::string > &toBeRemoved)=0
 
virtual void SetPackageLevel (PackageLevel packageLevel)=0
 
virtual void SetFileList (const std::vector< std::string > &toBeInstalled)=0
 
virtual bool IsRunning () const =0
 
virtual void RegisterComponents (bool postInstall)=0
 

Additional Inherited Members

- Public Types inherited from MiKTeX::Packages::PackageInstaller
enum class  Role { Application , Installer , Updater }
 Installation role. More...
 

Member Function Documentation

◆ Dispose()

void PackageInstallerImpl::Dispose ( )
overridevirtual

Releases all resources used by this package installer object.

Implements MiKTeX::Packages::PackageInstaller.

◆ Download()

void PackageInstallerImpl::Download ( )
overridevirtual

◆ DownloadAsync()

void PackageInstallerImpl::DownloadAsync ( )
overridevirtual

Downloads packages in a secondary thread.

See also
SetDownloadDirectory
SetPackageLevel
WaitForCompletion

Implements MiKTeX::Packages::PackageInstaller.

◆ FindUpdates()

void MiKTeX::Packages::internal::PackageInstallerImpl::FindUpdates ( )
inlineoverridevirtual

Checks for updates.

Implements MiKTeX::Packages::PackageInstaller.

◆ FindUpdatesAsync()

void PackageInstallerImpl::FindUpdatesAsync ( )
overridevirtual

Checks for updates in a secondary thread.

See also
WaitForCompletion

Implements MiKTeX::Packages::PackageInstaller.

◆ FindUpgrades()

void MiKTeX::Packages::internal::PackageInstallerImpl::FindUpgrades ( PackageLevel  packageLevel)
inlineoverridevirtual

Checks for upgradeable packages.

Parameters
packageLevelThe requested package level.

Implements MiKTeX::Packages::PackageInstaller.

◆ FindUpgradesAsync()

void PackageInstallerImpl::FindUpgradesAsync ( PackageLevel  packageLevel)
overridevirtual

Checks for upgrades in a secondary thread.

See also
WaitForCompletion

Implements MiKTeX::Packages::PackageInstaller.

◆ GetProgressInfo()

ProgressInfo MiKTeX::Packages::internal::PackageInstallerImpl::GetProgressInfo ( )
inlineoverridevirtual

Gets progress information.

Returns
Returns progress information.

Implements MiKTeX::Packages::PackageInstaller.

◆ GetUpdates()

std::vector< UpdateInfo > MiKTeX::Packages::internal::PackageInstallerImpl::GetUpdates ( )
inlineoverridevirtual

Gets updateable packages.

Returns
Returns collected update information records.

Implements MiKTeX::Packages::PackageInstaller.

◆ GetUpgrades()

std::vector< UpgradeInfo > MiKTeX::Packages::internal::PackageInstallerImpl::GetUpgrades ( )
inlineoverridevirtual

Gets upgradeable packages.

Returns
Returns upgrade information records.

Implements MiKTeX::Packages::PackageInstaller.

◆ InstallRemove()

void PackageInstallerImpl::InstallRemove ( Role  role)
overridevirtual

Installs/removes packages.

Parameters
roleThe installation role.

Implements MiKTeX::Packages::PackageInstaller.

◆ InstallRemoveAsync()

void PackageInstallerImpl::InstallRemoveAsync ( Role  role)
overridevirtual

Installs/removes packages in a secondary thread.

Parameters
roleThe installation role.
See also
WaitForCompletion

Implements MiKTeX::Packages::PackageInstaller.

◆ IsRunning()

bool MiKTeX::Packages::internal::PackageInstallerImpl::IsRunning ( ) const
inlineoverridevirtual

Tests if the secondary thread is running.

Returns
Returns true, if the installer is running.

Implements MiKTeX::Packages::PackageInstaller.

◆ OnBeginFileExtraction()

void PackageInstallerImpl::OnBeginFileExtraction ( const std::string &  fileName,
std::size_t  uncompressedSize 
)
overridevirtual

◆ OnEndFileExtraction()

void PackageInstallerImpl::OnEndFileExtraction ( const std::string &  fileName,
std::size_t  uncompressedSize 
)
overridevirtual

◆ OnError()

bool PackageInstallerImpl::OnError ( const std::string &  message)
overridevirtual

◆ OnProcessOutput()

bool PackageInstallerImpl::OnProcessOutput ( const void *  output,
std::size_t  n 
)
overridevirtual

Output function. Called by the Process object if new output text is available.

Parameters
outputOutput text bytes.
nNumber of output text bytes.
Returns
Returns true, if the Process object shall continue.

Implements MiKTeX::Core::IRunProcessCallback.

◆ OnProgress()

void PackageInstallerImpl::OnProgress ( )
overridevirtual

◆ RegisterComponents()

void PackageInstallerImpl::RegisterComponents ( bool  postInstall)
overridevirtual

Performs post-processing tasks.

Parameters
postInstallIndicates whether this is post-install or post-uninstall.

Implements MiKTeX::Packages::PackageInstaller.

◆ SetCallback()

void PackageInstallerImpl::SetCallback ( PackageInstallerCallback callback)
overridevirtual

Sets the callback interface.

Parameters
callbackPointer to object implementing the interface.

Implements MiKTeX::Packages::PackageInstaller.

◆ SetDownloadDirectory()

void MiKTeX::Packages::internal::PackageInstallerImpl::SetDownloadDirectory ( const MiKTeX::Util::PathName directory)
inlineoverridevirtual

Sets the download directory for this package installer.

Parameters
directoryThe path to the download directory.

Implements MiKTeX::Packages::PackageInstaller.

◆ SetFileList()

void MiKTeX::Packages::internal::PackageInstallerImpl::SetFileList ( const std::vector< std::string > &  toBeInstalled)
inlineoverridevirtual

Sets the package lists.

Parameters
toBeInstalledPackages to be installed.

Implements MiKTeX::Packages::PackageInstaller.

◆ SetFileLists()

void MiKTeX::Packages::internal::PackageInstallerImpl::SetFileLists ( const std::vector< std::string > &  toBeInstalled,
const std::vector< std::string > &  toBeRemoved 
)
inlineoverridevirtual

Sets the package lists.

Parameters
toBeInstalledPackages to be installed.
toBeRemovedPackages to be removed.

Implements MiKTeX::Packages::PackageInstaller.

◆ SetPackageLevel()

void MiKTeX::Packages::internal::PackageInstallerImpl::SetPackageLevel ( PackageLevel  packageLevel)
inlineoverridevirtual

Sets the package level.

Parameters
packageLevelThe package level to set.

Implements MiKTeX::Packages::PackageInstaller.

◆ SetRepository()

void MiKTeX::Packages::internal::PackageInstallerImpl::SetRepository ( const std::string &  repository)
inlineoverridevirtual

Sets the package repository for this package installer object.

Parameters
repositoryThe location of the package repository. Either an URL or an absolute path name.

Implements MiKTeX::Packages::PackageInstaller.

◆ UpdateDb()

void MiKTeX::Packages::internal::PackageInstallerImpl::UpdateDb ( UpdateDbOptionSet  options)
inlineoverridevirtual

Synchronizes the package database.

Implements MiKTeX::Packages::PackageInstaller.

◆ UpdateDbAsync()

void PackageInstallerImpl::UpdateDbAsync ( )
overridevirtual

Starts the package database synchronization thread.

See also
WaitForCompletion

Implements MiKTeX::Packages::PackageInstaller.

◆ WaitForCompletion()

void PackageInstallerImpl::WaitForCompletion ( )
overridevirtual

Waits for the started thread to complete.

Implements MiKTeX::Packages::PackageInstaller.


The documentation for this class was generated from the following files: