ACF $AcfVersion:0$
Classes | Public Types | Public Member Functions | Protected Member Functions | List of all members
ipackage::CPackagesLoaderComp Class Reference

Loads component packages from dynamic link libraries. More...

#include <CPackagesLoaderComp.h>

Inheritance diagram for ipackage::CPackagesLoaderComp:
ilog::TLoggerCompWrap< Base > icomp::CEnvironmentManagerBase icomp::IRegistryLoader ilog::CLoggerBase icomp::CPackageStaticInfo icomp::IComponentEnvironmentManager istd::IPolymorphic ilog::ILoggable istd::ILogger icomp::CComponentStaticInfoBase icomp::IPackagesManager icomp::IRegistriesManager icomp::IMetaInfoManager istd::IPolymorphic istd::IPolymorphic icomp::IComponentStaticInfo istd::IChangeable icomp::IComponentListProvider icomp::IComponentListProvider icomp::IElementStaticInfo iattr::IAttributesMetaInfoProvider istd::IPolymorphic istd::IChangeable istd::IChangeable istd::IPolymorphic istd::IChangeable istd::IPolymorphic istd::IPolymorphic istd::IPolymorphic

Classes

class  LogingRegistry
 

Public Types

enum  MessageId { MI_CANNOT_REGISTER = 650 , MI_CANNOT_CREATE_ELEMENT }
 
typedef ilog::CLoggerComponentBase BaseClass
 
typedef icomp::CEnvironmentManagerBase BaseClass2
 
- Public Types inherited from ilog::TLoggerCompWrap< Base >
typedef Base BaseClass
 Base class typedef for component functionality.
 
typedef ilog::CLoggerBase BaseClass2
 Base class typedef for logger functionality.
 
- Public Types inherited from icomp::IComponentStaticInfo
enum  ComponentType { CT_NONE , CT_REAL , CT_COMPOSITE }
 Specify type of the component realization. More...
 
enum  MetaGroupId { MGI_EMBEDDED_COMPONENTS = IElementStaticInfo::MGI_LAST + 1 , MGI_LAST = MGI_EMBEDDED_COMPONENTS }
 
- Public Types inherited from icomp::IElementStaticInfo
enum  MetaGroupId { MGI_INTERFACES = 0 , MGI_SUBELEMENTS , MGI_LAST = MGI_SUBELEMENTS }
 
typedef QSet< QByteArray > Ids
 
- Public Types inherited from istd::IChangeable
enum  ChangeFlags {
  CF_ACF_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
}
 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...
 
typedef QMultiMap< QByteArray, QVariant > ChangeInfoMap
 
- Public Types inherited from icomp::IPackagesManager
enum  PackageType { PT_UNDIFINED , PT_UNKNOWN , PT_REAL , PT_COMPOSED }
 
- Public Types inherited from icomp::IComponentListProvider
enum  ComponentTypeFlag { CTF_REAL = 1 << IComponentStaticInfo::CT_REAL , CTF_COMPOSITE = 1 << IComponentStaticInfo::CT_COMPOSITE , CTF_ALL = -1 }
 
typedef QSet< CComponentAddressComponentAddresses
 

Public Member Functions

virtual const icomp::IRegistryGetRegistryFromFile (const QString &path) const override
 Get an ACF registry from a given file.
 
virtual QString GetConfigFilePath () const override
 Get file path of real used config file.
 
virtual QStringList GetProjectTargets () const override
 Get the list of project targets.
 
virtual bool LoadPackages (const QString &configFilePath=QString()) override
 Configure environment for specified file path.
 
virtual int GetPackageType (const QByteArray &packageId) const override
 Get type of package as defined in PackageType.
 
virtual QString GetPackagePath (const QByteArray &packageId) const override
 Get directory path of specified component package.
 
virtual QString GetRegistryPath (const icomp::CComponentAddress &address) const override
 Get registry file path, if it is composed registry.
 
