bluetoothengine/btxqservice/src/btxqsspdebugservice.cpp
author hgs
Tue, 19 Oct 2010 15:09:34 +0300
changeset 70 f5508c13dfe0
parent 57 5ebadcda06cb
permissions -rw-r--r--
201041
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
57
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
     1
/*
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
     2
 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
     3
 * All rights reserved.
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
     5
 * under the terms of "Eclipse Public License v1.0""
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
     8
 *
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
     9
 * Initial Contributors:
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    10
 * Nokia Corporation - initial contribution.
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    11
 *
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    12
 * Contributors:
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    13
 *
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    14
 * Description:  
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    15
 *
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    16
 */
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    17
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    18
#include "btxqsspdebugservice.h"
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    19
#include <btxqserviceapi.h>
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    20
#include <hbapplication.h>
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    21
#include <btengdomainpskeys.h>
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    22
#include <e32property.h>
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    23
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    24
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    25
BtxqSspDebugService::BtxqSspDebugService(QObject* parent)
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    26
: XQServiceProvider(BluetoothServiceToggleSspDebugMode,parent),
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    27
  mCurrentRequestIndex(0),
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    28
  mError(0)
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    29
{
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    30
    publishAll();
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    31
    connect(this, SIGNAL(returnValueDelivered()), qApp, SLOT(quit()));
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    32
}
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    33
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    34
BtxqSspDebugService::~BtxqSspDebugService()
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    35
{
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    36
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    37
}
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    38
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    39
void BtxqSspDebugService::toggleSspDebugMode()
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    40
{
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    41
    mCurrentRequestIndex = setCurrentRequestAsync();
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    42
    
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    43
    TInt sspDebugMode( EBTSspDebugModeOff );
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    44
    
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    45
    // Get current status
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    46
    TInt err = RProperty::Get( KPSUidBluetoothDutMode, KBTSspDebugmode, 
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    47
            sspDebugMode );
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    48
    
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    49
    if ( !err )
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    50
        {
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    51
        if( sspDebugMode == EBTDutOff )
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    52
            {
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    53
            // The Ssp debug mode is turned off, turn it on.
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    54
            err = RProperty::Set( KPSUidBluetoothDutMode,
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    55
                    KBTSspDebugmode,
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    56
                    EBTSspDebugModeOn );
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    57
            }
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    58
        else
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    59
            {
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    60
            // The Ssp debug mode is turned on, turn it off.
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    61
            err = RProperty::Set( KPSUidBluetoothDutMode,
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    62
                    KBTSspDebugmode,
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    63
                    EBTSspDebugModeOff );
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    64
            }
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    65
        }
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    66
    
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    67
    mError = err;
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    68
    
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    69
    // Complete the service request with error code, if any.
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    70
    QVariant retVal(mError);
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    71
    completeRequest(mCurrentRequestIndex, retVal);
5ebadcda06cb 201035_7
hgs
parents:
diff changeset
    72
}