ICF 3.0.5.47
Technical documentation of ICF Libraries
ipackage::CRegistriesManagerComp Class Reference

Manages registries and composed component. More...

#include <CRegistriesManagerComp.h>

Inheritance diagram for ipackage::CRegistriesManagerComp:
Collaboration diagram for ipackage::CRegistriesManagerComp:

Public Types

enum  MessageId { MI_CANNOT_REGISTER = 650 , MI_CANNOT_CREATE_ELEMENT }
 
typedef ilog::CLoggerComponentBase BaseClass
 
- Public Types inherited from ilog::TLoggerCompWrap< Base >
enum  MessageId { MI_BAD_DEPENDENCY = 0x8a340 }
 
typedef Base BaseClass
 
typedef ilog::CLoggerBase BaseClass2
 
- Public Types inherited from icomp::IExtPackagesManager
enum  PathType {
  PT_ALL , PT_CONFIG , PT_PACKAGES_DIR , PT_PACKAGE ,
  PT_REGISTRY
}
 
typedef QSet< QString > PathList
 List of pathes.
 
- Public Types inherited from icomp::IPackagesManager
enum  ChangeFlags { CF_PACKAGES_CHANGED = 0x734638 }
 
enum  PackageType { PT_UNDIFINED , PT_UNKNOWN , PT_REAL , PT_COMPOSED }
 
- Public Types inherited from istd::IChangeable
enum  ChangeFlags {
  CF_ICF_INTERNAL = 0 , CF_ALL_DATA , CF_ANY , CF_DESTROYING ,
  CF_DELEGATED , CF_NO_UNDO
}
 Data model change notification flags. More...
 
enum  SupportedOperations {
  SO_NONE = 0 , SO_OBSERVE = 1 << 0 , SO_COPY = 1 << 1 , SO_CLONE = 1 << 2 ,
  SO_COMPARE = 1 << 3 , SO_RESET = 1 << 4 , SO_CHANGE_LOCK = 1 << 5
}
 Flags for supported operations. More...
 
enum  CompatibilityMode { CM_STRICT , CM_WITHOUT_REFS , CM_WITH_REFS , CM_CONVERT }
 Control how relationship betweeen objects are interpreted. More...
 
- Public Types inherited from icomp::IComponentListProvider
enum  ComponentTypeFlag { CTF_REAL = 1 << int(IComponentStaticInfo::ComponentType::Real) , CTF_COMPOSITE = 1 << int(IComponentStaticInfo::ComponentType::Composite) , CTF_ALL = -1 }
 
typedef QSet< CComponentAddressComponentAddresses
 

Public Member Functions

PathList GetConfigurationPathList (PathType pathType) const override
 Get list of files used for configuration.
 
int GetPackageDefinitionLevel (const QByteArray &packageId) const override
 Get level of package definition in configuration.
 
bool LoadPackages (const QString &configFilePath=QString()) override
 Configure environment for specified file path.
 
int GetPackageType (const QByteArray &packageId) const override
 Get type of package as defined in PackageType.
 
QString GetPackagePath (const QByteArray &packageId) const override
 Get directory path of specified component package.
 
QString GetRegistryPath (const icomp::CComponentAddress &address) const override
 Get registry file path, if it is composed registry.
 
const icomp::IRegistryGetRegistry (const icomp::CComponentAddress &address, const icomp::IRegistry *contextRegistryPtr=nullptr) const override
 Get access to stored registry.
 
ComponentAddresses GetComponentAddresses (int typeFlag=CTF_ALL) const override
 Get addresses of known components.
 
const icomp::IRegistryGetRegistryFromFile (const QString &path) const override
 Get an ICF registry from a given file.
 
- Public Member Functions inherited from ilog::CLoggerBase
 CLoggerBase ()
 
const QByteArray & GetVerboseSenderId () const
 Get sender ID for verbose messages.
 
void SetVerboseSenderId (const QByteArray &id)
 Set sender ID for verbose messages.
 
void SetLogPtr (ilog::IMessageConsumer *logPtr) override
 Install log.
 
ilog::IMessageConsumerGetLogPtr () const override
 Get log.
 
- Public Member Functions inherited from ilog::ILoggable
- Public Member Functions inherited from icomp::IExtPackagesManager
- Public Member Functions inherited from icomp::IPackagesManager
- Public Member Functions inherited from istd::IChangeable
virtual int GetSupportedOperations () const
 Get set of flags for supported operations.
 
