securitysettings/qtconfigutils/eapqtplugininfo/src/eapqtpluginhandle.cpp
author hgs
Thu, 27 May 2010 10:23:43 +0300
changeset 27 9660a5eb236f
parent 26 9abfd4f00d37
child 34 ad1f037f1ac2
permissions -rw-r--r--
201021_1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
22
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     1
/*
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     2
 * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     3
 * All rights reserved.
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     5
 * under the terms of the License "Eclipse Public License v1.0"
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     8
 *
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     9
 * Initial Contributors:
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    10
 * Nokia Corporation - initial contribution.
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    11
 *
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    12
 * Contributors:
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    13
 *
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    14
 * Description: 
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    15
 *   Control Panel EAP plugin information
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    16
 *
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    17
 */
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    18
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    19
/*
27
9660a5eb236f 201021_1
hgs
parents: 26
diff changeset
    20
 * %version: 15 %
22
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    21
 */
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    22
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    23
#include "eapqtpluginhandle.h"
26
hgs
parents: 22
diff changeset
    24
#include "eapqtpluginhandle_p.h"
hgs
parents: 22
diff changeset
    25
hgs
parents: 22
diff changeset
    26
struct EapQtPluginHandleMapper
hgs
parents: 22
diff changeset
    27
{
hgs
parents: 22
diff changeset
    28
    EapQtExpandedEapType::Type mType;
hgs
parents: 22
diff changeset
    29
    int mUid;
hgs
parents: 22
diff changeset
    30
};
hgs
parents: 22
diff changeset
    31
hgs
parents: 22
diff changeset
    32
static const EapQtPluginHandleMapper handleMapper[EapQtPluginHandle::PluginLast] = { 
hgs
parents: 22
diff changeset
    33
    {EapQtExpandedEapType::TypeUndefined,     0x00000000},
hgs
parents: 22
diff changeset
    34
    {EapQtExpandedEapType::TypeEapAka,        0x102073c2},
hgs
parents: 22
diff changeset
    35
    {EapQtExpandedEapType::TypeEapFast,       0x2000BF12},
hgs
parents: 22
diff changeset
    36
    {EapQtExpandedEapType::TypeEapGtc,        0x101f8e80},
hgs
parents: 22
diff changeset
    37
    {EapQtExpandedEapType::TypeLeap,          0x101f8ea7},
hgs
parents: 22
diff changeset
    38
    {EapQtExpandedEapType::TypeEapMschapv2,   0x101f8e67},
hgs
parents: 22
diff changeset
    39
    {EapQtExpandedEapType::TypePeap,          0x101f8e4e},
hgs
parents: 22
diff changeset
    40
    {EapQtExpandedEapType::TypeEapSim,        0x101f8e4b},
hgs
parents: 22
diff changeset
    41
    {EapQtExpandedEapType::TypeEapTls,        0x101f8e4d},
hgs
parents: 22
diff changeset
    42
    {EapQtExpandedEapType::TypeEapTtls,       0x101f8e4f},
hgs
parents: 22
diff changeset
    43
    {EapQtExpandedEapType::TypePap,           0x2001B2F2},
hgs
parents: 22
diff changeset
    44
    {EapQtExpandedEapType::TypePlainMschapv2, 0x101f8e7b}
hgs
parents: 22
diff changeset
    45
};
hgs
parents: 22
diff changeset
    46
hgs
parents: 22
diff changeset
    47
static const EapQtPluginHandle::Plugin typeMapper[EapQtExpandedEapType::TypeLast] = {
hgs
parents: 22
diff changeset
    48
    EapQtPluginHandle::PluginUndefined, 
hgs
parents: 22
diff changeset
    49
    EapQtPluginHandle::PluginEapAka,
hgs
parents: 22
diff changeset
    50
    EapQtPluginHandle::PluginEapFast, 
hgs
parents: 22
diff changeset
    51
    EapQtPluginHandle::PluginEapGtc,
hgs
parents: 22
diff changeset
    52
    EapQtPluginHandle::PluginLeap, 
hgs
parents: 22
diff changeset
    53
    EapQtPluginHandle::PluginEapMschapv2,
hgs
parents: 22
diff changeset
    54
    EapQtPluginHandle::PluginPeap, 
hgs
parents: 22
diff changeset
    55
    EapQtPluginHandle::PluginEapSim,
hgs
parents: 22
diff changeset
    56
    EapQtPluginHandle::PluginEapTls, 
hgs
parents: 22
diff changeset
    57
    EapQtPluginHandle::PluginEapTtls,
hgs
parents: 22
diff changeset
    58
    EapQtPluginHandle::PluginUndefined, /* no wps plugin */ 
hgs
parents: 22
diff changeset
    59
    EapQtPluginHandle::PluginPap,
hgs
parents: 22
diff changeset
    60
    EapQtPluginHandle::PluginPlainMschapv2 
hgs
parents: 22
diff changeset
    61
};
22
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    62
27
9660a5eb236f 201021_1
hgs
parents: 26
diff changeset
    63
9660a5eb236f 201021_1
hgs
parents: 26
diff changeset
    64
22
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    65
//----------------------------------------------------------------------------
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    66
//              EapQtPluginHandle
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    67
//----------------------------------------------------------------------------
26
hgs
parents: 22
diff changeset
    68