virtual const icomp::IRegistryGetRegistry (const icomp::CComponentAddress &address, const icomp::IRegistry *contextRegistryPtr=NULL) const override
 Get access to stored registry.
 
virtual ComponentAddresses GetComponentAddresses (int typeFlag=CTF_ALL) const override
 Get addresses of known components.
 
virtual void OnComponentCreated () override
 Called when component is created.
 
- Public Member Functions inherited from ilog::CLoggerBase
 CLoggerBase ()
 Default constructor.
 
virtual void SetLogPtr (ilog::IMessageConsumer *logPtr) override
 Attach a message consumer for logging.
 
virtual ilog::IMessageConsumerGetLogPtr () const override
 Get the currently attached message consumer.
 
- Public Member Functions inherited from istd::IPolymorphic
virtual ~IPolymorphic ()
 
- Public Member Functions inherited from icomp::CEnvironmentManagerBase
virtual const IComponentStaticInfoGetComponentMetaInfo (const CComponentAddress &address) const override
 Get access to static info of some component.
 
virtual const IComponentStaticInfoGetPackageMetaInfo (const QByteArray &packageId) const override
 Get access to static info of a package.
 
- Public Member Functions inherited from icomp::CPackageStaticInfo
 CPackageStaticInfo ()
 
 CPackageStaticInfo (const QString &description, const QString &keywords)
 
void Reset ()
 
virtual bool SerializeMeta (iser::IArchive &archive)
 
virtual void RegisterEmbeddedComponentInfo (const QByteArray &embeddedId, const IComponentStaticInfo *componentInfoPtr)
 Register embedded component static info.
 
virtual Ids GetMetaIds (int metaGroupId) const override
 Get list of meta IDs associated with some meta key.
 
virtual const IComponentStaticInfoGetEmbeddedComponentInfo (const QByteArray &embeddedId) const override
 Return number of interfaces for specific slot.
 
virtual const QString & GetDescription () const override
 Get human readable description of this component.
 
virtual const QString & GetKeywords () const override
 Get keywords for this component.
 
- Public Member Functions inherited from icomp::CComponentStaticInfoBase
virtual int GetComponentType () const override
 Get information about component type.
 
virtual const IAttributeStaticInfoGetAttributeInfo (const QByteArray &attributeId) const override
 Get set of attributes.
 
virtual const IElementStaticInfoGetSubelementInfo (const QByteArray &subcomponentId) const override
 Return number of interfaces for specific slot.
 
virtual iattr::IAttributesProvider::AttributeIds GetAttributeMetaIds () const override
 Get all IDs of known attribute meta informations.
 
virtual const iattr::IAttributeMetaInfoGetAttributeMetaInfo (const QByteArray &attributeId) const override
 Get property with the given index.
 
- 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 istd::TUniqueInterfacePtr< istd::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 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.
 

Protected Member Functions

virtual bool RegisterPackageFile (const QString &file)
 
virtual bool RegisterPackagesDir (const QString &subDir)
 
virtual bool LoadConfigFile (const QString &configFile)
 
icomp::GetPackageInfoFunc GetPackageFunction (const QFileInfo &fileInfo)
 
bool CheckAndMarkPath (const QDir &directory, const QString &path, QString &resultPath) const
 Check if path was already visited and return enrolled value.
 
- Protected Member Functions inherited from ilog::TLoggerCompWrap< Base >
bool IsVerboseEnabled (int tracingLevel=0) const
 Check if verbose messages are enabled for a given tracing level.
 
void SendVerboseMessage (const QString &message, const QString &messageSource=QString(), int tracingLevel=0) const
 Send a verbose message if enabled.
 
virtual void DecorateMessage (istd::IInformationProvider::InformationCategory category, int id, int flags, QString &message, QString &messageSource) const override
 Decorate message before sending.
 
virtual void OnComponentDestroyed () override
 Called when component is destroyed.
 
- Protected Member Functions inherited from ilog::CLoggerBase
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.
 
virtual bool IsLogConsumed (const istd::IInformationProvider::InformationCategory *categoryPtr=NULL, const int *flagsPtr=NULL) const override
 Check if any log message is consumed.
 