virtual bool CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS)
 Copy this object from another one.
 
virtual bool IsEqual (const IChangeable &object) const
 Compare this object with another object.
 
virtual std::unique_ptr< IChangeableCloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const
 Make a copy of this object.
 
virtual bool ResetData (CompatibilityMode mode=CM_WITHOUT_REFS)
 Reset data to its default state.
 
virtual QMutex * GetChangesLock () const
 Get mutex beeing locked during changes, if available.
 
virtual void BeginChanges (const ChangeSet &changeSet)
 Starts the change transaction.
 
virtual void EndChanges (const ChangeSet &changeSet)
 Ends the change transaction.
 
virtual void BeginChangeGroup (const ChangeSet &changeSet)
 Starts group of changes.
 
virtual void EndChangeGroup (const ChangeSet &changeSet)
 Ends group of changes.
 
- Public Member Functions inherited from icomp::IRegistriesManager
- Public Member Functions inherited from icomp::IComponentListProvider
- Public Member Functions inherited from icomp::IRegistryLoader

Protected Member Functions

void RegisterPackageFile (const QString &file, int definitionLevel)
 
void RegisterPackagesDir (const QString &subDir, int definitionLevel)
 
bool LoadConfigFile (const QString &configFile, int definitionLevel)
 
bool CheckAndMarkPath (PathList &pathList, const QDir &directory, const QString &path, QString &resultPath) const
 
void OnComponentCreated () override
 
- Protected Member Functions inherited from ilog::TLoggerCompWrap< Base >
virtual void DecorateMessage (istd::IInformationProvider::InformationCategory category, int id, int flags, QString &message, QString &messageSource) const override
 Decorate message parts before outputting.
 
void OnComponentCreated () override
 
void OnComponentDestroyed () override
 
- Protected Member Functions inherited from ilog::CLoggerBase
bool IsVerboseEnabled () const
 Check if verbose messages are enabled.
 
bool SendVerboseMessage (const QString &message, const QString &messageSource=QString()) const
 Send verbose message.
 
bool SendInfoMessage (int id, const QString &message, const QString &messageSource=QString(), int flags=0) const
 Send info message to log.
 
bool SendWarningMessage (int id, const QString &message, const QString &messageSource=QString(), int flags=0) const
 Send warning message to log.
 
bool SendErrorMessage (int id, const QString &message, const QString &messageSource=QString(), int flags=0) const
 Send error message to log.
 
bool SendCriticalMessage (int id, const QString &message, const QString &messageSource=QString(), int flags=0) const
 Send critical message to log.
 
bool SendInfoMessageOnce (int id, const QString &message, const QString &messageSource=QString(), int flags=0) const
 Send once info message to log.
 
bool SendWarningMessageOnce (int id, const QString &message, const QString &messageSource=QString(), int flags=0) const
 Send once warning message to log.
 
bool SendErrorMessageOnce (int id, const QString &message, const QString &messageSource=QString(), int flags=0) const
 Send once error message to log.
 
bool SendCriticalMessageOnce (int id, const QString &message, const QString &messageSource=QString(), int flags=0) const
 Send once critical message to log.
 
bool SendUserMessage (const istd::IInformationProvider *messagePtr) const
 Send message with user object.
 
bool AllowMessageOnceAgain (int id)
 Reset message lock.
 
bool IsLogConsumed (const istd::IInformationProvider::InformationCategory *categoryPtr=nullptr, const int *flagsPtr=nullptr) const override
 Check if any log message is consumed.
 
bool SendLogMessage (istd::IInformationProvider::InformationCategory category, int id, const QString &message, const QString &messageSource, int flags=0) const override
 Send any message to log.
 
- Protected Member Functions inherited from istd::ILogger
- Protected Member Functions inherited from istd::IChangeable
virtual void OnBeginChanges ()
 Callback function for begin change event.
 
virtual void OnEndChanges (const ChangeSet &changeSet)
 Callback function for end change event.
 

Additional Inherited Members

- Static Public Member Functions inherited from istd::IChangeable
static const ChangeSetGetNoChanges ()
 Get empty set of changes.
 
static const ChangeSetGetAnyChange ()
 Get anonymous change set.
 
