diff -r 000000000000 -r b497e44ab2fc terminalsecurity/SCP/SCPHistoryPlugin/inc/SCPSpecificStringsPlugin.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/terminalsecurity/SCP/SCPHistoryPlugin/inc/SCPSpecificStringsPlugin.h Thu Dec 17 09:07:52 2009 +0200 @@ -0,0 +1,113 @@ +/* +* Copyright (c) 2000 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "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: +* +* Description: Implementation of terminalsecurity components +* +*/ + + +#ifndef __CSCPSPECIFICSTRINGSPLUGIN_H +#define __CSCPSPECIFICSTRINGSPLUGIN_H (0x1) + +// INCLUDES +#include +#include "SCPPlugin.h" +#include +#include // for CDesCArrayFlat + +// For the Localization +#include +#include +#include + + +// CONSTANTS +const TInt KSpecificStringsCounterParamID = 999; +const TInt KSpecificStringsParamBase = 1000; + +_LIT( KConfigFileSpecific,"SCPSpecificStringsPlugin.ini" ); +_LIT( SCPSpecificStringsPluginSrcFile, "\\Resource\\SCPHistoryPluginLang.rsc"); +_LIT( KDriveZSpecific, "z:" ); + +// FORWARD DECLARATIONS +class CSCPParamObject; + +// CLASS DECLARATION + +/** +* CSCPSpecificStringsPlugin + +*/ + + +class CSCPSpecificStringsPlugin : public CSCPPlugin + { + public: // Constructors, Destructor + /** + * 2-phased constructor + * @return Instance of Plug-in + */ + static CSCPSpecificStringsPlugin* NewL(); + + /** + * Destructor + */ + virtual ~CSCPSpecificStringsPlugin(); + + /** + * Event handler... + */ + CSCPParamObject* HandleEvent( TInt aID, CSCPParamObject& aParam ); + + void SetEventHandler( MSCPPluginEventHandler* aHandler ); + + private: // Constructors, Destructor + /** + * Constructor + */ + CSCPSpecificStringsPlugin(); + + /** + * 2nd phase constructor + */ + void ConstructL(); + + private: // Own internal methods + TInt CheckSpecificStrings( TDes& aSecuritycode, TBool& aForbiddenSecurityCode ); + TInt ParseAndStoreL( TDes& aForbiddenSecurityCodes); + TInt ParseAndRemoveL( TDes& aForbiddenSecurityCodes ); + TInt FlushConfigFileL(); + TInt SetConfigFile (); + HBufC16* LoadResourceLC ( TInt aResId ); + TInt GetResource(); + + TInt GetSpecificStringsArrayL ( CDesCArrayFlat& array ); + TInt IsNotValidWord ( TDes& aForbiddenSecurityCodes ); + void RemoveDuplicateWords( CDesCArrayFlat& array ); + + HBufC* LoadAndFormatResL( TInt aResId, + TInt* aParam1 = NULL, + TInt* aParam2 = NULL ); + + private: // Data + /* A pointer to the event handler object on the server, not owned */ + MSCPPluginEventHandler* iEventHandler; + TFileName iCfgFilenamepath; + RFs* iFs; // Eventhandler's session ptr (not owned) + RResourceFile iRf; + + }; + +#endif // __CSCPSPECIFICSTRINGSPLUGIN_H + +// End of File