virtual 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::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

Loads component packages from dynamic link libraries.

Definition at line 31 of file CPackagesLoaderComp.h.

Member Typedef Documentation

◆ BaseClass

Definition at line 40 of file CPackagesLoaderComp.h.

◆ BaseClass2

Definition at line 41 of file CPackagesLoaderComp.h.

Member Enumeration Documentation

◆ MessageId

Enumerator
MI_CANNOT_REGISTER 
MI_CANNOT_CREATE_ELEMENT 

Definition at line 43 of file CPackagesLoaderComp.h.

Member Function Documentation

◆ CheckAndMarkPath()

bool ipackage::CPackagesLoaderComp::CheckAndMarkPath ( const QDir &  directory,
const QString &  path,
QString &  resultPath 
) const
protected

Check if path was already visited and return enrolled value.

◆ GetComponentAddresses()

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

Get addresses of known components.

Reimplemented from icomp::CEnvironmentManagerBase.

◆ GetConfigFilePath()

virtual QString ipackage::CPackagesLoaderComp::GetConfigFilePath ( ) const
overridevirtual

Get file path of real used config file.

If no config file was used, it returns empty string.

Reimplemented from icomp::CEnvironmentManagerBase.

◆ GetPackageFunction()

icomp::GetPackageInfoFunc ipackage::CPackagesLoaderComp::GetPackageFunction ( const QFileInfo &  fileInfo)
protected

◆ GetPackagePath()

virtual QString ipackage::CPackagesLoaderComp::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.

Reimplemented from icomp::CEnvironmentManagerBase.

◆ GetPackageType()

virtual int ipackage::CPackagesLoaderComp::GetPackageType ( const QByteArray &  packageId) const
overridevirtual

Get type of package as defined in PackageType.

Reimplemented from icomp::CEnvironmentManagerBase.

◆ GetProjectTargets()

virtual QStringList ipackage::CPackagesLoaderComp::GetProjectTargets ( ) const
overridevirtual

Get the list of project targets.

A project target is a file path to the root registry of an executable, defined in the environment configuration.

Reimplemented from icomp::CEnvironmentManagerBase.

◆ GetRegistry()

virtual const icomp::IRegistry * ipackage::CPackagesLoaderComp::GetRegistry ( const icomp::CComponentAddress address,
const icomp::IRegistry contextRegistryPtr = NULL 
) const
overridevirtual

Get access to stored registry.

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

Reimplemented from icomp::CEnvironmentManagerBase.

◆ GetRegistryFromFile()

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

Get an ACF registry from a given file.

Implements icomp::IRegistryLoader.

◆ GetRegistryPath()

virtual QString ipackage::CPackagesLoaderComp::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 NULL if specified composite component is not registered.

Reimplemented from icomp::CEnvironmentManagerBase.

◆ LoadConfigFile()

virtual bool ipackage::CPackagesLoaderComp::LoadConfigFile ( const QString &  configFile)
protectedvirtual

◆ LoadPackages()

virtual bool ipackage::CPackagesLoaderComp::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.

Reimplemented from icomp::CEnvironmentManagerBase.

◆ OnComponentCreated()

virtual void ipackage::CPackagesLoaderComp::OnComponentCreated ( )
overridevirtual

Called when component is created.

Automatically connects the log consumer from the "Log" reference.

Note
Override to add initialization, but always call base class:
virtual void OnComponentCreated() override {
// Custom initialization
}
virtual void OnComponentCreated() override
Called when component is created.
virtual void OnComponentCreated() override
Called when component is created.

Reimplemented from ilog::TLoggerCompWrap< Base >.

◆ RegisterPackageFile()

virtual bool ipackage::CPackagesLoaderComp::RegisterPackageFile ( const QString &  file)
protectedvirtual

◆ RegisterPackagesDir()

virtual bool ipackage::CPackagesLoaderComp::RegisterPackagesDir ( const QString &  subDir)
protectedvirtual

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