The IPackageFactoryRegistry interface.
More...
#include "murl_resource_i_package_factory_registry.h"
The IPackageFactoryRegistry interface.
The IPackageFactoryRegistry interface provides methods to add, remove and query different package classes that can be instantiated using the Resource::IPackageFactory implementing this interface.
◆ RegisterPackageClass()
Register a package class.
A specific package factory class may be registered multiple times with (mandatory) different file name patterns, and a possibly different object factory used for object creation.
- Parameters
-
packageClassInfo | The ClassInfo structure of the package to register. |
objectFactory | The actual object factory used to create individual resource objects from within the package. |
fileNamePattern | The file name pattern used to identify packages of this type, e.g. "murlpkg" or "murlres/package.xml". |
- Returns
- true if successful.
◆ UnregisterPackageClass()
Unregister a previously registered package class/object factory/file name pattern combination.
- Parameters
-
packageClassInfo | The ClassInfo structure of the package to unregister. |
objectFactory | The object factory the given package class was registered with. |
fileNamePattern | The file name pattern the given package class was registered with. |
- Returns
- true if successful.
◆ GetRegisteredPackageClassInfoIndex() [1/2]
virtual SInt32 Murl::Resource::IPackageFactoryRegistry::GetRegisteredPackageClassInfoIndex |
( |
const IPackage::ClassInfo & |
classInfo | ) |
const |
|
pure virtual |
Query the first index of a registered package class, by its ClassInfo structure.
- Parameters
-
classInfo | The class info structure of the package class to query. |
- Returns
- The zero-based index, or -1 if not registered.
◆ GetRegisteredPackageClassInfoIndex() [2/2]
virtual SInt32 Murl::Resource::IPackageFactoryRegistry::GetRegisteredPackageClassInfoIndex |
( |
const String & |
className | ) |
const |
|
pure virtual |
Query the first index of a registered package class, by its class name.
- Parameters
-
className | The name of the package class to query. |
- Returns
- The zero-based index, or -1 if not registered.
◆ GetNumberOfRegisteredPackageClassInfos()
virtual UInt32 Murl::Resource::IPackageFactoryRegistry::GetNumberOfRegisteredPackageClassInfos |
( |
| ) |
const |
|
pure virtual |
Get the total number of registered package classes.
- Returns
- The number of registered package classes.
◆ GetRegisteredPackageClassInfo()
virtual const IPackage::ClassInfo* Murl::Resource::IPackageFactoryRegistry::GetRegisteredPackageClassInfo |
( |
UInt32 |
index | ) |
const |
|
pure virtual |
Get the ClassInfo structure of a registered package class.
- Parameters
-
- Returns
- The class info, or null if the index is out of range.
◆ GetRegisteredPackageClassInfoFileNamePattern()
virtual const String& Murl::Resource::IPackageFactoryRegistry::GetRegisteredPackageClassInfoFileNamePattern |
( |
UInt32 |
index | ) |
const |
|
pure virtual |
Get the file name pattern of a registered package class.
- Parameters
-
- Returns
- The name pattern, or an empty string if the index is out of range.
◆ GetRegisteredPackageClassInfoObjectFactory()
virtual const IObjectFactory* Murl::Resource::IPackageFactoryRegistry::GetRegisteredPackageClassInfoObjectFactory |
( |
UInt32 |
index | ) |
const |
|
pure virtual |
Get the associated object factory of a registered package class.
- Parameters
-
- Returns
- The object factory, or null if the index is out of range.
The documentation for this interface was generated from the following file:
- murl_resource_i_package_factory_registry.h