00001 /* 00002 * ============================================================================== 00003 * Name : MServicePolicy.h 00004 * Part of : Web Services Description 00005 * Interface : 00006 * Description : 00007 * Version : 00008 * 00009 * Copyright © 2002-2005 Nokia. All rights reserved. 00010 * This material, including documentation and any related 00011 * computer programs, is protected by copyright controlled by 00012 * Nokia. All rights are reserved. Copying, including 00013 * reproducing, storing, adapting or translating, any 00014 * or all of this material requires the prior written consent of 00015 * Nokia. This material also contains confidential 00016 * information which may not be disclosed to others without the 00017 * prior written consent of Nokia. 00018 * ============================================================================== 00019 */ 00020 00021 00022 #ifndef M_SEN_SERVICE_POLICY_H 00023 #define M_SEN_SERVICE_POLICY_H 00024 00025 // INCLUDES 00026 #include <e32base.h> // for CActive 00027 #include <badesca.h> 00028 00029 #include "SenDomFragment.h" 00030 00031 typedef RPointerArray<CSenElement> RPolicyArray; 00032 00033 // FORWARD DECLARATION 00034 00035 // CLASS DECLARATION 00036 /* 00037 * <ServicePolicy> 00038 * <ClientPolicy> 00039 * <MetadataEndpoint>uri.1</MetadataEndpoint> 00040 * <MetadataEndpoint>uri.2</MetadataEndpoint> 00041 * <MetadataEndpoint>uri.3</MetadataEndpoint> 00042 * <PolicyValue1/> 00043 * <PolicyValue2/> 00044 * </ClientPolicy> 00045 * <PolicyArrray> 00046 * <wsp:Policy1/> 00047 * <wsp:Policy2/> 00048 * </PolicyArrray> 00049 * </ServicePolicy> 00050 */ 00051 class MSenServicePolicy 00052 { 00053 public: // New functions 00054 00062 virtual TInt AddPolicyL(CSenElement* aPolicy) = 0; 00063 00071 virtual TInt RemovePolicyL(TDesC8& aPolicyName) = 0; 00072 00081 virtual TInt RebuildServicePolicyFrom(MSenServicePolicy& aTemplate) = 0; 00082 00087 virtual TBool Accepts(MSenServicePolicy& aPolicyPattern) = 0; 00088 00102 virtual TInt ServicePolicies(RPolicyArray& aPolicies) = 0; 00106 virtual CSenElement* ClientPolicy() = 0; 00113 virtual TBool ClientPolicy(const TDesC8& aKey) = 0; 00119 virtual HBufC8* ClientPolicyValue(const TDesC8& aKey) = 0; 00120 }; 00121 00122 #endif //M_SEN_POLICY_H 00123 00124 // End of File