Preventing
Plug-in Overriding
The plug-in framework supports two methods to prevent a RAM based
plug-in from overriding a ROM based plug-in. The first method is to use the
ROM-only resolver and the second method is to explicitly prevent a ROM-based
implementation from being overridden by a RAM-based implementation.
Using the ROM-only
resolver restricts the search of the framework plug-ins to the ROM only.
Alternatively,
to prevent a RAM-based implementation from overriding a ROM-based implementation,
set the
rom_only
variable to 1 in the
resource
registration file
for the implementation.
-
Using the ROM-only resolver
Use
KRomOnlyResolverUid
as the
CResolver
UID
passed to those variants of
REComSession::ListImplementationsL()
and
REComSession::CreateImplementationL()
that take the
TUid aResolverUid
parameter.
If an
installable upgrade to a ROM-based plug-in is correctly supplied by a vendor,
then the ROM-only resolver finds and uses the upgrade. Platform security controls
are used to ensure that the upgrade is secure. For details, see How to upgrade
ROM-based plug-ins securely.
-
Preventing a ROM-based implementation from being overridden:
If the ROM-based plug-ins must be prevented from being overridden
by a RAM-based plug-in, use the
version
2 resource file format
.
In the
.rss
file,
the
rom_only
member of the
IMPLEMENTATION_INFO
structure
must be set to 1.
rom_only
set to 1 indicates the
ROM-based implementation must be used.
rom_only
set
to 0 indicates the ROM-based implementations can be overridden.
Note:
For
all implementations using the version 2 resource file format, the
rom_only
member
must be set explicitly.
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.