ImagePrint/ImagePrintEngine/DeviceProtocols/btprotocol/src/cbtpasswordquery.cpp
author Pat Downey <patd@symbian.org>
Wed, 01 Sep 2010 12:30:38 +0100
branchRCL_3
changeset 28 d59c248c9d36
parent 0 d11fb78c4374
permissions -rw-r--r--
Revert incorrect RCL_3 drop: Revision: 201031 Kit: 201035

/*
* Copyright (c) 2004-2007 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:  
*
*/


#include <avkon.hrh>

#include "cbtpasswordquery.h"

CBtPasswordQuery::CBtPasswordQuery( MConfirmationNotify& aNotify ) : CActive( CActive::EPriorityStandard),
																	 iNotify (aNotify)
	{
	CActiveScheduler::Add( this );
	}

CBtPasswordQuery::~CBtPasswordQuery()
	{
	Cancel();
	iNotifier.Close();
	}

// ============================ MEMBER FUNCTIONS ==============================

// ----------------------------------------------------------------------------
// CBtPasswordQuery::NewL()
// Symbian two-phased constructor.
// ----------------------------------------------------------------------------
//
CBtPasswordQuery* CBtPasswordQuery::NewL( MConfirmationNotify& aNotify )  
	{
	CBtPasswordQuery* self = CBtPasswordQuery::NewLC( aNotify );
    CleanupStack::Pop( self );
    return self;
	}

// ----------------------------------------------------------------------------
// CBtPasswordQuery::NewLC()
// Symbian two-phased constructor.
// ----------------------------------------------------------------------------
//
CBtPasswordQuery* CBtPasswordQuery::NewLC( MConfirmationNotify& aNotify )
    {
    CBtPasswordQuery* self;
    self = new ( ELeave ) CBtPasswordQuery( aNotify );
    CleanupStack::PushL( self );
    self->ConstructL();
    return self;
   	}

// ----------------------------------------------------------------------------
// CBtPasswordQuery::ConstructL()
// Perform second phase construction of this object.
// ----------------------------------------------------------------------------
//
void CBtPasswordQuery::ConstructL()
    {
    	
    }

void CBtPasswordQuery::StartActiveObjectL()
	{
	
    //RNotifier notifier;
    User::LeaveIfError(iNotifier.Connect());
	
    // start asynchronic notifier -> prompt user passsword
    iNotifier.StartNotifierAndGetResponse(iStatus, KBTObexPasskeyQueryNotifierUid, iPckg, iResultPckg);
    
	// Start active object and set iStatus = KRequestPending
	SetActive();	
	}

void CBtPasswordQuery::RunL()
	{
    if( iStatus.Int() == KErrNone || iStatus.Int() == KErrCancel)
        {
      	iNotifier.CancelNotifier( KPowerModeSettingNotifierUid );
        // close connection to the notify server  
		iNotifier.Close();
		iNotify.PasswordQueryCompleteL( iResultPckg );
		}
	}

void CBtPasswordQuery::RunError()
	{
	
	}

void CBtPasswordQuery::DoCancel()
	{
  	iNotifier.CancelNotifier( KPowerModeSettingNotifierUid );
		
	}

// End of File