Initial contribution of the Adaptation Documentation.
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License
"Eclipse Public License v1.0" which accompanies this distribution,
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
Nokia Corporation - initial contribution.
Contributors:
-->
<!DOCTYPE task
PUBLIC "-//OASIS//DTD DITA Task//EN" "task.dtd">
<task id="GUID-95FA6DDA-E1C2-5148-9F18-4171BF06C9AC" xml:lang="en"><title>Creating
System-wide Property Policy Plug-in</title><shortdesc>System-wide Properties (SwP) are attributes of a device that have
system-wide significance (for example, the power status or device lock status).
The value of any System-wide property is normally independent of the System
State, but the state and different properties can be combined with policy
to generate a new status indications and actions. </shortdesc><prolog><metadata><keywords/></metadata></prolog><taskbody>
<context><p>The <xref href="GUID-31FB0BC8-83FC-3581-A7A3-C1781CAE7187.dita"><apiname>MSsmSwpPolicy</apiname></xref>, is an API which allows customization
of the behavior of system-wide property changes in the SSM. </p><p>Follow
the steps given below to create a system-wide property policy plug-in:</p></context>
<steps id="GUID-4EE901CB-7DF1-5A14-84A7-0FAAFC1B276E">
<step id="GUID-EED1CF34-AC86-51A6-AE68-459DD47B80D1"><cmd/>
<info>Define a class from <xref href="GUID-31FB0BC8-83FC-3581-A7A3-C1781CAE7187.dita"><apiname>MSsmSwpPolicy</apiname></xref> interface. </info>
</step>
<step id="GUID-DCF835C0-150A-582E-9247-C85F1A0D6E91"><cmd/>
<info>Export the static method to create new system-wide property policy plug-in
as shown in the code snippet: </info>
<stepxmp><codeblock id="GUID-24CE6A8F-5BCA-5D7B-A3A1-B9E995FA5E2E" xml:space="preserve">
EXPORT_C MSsmSwpPolicy* CSimStatuspolicy::NewL()
{
CSimStatuspolicy* self = new (ELeave) CSimStatuspolicy;
CleanupStack::PushL(self);
self->ConstructL();
CleanupStack::Pop(self);
return self;
}
</codeblock> </stepxmp>
<info>The code returns a new plug-in object for system-wide property plug-in. </info>
</step>
</steps>
<result><p>The system-wide property policy plug-in is created. </p> </result>
</taskbody><related-links>
<link href="GUID-DA68ED44-4BF4-54EF-8090-821F73F7904D.dita"><linktext>System-wide
Properties</linktext></link>
</related-links></task>