qtmobileextensions/src/settingsmanager/xqpublishandsubscribesecuritypolicy.cpp
branchRCL_3
changeset 10 cd2778e5acfe
parent 9 5d007b20cfd0
child 11 19a54be74e5e
equal deleted inserted replaced
9:5d007b20cfd0 10:cd2778e5acfe
     1 /*
       
     2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 *
       
     5 * This program is free software: you can redistribute it and/or modify
       
     6 * it under the terms of the GNU Lesser General Public License as published by
       
     7 * the Free Software Foundation, version 2.1 of the License.
       
     8 * 
       
     9 * This program is distributed in the hope that it will be useful,
       
    10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
       
    11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
       
    12 * GNU Lesser General Public License for more details.
       
    13 *
       
    14 * You should have received a copy of the GNU Lesser General Public License
       
    15 * along with this program.  If not, 
       
    16 * see "http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html/".
       
    17 *
       
    18 * Description:
       
    19 *
       
    20 */
       
    21 
       
    22 #include "xqpublishandsubscribesecuritypolicy.h"
       
    23 
       
    24 /*!
       
    25     \class XQPublishAndSubscribeSecurityPolicy
       
    26 
       
    27     \brief The XQPublishAndSubscribeSecurityPolicy defines security policies
       
    28     used in XQPublishAndSubscribeUtils class. This class is just a Qt-like wrapper
       
    29     to Symbian OS' TSecurityPolicy class.
       
    30 */
       
    31 
       
    32 /*!
       
    33     \enum XQPublishAndSubscribeSecurityPolicy::SecPolicyType
       
    34 
       
    35     This enum defines the possible policy types.
       
    36 */
       
    37 /*! \var XQPublishAndSubscribeSecurityPolicy::SecPolicyAlwaysFail XQPublishAndSubscribeSecurityPolicy::SecPolicyAlwaysFail
       
    38     The checks made against this policy always fail.
       
    39 */
       
    40 /*! \var XQPublishAndSubscribeSecurityPolicy::SecPolicyAlwaysPass XQPublishAndSubscribeSecurityPolicy::SecPolicyAlwaysPass
       
    41     The checks made against this policy always pass.
       
    42 */
       
    43 /*! \var XQPublishAndSubscribeSecurityPolicy::SecPolicyUndefined XQPublishAndSubscribeSecurityPolicy::SecPolicyUndefined
       
    44     Policy type is not defined.
       
    45 */
       
    46 
       
    47 /*!
       
    48     \enum XQPublishAndSubscribeSecurityPolicy::Capability
       
    49 
       
    50     This enum defines the possible capabilities.
       
    51 */
       
    52 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityTCB XQPublishAndSubscribeSecurityPolicy::CapabilityTCB
       
    53     Grants TCB level access.
       
    54 */
       
    55 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityCommDD XQPublishAndSubscribeSecurityPolicy::CapabilityCommDD
       
    56     Grants CapabilityCommDD level access.
       
    57 */
       
    58 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityPowerMgmt XQPublishAndSubscribeSecurityPolicy::CapabilityPowerMgmt
       
    59     Grants CapabilityPowerMgmt level access.
       
    60 */
       
    61 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityMultimediaDD XQPublishAndSubscribeSecurityPolicy::CapabilityMultimediaDD
       
    62     Grants CapabilityMultimediaDD level access.
       
    63 */
       
    64 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityReadDeviceData XQPublishAndSubscribeSecurityPolicy::CapabilityReadDeviceData
       
    65     Grants CapabilityReadDeviceData level access.
       
    66 */
       
    67 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityWriteDeviceData XQPublishAndSubscribeSecurityPolicy::CapabilityWriteDeviceData
       
    68     Grants CapabilityWriteDeviceData level access.
       
    69 */
       
    70 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityDRM XQPublishAndSubscribeSecurityPolicy::CapabilityDRM
       
    71     Grants CapabilityDRM level access.
       
    72 */
       
    73 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityTrustedUI XQPublishAndSubscribeSecurityPolicy::CapabilityTrustedUI
       
    74     Grants CapabilityTrustedUI level access.
       
    75 */
       
    76 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityProtServ XQPublishAndSubscribeSecurityPolicy::CapabilityProtServ
       
    77     Grants CapabilityProtServ level access.
       
    78 */
       
    79 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityDiskAdmin XQPublishAndSubscribeSecurityPolicy::CapabilityDiskAdmin
       
    80     Grants CapabilityDiskAdmin level access.
       
    81 */
       
    82 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityNetworkControl XQPublishAndSubscribeSecurityPolicy::CapabilityNetworkControl
       
    83     Grants CapabilityNetworkControl level access.
       
    84 */
       
    85 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityAllFiles XQPublishAndSubscribeSecurityPolicy::CapabilityAllFiles
       
    86     Grants CapabilityAllFiles level access.
       
    87 */
       
    88 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilitySwEvent XQPublishAndSubscribeSecurityPolicy::CapabilitySwEvent
       
    89     Grants CapabilitySwEvent level access.
       
    90 */
       
    91 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityNetworkServices XQPublishAndSubscribeSecurityPolicy::CapabilityNetworkServices
       
    92     Grants CapabilityNetworkServices level access.
       
    93 */
       
    94 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityLocalServices XQPublishAndSubscribeSecurityPolicy::CapabilityLocalServices
       
    95     Grants CapabilityLocalServices level access.
       
    96 */
       
    97 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityReadUserData XQPublishAndSubscribeSecurityPolicy::CapabilityReadUserData
       
    98     Grants CapabilityReadUserData level access.
       
    99 */
       
   100 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityWriteUserData XQPublishAndSubscribeSecurityPolicy::CapabilityWriteUserData
       
   101     Grants CapabilityWriteUserData level access.
       
   102 */
       
   103 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityLocation XQPublishAndSubscribeSecurityPolicy::CapabilityLocation
       
   104     Grants CapabilityLocation level access.
       
   105 */
       
   106 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilitySurroundingsDD XQPublishAndSubscribeSecurityPolicy::CapabilitySurroundingsDD
       
   107     Grants CapabilitySurroundingsDD level access.
       
   108 */
       
   109 /*! \var XQPublishAndSubscribeSecurityPolicy::CapabilityUserEnvironment XQPublishAndSubscribeSecurityPolicy::CapabilityUserEnvironment
       
   110     Grants CapabilityUserEnvironment level access.
       
   111 */
       
   112 
       
   113 /*!
       
   114     \return Secure ID
       
   115 */
       
   116 XQPublishAndSubscribeSecurityPolicy::SecureId::SecureId(long int uid) : m_uid(uid)
       
   117 {
       
   118 }
       
   119 
       
   120 /*!
       
   121     \return Vendor ID
       
   122 */
       
   123 XQPublishAndSubscribeSecurityPolicy::VendorId::VendorId(long int uid) : m_uid(uid)
       
   124 {
       
   125 }
       
   126 
       
   127 
       
   128 /*!
       
   129     Constructs an XQPublishAndSubscribeSecurityPolicy object.
       
   130     \param secPolicyType Policy type
       
   131 */
       
   132 XQPublishAndSubscribeSecurityPolicy::XQPublishAndSubscribeSecurityPolicy(SecPolicyType secPolicyType)
       
   133     : m_secPolicyType(secPolicyType), m_secureId(-1), m_vendorId(-1)
       
   134 {
       
   135 }
       
   136 
       
   137 /*!
       
   138     Constructs an XQPublishAndSubscribeSecurityPolicy object.
       
   139     \param capabilities List of needed capabilities. Max seven capabilities can be given. Extra capabilities
       
   140     in the list will not be used.
       
   141 */
       
   142 XQPublishAndSubscribeSecurityPolicy::XQPublishAndSubscribeSecurityPolicy(QList<Capability> capabilities)
       
   143     : m_secPolicyType(XQPublishAndSubscribeSecurityPolicy::SecPolicyUndefined),
       
   144     m_secureId(-1), m_vendorId(-1), m_capabilities(capabilities)
       
   145 {
       
   146 }
       
   147 
       
   148 /*!
       
   149     Constructs an XQPublishAndSubscribeSecurityPolicy object.
       
   150     \param secureId Secure ID
       
   151     \param capabilities List of needed capabilities. Max three capabilities can be given. Extra capabilities
       
   152     in the list will not be used.
       
   153 */
       
   154 XQPublishAndSubscribeSecurityPolicy::XQPublishAndSubscribeSecurityPolicy(SecureId secureId, QList<Capability> capabilities)
       
   155     : m_secPolicyType(XQPublishAndSubscribeSecurityPolicy::SecPolicyUndefined),
       
   156     m_secureId(secureId), m_vendorId(-1), m_capabilities(capabilities)
       
   157 {
       
   158 }
       
   159 
       
   160 /*!
       
   161     Constructs an XQPublishAndSubscribeSecurityPolicy object.
       
   162     \param vendorId Vendor ID
       
   163     \param capabilities List of needed capabilities. Max three capabilities can be given. Extra capabilities
       
   164     in the list will not be used.
       
   165 */
       
   166 XQPublishAndSubscribeSecurityPolicy::XQPublishAndSubscribeSecurityPolicy(VendorId vendorId, QList<Capability> capabilities)
       
   167     : m_secPolicyType(XQPublishAndSubscribeSecurityPolicy::SecPolicyUndefined),
       
   168     m_secureId(-1), m_vendorId(vendorId), m_capabilities(capabilities)
       
   169 {
       
   170 }
       
   171 
       
   172 /*!
       
   173     Destructs an XQPublishAndSubscribeSecurityPolicy object.
       
   174 */
       
   175 XQPublishAndSubscribeSecurityPolicy::~XQPublishAndSubscribeSecurityPolicy()
       
   176 {
       
   177 }
       
   178 
       
   179 /*!
       
   180     \return Policy type.
       
   181 */
       
   182 XQPublishAndSubscribeSecurityPolicy::SecPolicyType XQPublishAndSubscribeSecurityPolicy::secPolicyType() const
       
   183 {
       
   184     return m_secPolicyType;
       
   185 }
       
   186 
       
   187 /*!
       
   188     \return Secure ID or -1 if not defined.
       
   189 */
       
   190 XQPublishAndSubscribeSecurityPolicy::SecureId XQPublishAndSubscribeSecurityPolicy::secureId() const
       
   191 {
       
   192     return m_secureId;
       
   193 }
       
   194 
       
   195 /*!
       
   196     \return Vendor ID or -1 if not defined.
       
   197 */
       
   198 XQPublishAndSubscribeSecurityPolicy::VendorId XQPublishAndSubscribeSecurityPolicy::vendorId() const
       
   199 {
       
   200     return m_vendorId;
       
   201 }
       
   202 
       
   203 /*!
       
   204     \return List of capabilities
       
   205 */
       
   206 QList<XQPublishAndSubscribeSecurityPolicy::Capability> XQPublishAndSubscribeSecurityPolicy::capabilities() const
       
   207 {
       
   208     return m_capabilities;
       
   209 }