EapQtPluginHandle::EapQtPluginHandle() :
hgs
parents: 22
diff changeset
    69
    d_ptr(new EapQtPluginHandlePrivate(handleMapper[PluginUndefined].mType,
hgs
parents: 22
diff changeset
    70
        handleMapper[PluginUndefined].mUid))
hgs
parents: 22
diff changeset
    71
{
hgs
parents: 22
diff changeset
    72
}
22
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    73
26
hgs
parents: 22
diff changeset
    74
EapQtPluginHandle::EapQtPluginHandle(Plugin id) :
hgs
parents: 22
diff changeset
    75
    d_ptr(NULL)
hgs
parents: 22
diff changeset
    76
{
27
9660a5eb236f 201021_1
hgs
parents: 26
diff changeset
    77
    Plugin localId;
26
hgs
parents: 22
diff changeset
    78
    if (id < PluginLast) {
27
9660a5eb236f 201021_1
hgs
parents: 26
diff changeset
    79
        localId = id;
26
hgs
parents: 22
diff changeset
    80
    }
hgs
parents: 22
diff changeset
    81
    else {
27
9660a5eb236f 201021_1
hgs
parents: 26
diff changeset
    82
        localId = PluginUndefined;
26
hgs
parents: 22
diff changeset
    83
    }
27
9660a5eb236f 201021_1
hgs
parents: 26
diff changeset
    84
    d_ptr.reset(new EapQtPluginHandlePrivate(handleMapper[localId].mType,
9660a5eb236f 201021_1
hgs
parents: 26
diff changeset
    85
        handleMapper[localId].mUid));
26
hgs
parents: 22
diff changeset
    86
}
22
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    87
26
hgs
parents: 22
diff changeset
    88
EapQtPluginHandle::EapQtPluginHandle(EapQtExpandedEapType type, int uid) :
hgs
parents: 22
diff changeset
    89
    d_ptr(new EapQtPluginHandlePrivate(type, uid))
hgs
parents: 22
diff changeset
    90
{
hgs
parents: 22
diff changeset
    91
}
hgs
parents: 22
diff changeset
    92
hgs
parents: 22
diff changeset
    93
EapQtPluginHandle::EapQtPluginHandle(EapQtExpandedEapType type) :
hgs
parents: 22
diff changeset
    94
    d_ptr(new EapQtPluginHandlePrivate(type, handleMapper[typeMapper[type.type()]].mUid))
hgs
parents: 22
diff changeset
    95
{
hgs
parents: 22
diff changeset
    96
}
hgs
parents: 22
diff changeset
    97
hgs
parents: 22
diff changeset
    98
EapQtPluginHandle::EapQtPluginHandle(const EapQtPluginHandle& handle) :
hgs
parents: 22
diff changeset
    99
    d_ptr(new EapQtPluginHandlePrivate(handle.type(), handle.protocolImplementationUid()))
22
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   100
{
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   101
}
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   102
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   103
EapQtPluginHandle::~EapQtPluginHandle()
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   104
{
26
hgs
parents: 22
diff changeset
   105
    // scoped pointer delete
22
093cf0757204 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   106
}
26
hgs
parents: 22
diff changeset
   107
hgs
parents: 22
diff changeset
   108
EapQtExpandedEapType EapQtPluginHandle::type() const
hgs
parents: 22
diff changeset
   109
{
hgs
parents: 22
diff changeset
   110
    return d_ptr->mType;
hgs
parents: 22
diff changeset
   111
}
hgs
parents: 22
diff changeset
   112
hgs
parents: 22
diff changeset
   113
int EapQtPluginHandle::protocolImplementationUid() const
hgs
parents: 22
diff changeset
   114
{
hgs
parents: 22
diff changeset
   115
    return d_ptr->mProtocolImplementationUid;
hgs
parents: 22
diff changeset
   116
}
hgs
parents: 22
diff changeset
   117
hgs
parents: 22
diff changeset
   118
EapQtPluginHandle::Plugin EapQtPluginHandle::pluginId() const
hgs
parents: 22
diff changeset
   119
{
hgs
parents: 22
diff changeset
   120
    return typeMapper[d_ptr->mType.type()];
hgs
parents: 22
diff changeset
   121
}
hgs
parents: 22
diff changeset
   122
hgs
parents: 22
diff changeset
   123
bool EapQtPluginHandle::operator==(const EapQtPluginHandle &other) const
hgs
parents: 22
diff changeset
   124
{
hgs
parents: 22
diff changeset
   125
    return (other.d_ptr->mProtocolImplementationUid == d_ptr->mProtocolImplementationUid)
hgs
parents: 22
diff changeset
   126
        && (other.d_ptr->mType == d_ptr->mType);
hgs
parents: 22
diff changeset
   127
}
hgs
parents: 22
diff changeset
   128
hgs
parents: 22
diff changeset
   129
EapQtPluginHandle& EapQtPluginHandle::operator=(const EapQtPluginHandle &handle)
hgs
parents: 22
diff changeset
   130
{
hgs
parents: 22
diff changeset
   131
    // check if assigning to myself
hgs
parents: 22
diff changeset
   132
    if (this != &handle) {
hgs
parents: 22
diff changeset
   133
        d_ptr.reset(new EapQtPluginHandlePrivate(handle.type(), handle.protocolImplementationUid()));
hgs
parents: 22
diff changeset
   134
    }
hgs
parents: 22
diff changeset
   135
    return *this;
hgs
parents: 22
diff changeset
   136
}
hgs
parents: 22
diff changeset
   137