static const ChangeSetGetAllChanges ()
 Get anonymous change set.
 
static const ChangeSetGetDelegatedChanges ()
 Get delegated change set.
 
- Protected Attributes inherited from ilog::CLoggerBase
QSet< int > m_onceMessageIds
 

Detailed Description

Manages registries and composed component.

It allows simple management of packages without loading of real packages.

Definition at line 31 of file CRegistriesManagerComp.h.

Member Typedef Documentation

◆ BaseClass

Member Enumeration Documentation

◆ MessageId

Enumerator
MI_CANNOT_REGISTER 
MI_CANNOT_CREATE_ELEMENT 

Definition at line 40 of file CRegistriesManagerComp.h.

Member Function Documentation

◆ CheckAndMarkPath()

bool ipackage::CRegistriesManagerComp::CheckAndMarkPath ( PathList & pathList,
const QDir & directory,
const QString & path,
QString & resultPath ) const
protected

◆ GetComponentAddresses()

ComponentAddresses ipackage::CRegistriesManagerComp::GetComponentAddresses ( int typeFlag = CTF_ALL) const
overridevirtual

Get addresses of known components.

Implements icomp::IComponentListProvider.

◆ GetConfigurationPathList()

PathList ipackage::CRegistriesManagerComp::GetConfigurationPathList ( PathType pathType) const
overridevirtual

Get list of files used for configuration.

Implements icomp::IExtPackagesManager.

◆ GetPackageDefinitionLevel()

int ipackage::CRegistriesManagerComp::GetPackageDefinitionLevel ( const QByteArray & packageId) const
overridevirtual

Get level of package definition in configuration.

The packages defined direct in loaded configuration file returns 0, the packages in the derrived configuration 1 etc. It returns negative value if the definition level cannot be calculated.

Implements icomp::IExtPackagesManager.

◆ GetPackagePath()

QString ipackage::CRegistriesManagerComp::GetPackagePath ( const QByteArray & packageId) const
overridevirtual

Get directory path of specified component package.

Parameters
packageIdID of component package.
Returns
package path or empty string if specified package is not registered.

Implements icomp::IPackagesManager.

◆ GetPackageType()

int ipackage::CRegistriesManagerComp::GetPackageType ( const QByteArray & packageId) const
overridevirtual

Get type of package as defined in PackageType.

Implements icomp::IPackagesManager.

◆ GetRegistry()

const icomp::IRegistry * ipackage::CRegistriesManagerComp::GetRegistry ( const icomp::CComponentAddress & address,
const icomp::IRegistry * contextRegistryPtr = nullptr ) const
overridevirtual

Get access to stored registry.

Parameters
addressadress of registry treated as composed component.
Returns
registry object or nullptr if specified composite component is not registered.

Implements icomp::IRegistriesManager.

◆ GetRegistryFromFile()

const icomp::IRegistry * ipackage::CRegistriesManagerComp::GetRegistryFromFile ( const QString & path) const
overridevirtual

Get an ICF registry from a given file.

Implements icomp::IRegistryLoader.

◆ GetRegistryPath()

QString ipackage::CRegistriesManagerComp::GetRegistryPath ( const icomp::CComponentAddress & address) const
overridevirtual

Get registry file path, if it is composed registry.

Parameters
addressadress of registry treated as composed component.
Returns
registry object or nullptr if specified composite component is not registered.

Implements icomp::IPackagesManager.

◆ LoadConfigFile()

bool ipackage::CRegistriesManagerComp::LoadConfigFile ( const QString & configFile,
int definitionLevel )
protected

◆ LoadPackages()

bool ipackage::CRegistriesManagerComp::LoadPackages ( const QString & configFilePath = QString())
overridevirtual

Configure environment for specified file path.

If this file path is invalid or empty, standard configuration file will be used.

Implements icomp::IPackagesManager.

◆ OnComponentCreated()

void ipackage::CRegistriesManagerComp::OnComponentCreated ( )
overrideprotected

◆ RegisterPackageFile()

void ipackage::CRegistriesManagerComp::RegisterPackageFile ( const QString & file,
int definitionLevel )
protected

◆ RegisterPackagesDir()

void ipackage::CRegistriesManagerComp::RegisterPackagesDir ( const QString & subDir,
int definitionLevel )
protected

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

© Witold Gantzke and Kirill Lepskiy