# HG changeset patch # User Dremov Kirill (Nokia-D-MSW/Tampere) # Date 1273844693 -10800 # Node ID 6743bfee309e26487d0cde61e4ddfe9cb68ba0bd # Parent c3bac82c6ce027afad4c34c09474f9216d235257 Revision: 201017 Kit: 201019 diff -r c3bac82c6ce0 -r 6743bfee309e layers.sysdef.xml --- a/layers.sysdef.xml Mon May 03 13:21:36 2010 +0300 +++ b/layers.sysdef.xml Fri May 14 16:44:53 2010 +0300 @@ -1,14 +1,17 @@ - ]> - + + + + diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/dun/atext/bwins/dunatextu.def --- a/localconnectivityservice/dun/atext/bwins/dunatextu.def Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/dun/atext/bwins/dunatextu.def Fri May 14 16:44:53 2010 +0300 @@ -8,4 +8,5 @@ ?ParseCommand@CDunAtCmdHandler@@QAEHAAVTDesC8@@AAH@Z @ 7 NONAME ; int CDunAtCmdHandler::ParseCommand(class TDesC8 &, int &) ?StartUrc@CDunAtCmdHandler@@QAEHXZ @ 8 NONAME ; int CDunAtCmdHandler::StartUrc(void) ?ManageAbortRequest@CDunAtCmdHandler@@QAEHXZ @ 9 NONAME ; int CDunAtCmdHandler::ManageAbortRequest(void) + ?SendEchoCharacter@CDunAtCmdHandler@@QAEHPBVTDesC8@@PAVMDunAtCmdEchoer@@@Z @ 10 NONAME ; int CDunAtCmdHandler::SendEchoCharacter(class TDesC8 const *, class MDunAtCmdEchoer *) diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/dun/atext/eabi/dunatextu.def --- a/localconnectivityservice/dun/atext/eabi/dunatextu.def Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/dun/atext/eabi/dunatextu.def Fri May 14 16:44:53 2010 +0300 @@ -8,4 +8,5 @@ _ZN16CDunAtCmdHandler8StartUrcEv @ 7 NONAME _ZN16CDunAtCmdHandler9ResetDataEv @ 8 NONAME _ZN16CDunAtCmdHandler18ManageAbortRequestEv @ 9 NONAME + _ZN16CDunAtCmdHandler17SendEchoCharacterEPK6TDesC8P15MDunAtCmdEchoer @ 10 NONAME diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/dun/atext/group/dunatext.mmp --- a/localconnectivityservice/dun/atext/group/dunatext.mmp Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/dun/atext/group/dunatext.mmp Fri May 14 16:44:53 2010 +0300 @@ -27,6 +27,7 @@ VENDORID VID_DEFAULT SOURCEPATH ../src +SOURCE DunAtCmdEchoer.cpp SOURCE DunAtCmdHandler.cpp SOURCE DunAtCmdPusher.cpp SOURCE DunAtUrcHandler.cpp diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/dun/atext/inc/DunAtCmdEchoer.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/localconnectivityservice/dun/atext/inc/DunAtCmdEchoer.h Fri May 14 16:44:53 2010 +0300 @@ -0,0 +1,135 @@ +/* +* Copyright (c) 2010 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: Echoer for AT commands +* +*/ + +#ifndef C_CDUNATCMDECHOER_H +#define C_CDUNATCMDECHOER_H + +#include "DunDataPusher.h" + +class MDunStreamManipulator; + +/** + * Notification interface class for text mode + * + * @lib dunatext.lib + * @since TB9.2 + */ +NONSHARABLE_CLASS( MDunAtCmdEchoer ) + { + +public: + + /** + * Notifies about completed echo in text mode + * + * @since TB9.2 + * @return None + */ + virtual void NotifyEchoComplete() = 0; + + }; + +/** + * Class for AT command echoer + * + * @lib dunatext.lib + * @since TB9.2 + */ +NONSHARABLE_CLASS( CDunAtCmdEchoer ) : public CBase, + public MDunCompletionReporter + { + +public: + + /** + * Two-phased constructor. + * @param aStreamCallback Callback to stream + * @return Instance of self + */ + static CDunAtCmdEchoer* NewL( MDunStreamManipulator* aStreamCallback ); + + /** + * Destructor. + */ + virtual ~CDunAtCmdEchoer(); + + /** + * Resets data to initial values + * + * @since TB9.2 + * @return None + */ + void ResetData(); + + /** + * Sends a character to be echoed + * + * @since TB9.2 + * @param aInput Input to echo + * @param aCallback Callback to echo request completions + * @return Symbian error code on error, KErrNone otherwise + */ + TInt SendEchoCharacter( const TDesC8* aInput, MDunAtCmdEchoer* aCallback ); + +private: + + CDunAtCmdEchoer( MDunStreamManipulator* aStreamCallback ); + + void ConstructL(); + + /** + * Initializes this class + * + * @since TB9.2 + * @return None + */ + void Initialize(); + +// from base class MDunCompletionReporter + + /** + * From MDunCompletionReporter. + * Gets called when data push is complete + * + * @since S60 5.0 + * @param aAllPushed ETrue if all in the queue were pushed, EFalse otherwise + * @return None + */ + void NotifyDataPushComplete( TBool aAllPushed ); + +private: // data + + /** + * Notification interface class for echo request completions + * Not own. + */ + MDunAtCmdEchoer* iCallback; + + /** + * Callback to call when data to push + * Not own. + */ + MDunStreamManipulator* iStreamCallback; + + /** + * Current state of echoing: active or inactive + */ + TDunState iAtEchoState; + + }; + +#endif // C_CDUNATCMDECHOER_H diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/dun/atext/inc/DunAtCmdHandler.h --- a/localconnectivityservice/dun/atext/inc/DunAtCmdHandler.h Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/dun/atext/inc/DunAtCmdHandler.h Fri May 14 16:44:53 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2009-2010 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" @@ -23,6 +23,7 @@ #include #include "DunDataPusher.h" #include "DunAtCmdPusher.h" +#include "DunAtCmdEchoer.h" #include "DunAtEcomListen.h" #include "DunAtModeListen.h" #include "DunAtNvramListen.h" @@ -32,6 +33,7 @@ const TInt KDunOkBufLength = 1+1+2+1+1; // ++"OK"++ const TInt KDunErrorBufLength = 1+1+5+1+1; // ++"ERROR"++ const TInt KDunInputBufLength = (512 + 1); // 512 chars for command + +const TInt KDunEscBufLength = 1; // Escape (0x1B) character class CDunAtUrcHandler; class MDunConnMon; @@ -101,6 +103,30 @@ }; /** + * Class used for AT command editor mode related functionality + * + * @lib dunatext.lib + * @since TB9.2 + */ +NONSHARABLE_CLASS( TDunEditorModeInfo ) + { + +public: + + /** + * Flag to indicate if content found (not used if iContentFindStarted is EFalse) + */ + TBool iContentFound; + + /** + * AT command decoding related information for peeked data + * (not to be used if HandleNextDecodedCommand() returns EFalse) + */ + TDunDecodeInfo iPeekInfo; + + }; + +/** * Notification interface class for command mode start/end * * @lib dunutils.lib @@ -157,6 +183,15 @@ */ virtual void NotifyAtCmdHandlingEnd( TInt aStartIndex ) = 0; + /** + * Notifies about editor mode reply + * + * @since TB9.2 + * @param aStart ETrue if start of editor mode, EFalse otherwise + * @return None + */ + virtual void NotifyEditorModeReply( TBool aStart ) = 0; + }; /** @@ -237,6 +272,17 @@ IMPORT_C void SetEndOfCmdLine( TBool aClearInput ); /** + * Sends a character to be echoed + * + * @since TB9.2 + * @param aInput Input to echo + * @param aCallback Callback to echo request completions + * @return Symbian error code on error, KErrNone otherwise + */ + IMPORT_C TInt SendEchoCharacter( const TDesC8* aInput, + MDunAtCmdEchoer* aCallback ); + + /** * Stops sending of AT command from decode buffer * * @since S60 3.2 @@ -408,6 +454,14 @@ TBool HandleNextDecodedCommand(); /** + * Finds the start of the next command + * + * @since TB9.2 + * @return Index to the next command or Symbian error code on error + */ + TInt FindStartOfNextCommand(); + + /** * Manages end of AT command handling * * @since S60 5.0 @@ -622,6 +676,24 @@ */ void ManageCharacterChange( TUint aMode ); + /** + * Manages editor mode reply + * + * @since TB9.2 + * @param aStart ETrue if start of editor mode, EFalse otherwise + * @return Symbian error code on error, KErrNone otherwise + */ + TInt ManageEditorModeReply( TBool aStart ); + + /** + * Finds the next content from the input buffer + * + * @since TB9.2 + * @param aStart ETrue if start of editor mode, EFalse otherwise + * @return ETrue if next content found, EFalse otherwise + */ + TBool FindNextContent( TBool aStart ); + // from base class MDunAtCmdPusher /** @@ -631,6 +703,7 @@ * downstream. * * @since S60 5.0 + * @param aError Error code of command processing completion * @return None */ TInt NotifyEndOfProcessing( TInt aError ); @@ -652,6 +725,24 @@ */ TBool NotifyNextCommandPeekRequest(); + /** + * Notifies about editor mode reply + * + * @since TB9.2 + * @return Symbian error code on error, KErrNone otherwise + */ + TInt NotifyEditorModeReply(); + +// from base class MDunAtCmdEchoer + + /** + * Notifies about completed echo in text mode + * + * @since TB9.2 + * @return None + */ + void NotifyEchoComplete(); + // from base class MDunAtEcomListen /** @@ -766,6 +857,11 @@ TBuf8 iLastBuffer; /** + * Buffer for command + */ + TBuf8 iEscapeBuffer; + + /** * AT command decoding related information */ TDunDecodeInfo iDecodeInfo; @@ -776,12 +872,23 @@ TDunParseInfo iParseInfo; /** + * Information for editor mode + */ + TDunEditorModeInfo iEditorModeInfo; + + /** * AT command reply pusher * Own. */ CDunAtCmdPusher* iCmdPusher; /** + * AT command reply echoer + * Own. + */ + CDunAtCmdEchoer* iCmdEchoer; + + /** * URC message handlers * Own. */ diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/dun/atext/inc/DunAtCmdPusher.h --- a/localconnectivityservice/dun/atext/inc/DunAtCmdPusher.h Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/dun/atext/inc/DunAtCmdPusher.h Fri May 14 16:44:53 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2008-2010 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" @@ -63,6 +63,14 @@ */ virtual TBool NotifyNextCommandPeekRequest() = 0; + /** + * Notifies about editor mode reply + * + * @since TB9.2 + * @return Symbian error code on error, KErrNone otherwise + */ + virtual TInt NotifyEditorModeReply() = 0; + }; /** @@ -120,10 +128,11 @@ * Starts AT command handling * * @since S60 5.0 - * @param aCommand AT command to handle + * @param aCommand AT command or editor mode input to handle + * @param aNormalMode ETrue if request issue for normal mode * @return Symbian error code on error, KErrNone otherwise */ - TInt IssueRequest( TDesC8& aCommand ); + TInt IssueRequest( TDesC8& aCommand, TBool aNormalMode=ETrue ); /** * Stops AT command handling @@ -151,6 +160,14 @@ */ void SetEndOfCmdLine(); + /** + * Gets the editor mode status + * + * @since TB9.2 + * @return ETrue if in editor mode, EFalse otherwise + */ + TBool EditorMode(); + private: CDunAtCmdPusher( RATExt* aAtCmdExt, @@ -197,6 +214,38 @@ void SendReplyData( TBool aRecvBuffer=ETrue ); /** + * Manages change in reply type to EReplyTypeOther + * + * @since TB9.2 + * @return None + */ + void ManageReplyTypeChangeToOther(); + + /** + * Manages change in reply type to EReplyTypeOk + * + * @since TB9.2 + * @return None + */ + void ManageReplyTypeChangeToOk(); + + /** + * Manages change in reply type to EReplyTypeError + * + * @since TB9.2 + * @return None + */ + void ManageReplyTypeChangeToError(); + + /** + * Manages change in reply type to EReplyTypeEditor + * + * @since TB9.2 + * @return None + */ + void ManageReplyTypeChangeToEditor(); + + /** * Manages change in reply type * * @since S60 5.0 @@ -313,6 +362,11 @@ */ TBool iStop; + /** + * Flag indicating if in editor mode + */ + TBool iEditorMode; + }; #endif // C_CDUNATCMDPUSHER_H diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/dun/atext/src/DunAtCmdEchoer.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/localconnectivityservice/dun/atext/src/DunAtCmdEchoer.cpp Fri May 14 16:44:53 2010 +0300 @@ -0,0 +1,129 @@ +/* +* Copyright (c) 2010 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: Echoer for AT commands +* +*/ + +#include "DunAtCmdEchoer.h" +#include "DunDownstream.h" +#include "DunDebug.h" + +// --------------------------------------------------------------------------- +// Two-phased constructor. +// --------------------------------------------------------------------------- +// +CDunAtCmdEchoer* CDunAtCmdEchoer::NewL( + MDunStreamManipulator* aStreamCallback ) + { + CDunAtCmdEchoer* self = new (ELeave) CDunAtCmdEchoer( aStreamCallback ); + CleanupStack::PushL( self ); + self->ConstructL(); + CleanupStack::Pop( self ); + return self; + } + +// --------------------------------------------------------------------------- +// Destructor. +// --------------------------------------------------------------------------- +// +CDunAtCmdEchoer::~CDunAtCmdEchoer() + { + FTRACE(FPrint( _L("CDunAtCmdEchoer::~CDunAtCmdEchoer()") )); + ResetData(); + FTRACE(FPrint( _L("CDunAtCmdEchoer::~CDunAtCmdEchoer() complete") )); + } + +// --------------------------------------------------------------------------- +// Resets data to initial values +// --------------------------------------------------------------------------- +// +void CDunAtCmdEchoer::ResetData() + { + FTRACE(FPrint( _L("CDunAtCmdEchoer::ResetData()") )); + // Internal + Initialize(); + FTRACE(FPrint( _L("CDunAtCmdEchoer::ResetData() complete") )); + } + +// --------------------------------------------------------------------------- +// Sends a character to be echoed +// --------------------------------------------------------------------------- +// +TInt CDunAtCmdEchoer::SendEchoCharacter( + const TDesC8* aInput, + MDunAtCmdEchoer* aCallback ) + { + FTRACE(FPrint( _L("CDunAtCmdEchoer::SendEchoCharacter()") )); + if ( iAtEchoState!=EDunStateIdle || iCallback ) + { + FTRACE(FPrint( _L("CDunAtCmdEchoer::SendEchoCharacter() (not ready) complete") )); + return KErrNotReady; + } + iStreamCallback->NotifyDataPushRequest( aInput, this ); + iCallback = aCallback; + iAtEchoState = EDunStateAtCmdEchoing; + FTRACE(FPrint( _L("CDunDownstream::SendEchoCharacter() complete" ) )); + return KErrNone; + } + +// --------------------------------------------------------------------------- +// CDunAtCmdEchoer::CDunAtCmdEchoer +// --------------------------------------------------------------------------- +// +CDunAtCmdEchoer::CDunAtCmdEchoer( MDunStreamManipulator* aStreamCallback ) : + iStreamCallback( aStreamCallback ) + { + Initialize(); + } + +// --------------------------------------------------------------------------- +// CDunAtCmdEchoer::ConstructL +// --------------------------------------------------------------------------- +// +void CDunAtCmdEchoer::ConstructL() + { + FTRACE(FPrint( _L("CDunAtCmdEchoer::ConstructL()") )); + if ( !iStreamCallback ) + { + FTRACE(FPrint( _L("CDunAtCmdEchoer::ConstructL() complete") )); + User::Leave( KErrGeneral ); + } + FTRACE(FPrint( _L("CDunAtCmdEchoer::ConstructL() complete") )); + } + +// --------------------------------------------------------------------------- +// Initializes this class +// --------------------------------------------------------------------------- +// +void CDunAtCmdEchoer::Initialize() + { + // Don't initialize iStreamCallback here (it is set through NewL) + iCallback = NULL; + iAtEchoState = EDunStateIdle; + } + +// --------------------------------------------------------------------------- +// From MDunCompletionReporter. +// Gets called when data push is complete +// --------------------------------------------------------------------------- +// +void CDunAtCmdEchoer::NotifyDataPushComplete( TBool /*aAllPushed*/ ) + { + FTRACE(FPrint( _L("CDunAtCmdEchoer::NotifyDataPushComplete()") )); + MDunAtCmdEchoer* callback = iCallback; + iCallback = NULL; + iAtEchoState = EDunStateIdle; + callback->NotifyEchoComplete(); + FTRACE(FPrint( _L("CDunAtCmdEchoer::NotifyDataPushComplete() complete") )); + } diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/dun/atext/src/DunAtCmdHandler.cpp --- a/localconnectivityservice/dun/atext/src/DunAtCmdHandler.cpp Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/dun/atext/src/DunAtCmdHandler.cpp Fri May 14 16:44:53 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2009-2010 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" @@ -35,7 +35,8 @@ #include "DunDownstream.h" #include "DunDebug.h" -const TInt8 KDunCancel = 24; +const TInt8 KDunCancel = 24; // Used for line editing, cancel character +const TInt8 KDunEscape = 27; // Used for editor ending, escape character // --------------------------------------------------------------------------- // Two-phased constructor. @@ -79,6 +80,8 @@ Stop(); // NewL() DeletePluginHandlers(); + delete iCmdEchoer; + iCmdEchoer = NULL; delete iNvramListen; iNvramListen = NULL; delete iModeListen; @@ -145,7 +148,16 @@ FTRACE(FPrint( _L("CDunAtCmdHandler::ParseCommand()") )); FTRACE(FPrint( _L("CDunAtCmdHandler::ParseCommand() received:") )); FTRACE(FPrintRaw(aCommand) ); - iCommand = &aCommand; + TBool editorMode = iCmdPusher->EditorMode(); + if ( editorMode ) + { + // Note: return here with "no partial input" and some error to fool + // CDunUpstream into not reissuing the read request. + iCmdPusher->IssueRequest( aCommand, EFalse ); + aPartialInput = EFalse; + return KErrGeneral; + } + iCommand = &aCommand; // iCommand only for normal mode // Manage partial AT command TBool needsCarriage = ETrue; TBool okToExit = ManagePartialCommand( aCommand, needsCarriage ); @@ -180,7 +192,7 @@ iDecodeInfo.iFirstDecode = ETrue; iDecodeInfo.iDecodeIndex = 0; HandleNextDecodedCommand(); - FTRACE(FPrint( _L("CDunAtCmdHandler::ParseCommand() (not supported) complete") )); + FTRACE(FPrint( _L("CDunAtCmdHandler::ParseCommand() complete") )); aPartialInput = EFalse; return KErrNone; } @@ -210,6 +222,19 @@ } // --------------------------------------------------------------------------- +// Sends a character to be echoed +// --------------------------------------------------------------------------- +// +EXPORT_C TInt CDunAtCmdHandler::SendEchoCharacter( const TDesC8* aInput, + MDunAtCmdEchoer* aCallback ) + { + FTRACE(FPrint( _L("CDunAtCmdHandler::SendEchoCharacter()") )); + TInt retVal = iCmdEchoer->SendEchoCharacter( aInput, aCallback ); + FTRACE(FPrint( _L("CDunAtCmdHandler::SendEchoCharacter() complete") )); + return retVal; + } + +// --------------------------------------------------------------------------- // Stops sending of AT command from parse buffer // --------------------------------------------------------------------------- // @@ -223,7 +248,12 @@ return KErrNotReady; } iCmdPusher->Stop(); - iHandleState = EDunStateIdle; + // The line below is used in the case when this function is called by + // CDunUpstream as a result of "data mode ON" change notification. + // In this case it is possible that HandleNextDecodedCommand() returns + // without resetting the iInputBuffer because of the way it checks the + // iHandleState. + ManageEndOfCmdHandling( EFalse, ETrue, ETrue ); FTRACE(FPrint( _L("CDunAtCmdHandler::Stop() complete") )); return KErrNone; } @@ -313,28 +343,21 @@ CreateSpecialCommandsL(); // Create the plugin handlers CreatePluginHandlersL(); + // Create the echo handler + iCmdEchoer = CDunAtCmdEchoer::NewL( iDownstream ); // Create the listeners - CDunAtEcomListen* ecomListen = CDunAtEcomListen::NewLC( &iAtCmdExt, this ); - CDunAtModeListen* modeListen = CDunAtModeListen::NewLC( &iAtCmdExtCommon, - this ); - CDunAtNvramListen* nvramListen = CDunAtNvramListen::NewLC( &iAtCmdExt, - &iAtCmdExtCommon ); + iEcomListen = CDunAtEcomListen::NewL( &iAtCmdExt, this ); + iModeListen = CDunAtModeListen::NewL( &iAtCmdExtCommon, this ); + iNvramListen = CDunAtNvramListen::NewL( &iAtCmdExt, &iAtCmdExtCommon ); + iAtSpecialCmdHandler = CDunAtSpecialCmdHandler::NewL(); // Set the default modes (+report) and characters GetAndSetDefaultSettingsL(); // Start listening - ecomListen->IssueRequest(); - modeListen->IssueRequest(); - nvramListen->IssueRequest(); - CleanupStack::Pop( nvramListen ); - CleanupStack::Pop( modeListen ); - CleanupStack::Pop( ecomListen ); + iEcomListen->IssueRequest(); + iModeListen->IssueRequest(); + iNvramListen->IssueRequest(); CleanupStack::Pop( &iAtCmdExtCommon ); CleanupStack::Pop( &iAtCmdExt ); - iEcomListen = ecomListen; - iModeListen = modeListen; - iNvramListen = nvramListen; - - iAtSpecialCmdHandler = CDunAtSpecialCmdHandler::NewL(); FTRACE(FPrint( _L("CDunAtCmdHandler::ConstructL() complete") )); } @@ -356,6 +379,7 @@ iDecodeInfo.iDecodeIndex = KErrNotFound; iDecodeInfo.iPrevChar = 0; iDecodeInfo.iPrevExists = EFalse; + iEditorModeInfo.iContentFound = EFalse; iCmdPusher = NULL; iEcomListen = NULL; iModeListen = NULL; @@ -791,6 +815,34 @@ } // --------------------------------------------------------------------------- +// Finds the start of the next command +// --------------------------------------------------------------------------- +// +TInt CDunAtCmdHandler::FindStartOfNextCommand() + { + FTRACE(FPrint( _L("CDunAtCmdHandler::FindStartOfNextCommand()") )); + // Note: here we need to avoid internal recursion when parsing the + // multiple IsEndOfCommand() and IsDelimiterCharacter() markers inside the + // same upstream block. + // Skip all the extra markers except the one we already know to exist. + TInt i; + TInt startVal = iEndIndex + 1; + TInt foundIndex = KErrNotFound; + TInt count = iCommand->Length(); + for ( i=startVal; iLength(); - for ( i=startVal; iNotifyAtCmdHandlingEnd( foundIndex ); FTRACE(FPrint( _L("CDunAtCmdHandler::ManageEndOfCmdHandling() complete") )); } @@ -923,6 +959,7 @@ FTRACE(FPrint( _L("CDunAtCmdHandler::RestoreOldDecodeInfo()") )); if ( aPeek ) { + iEditorModeInfo.iPeekInfo = iDecodeInfo; iDecodeInfo = aOldInfo; } FTRACE(FPrint( _L("CDunAtCmdHandler::RestoreOldDecodeInfo() complete") )); @@ -1529,6 +1566,65 @@ } // --------------------------------------------------------------------------- +// Manages editor mode reply +// --------------------------------------------------------------------------- +// +TInt CDunAtCmdHandler::ManageEditorModeReply( TBool aStart ) + { + FTRACE(FPrint( _L("CDunAtCmdHandler::ManageEditorModeReply()" ) )); + // Two modes possible here: + // 1) Sending data directly from DTE to DCE, i.e. no subsequent data in + // the input buffer -> Reissue read request from DTE. + // 2) Sending data from input buffer to DCE -> Do not reissue read request + // from DTE: send the data in a loop + // In summary: send data byte-by-byte in editor mode until end of input. + // When end of input notify CDunUpstream to reissue the read request. + TBool nextContentFound = FindNextContent( aStart ); + if ( !nextContentFound ) + { + iUpstream->NotifyEditorModeReply( aStart ); + FTRACE(FPrint( _L("CDunAtCmdHandler::NotifyEditorModeReply() complete") )); + return KErrNone; + } + // In block mode end the block mode by sending and hope it works. + iEscapeBuffer.Zero(); + iEscapeBuffer.Append( KDunEscape ); + iCmdPusher->IssueRequest( iEscapeBuffer, EFalse ); + FTRACE(FPrint( _L("CDunAtCmdHandler::ManageEditorModeReply() complete" ) )); + return KErrNone; + } + +// --------------------------------------------------------------------------- +// Finds the next content from the input data +// --------------------------------------------------------------------------- +// +TBool CDunAtCmdHandler::FindNextContent( TBool aStart ) + { + FTRACE(FPrint( _L("CDunAtCmdHandler::FindNextContent()" ) )); + if ( !aStart ) + { + FTRACE(FPrint( _L("CDunAtCmdHandler::FindNextContent() (skip) complete" ) )); + return iEditorModeInfo.iContentFound; + } + iEditorModeInfo.iContentFound = EFalse; + TInt foundCmdIndex = KErrNotFound; + TBool nextContentFound = ExtractNextDecodedCommand( ETrue ); // peek + if ( !nextContentFound ) + { + // Check the next subblock + foundCmdIndex = FindStartOfNextCommand(); + } + if ( !nextContentFound && foundCmdIndex<0 ) + { + FTRACE(FPrint( _L("CDunAtCmdHandler::FindNextContent() (not found) complete") )); + return EFalse; + } + iEditorModeInfo.iContentFound = ETrue; + FTRACE(FPrint( _L("CDunAtCmdHandler::FindNextContent() complete" ) )); + return ETrue; + } + +// --------------------------------------------------------------------------- // From class MDunAtCmdPusher. // Notifies about end of AT command processing. This is after all reply data // for an AT command is multiplexed to the downstream. @@ -1537,6 +1633,13 @@ TInt CDunAtCmdHandler::NotifyEndOfProcessing( TInt /*aError*/ ) { FTRACE(FPrint( _L("CDunAtCmdHandler::NotifyEndOfProcessing()" ) )); + TBool editorMode = iCmdPusher->EditorMode(); + if ( editorMode ) + { + ManageEditorModeReply( ETrue ); + FTRACE(FPrint( _L("CDunAtCmdHandler::NotifyEndOfProcessing() (editor) complete" ) )); + return KErrNone; + } HandleNextDecodedCommand(); FTRACE(FPrint( _L("CDunAtCmdHandler::NotifyEndOfProcessing() complete" ) )); return KErrNone; @@ -1571,6 +1674,19 @@ } // --------------------------------------------------------------------------- +// From class MDunAtCmdPusher. +// Notifies about editor mode reply +// --------------------------------------------------------------------------- +// +TInt CDunAtCmdHandler::NotifyEditorModeReply() + { + FTRACE(FPrint( _L("CDunAtCmdHandler::NotifyEditorModeReply()") )); + TInt retVal = ManageEditorModeReply( EFalse ); + FTRACE(FPrint( _L("CDunAtCmdHandler::NotifyEditorModeReply() complete") )); + return retVal; + } + +// --------------------------------------------------------------------------- // From class MDunAtEcomListen. // Notifies about new plugin installation // --------------------------------------------------------------------------- diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/dun/atext/src/DunAtCmdPusher.cpp --- a/localconnectivityservice/dun/atext/src/DunAtCmdPusher.cpp Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/dun/atext/src/DunAtCmdPusher.cpp Fri May 14 16:44:53 2010 +0300 @@ -103,12 +103,12 @@ // Starts AT command handling // --------------------------------------------------------------------------- // -TInt CDunAtCmdPusher::IssueRequest( TDesC8& aCommand ) +TInt CDunAtCmdPusher::IssueRequest( TDesC8& aCommand, TBool aNormalMode ) { FTRACE(FPrint( _L("CDunAtCmdPusher::IssueRequest()") )); FTRACE(FPrint( _L("CDunAtCmdPusher::IssueRequest() send ATEXT:") )); FTRACE(FPrintRaw(aCommand) ); - if ( iAtPushState != EDunStateIdle ) + if ( iAtPushState!=EDunStateIdle && aNormalMode ) { FTRACE(FPrint( _L("CDunAtCmdPusher::IssueRequest() (not ready) complete") )); return KErrNotReady; @@ -186,10 +186,22 @@ iLastOkPush = EFalse; iCmdAbort = EFalse; iStop = EFalse; + iEditorMode = EFalse; FTRACE(FPrint( _L("CDunAtCmdPusher::SetEndOfCmdLine() complete") )); } // --------------------------------------------------------------------------- +// Gets the editor mode status +// --------------------------------------------------------------------------- +// +TBool CDunAtCmdPusher::EditorMode() + { + FTRACE(FPrint( _L("CDunAtCmdPusher::EditorMode()") )); + FTRACE(FPrint( _L("CDunAtCmdPusher::EditorMode() complete") )); + return iEditorMode; + } + +// --------------------------------------------------------------------------- // CDunAtCmdPusher::CDunAtCmdPusher // --------------------------------------------------------------------------- // @@ -303,6 +315,79 @@ } // --------------------------------------------------------------------------- +// Manages change in reply type to EReplyTypeOther +// --------------------------------------------------------------------------- +// +void CDunAtCmdPusher::ManageReplyTypeChangeToOther() + { + FTRACE(FPrint( _L("CDunAtCmdPusher::ManageReplyTypeChangeToOther()") )); + iNoErrorReceived = ETrue; + SendReplyData(); + FTRACE(FPrint( _L("CDunAtCmdPusher::ManageReplyTypeChangeToOther() complete") )); + } + +// --------------------------------------------------------------------------- +// Manages change in reply type to EReplyTypeOk +// --------------------------------------------------------------------------- +// +void CDunAtCmdPusher::ManageReplyTypeChangeToOk() + { + FTRACE(FPrint( _L("CDunAtCmdPusher::ManageReplyTypeChangeToOk()") )); + // Skip the "OK" replies if not last. Only push the "OK" reply at the end. + // iStop changes it so that the we have to send the "OK" immediately and + // only stop with NotifyDataPushComplete() + TBool found = iCallback->NotifyNextCommandPeekRequest(); + if ( !found || iStop ) + { + SendReplyData(); + } + else + { + iNoErrorReceived = ETrue; + SetToIdleAndNotifyEnd( KErrNone ); + } + FTRACE(FPrint( _L("CDunAtCmdPusher::ManageReplyTypeChangeToOk() complete") )); + } + +// --------------------------------------------------------------------------- +// Manages change in reply type to EReplyTypeError +// --------------------------------------------------------------------------- +// +void CDunAtCmdPusher::ManageReplyTypeChangeToError() + { + FTRACE(FPrint( _L("CDunAtCmdPusher::ManageReplyTypeChangeToError()") )); + if ( iNoErrorReceived ) + { + iAtCmdExt->ReportExternalHandleCommandError(); + } + SendReplyData(); + FTRACE(FPrint( _L("CDunAtCmdPusher::ManageReplyTypeChangeToError() complete") )); + } + +// --------------------------------------------------------------------------- +// Manages change in reply type to EReplyTypeEditor +// --------------------------------------------------------------------------- +// +void CDunAtCmdPusher::ManageReplyTypeChangeToEditor() + { + FTRACE(FPrint( _L("CDunAtCmdPusher::ManageReplyTypeChangeToEditor()") )); + if ( !iEditorMode ) + { + // First change to editor mode: manage it as EReplyTypeOther (prompt) + iEditorMode = ETrue; + ManageReplyTypeChangeToOther(); + FTRACE(FPrint( _L("CDunAtCmdPusher::ManageReplyTypeChangeToEditor() (editor) complete") )); + return; + } + // The same reply to editor mode as before: no reply, only notification for + // echo/forwarding purposes + iCallback->NotifyEditorModeReply(); + // Do nothing after notifying. The next ForwardEditorModeInput() triggers + // the next call of this function. + FTRACE(FPrint( _L("CDunAtCmdPusher::ManageReplyTypeChangeToEditor() complete") )); + } + +// --------------------------------------------------------------------------- // Manages change in reply type // --------------------------------------------------------------------------- // @@ -314,41 +399,32 @@ case EReplyTypeOther: { FTRACE(FPrint( _L("CDunAtCmdPusher::ManageReplyTypeChange() EReplyTypeOther") )); - iNoErrorReceived = ETrue; - SendReplyData(); + iEditorMode = EFalse; + ManageReplyTypeChangeToOther(); } break; case EReplyTypeOk: { FTRACE(FPrint( _L("CDunAtCmdPusher::ManageReplyTypeChange() EReplyTypeOk") )); - // Skip the "OK" replies if not last. Only push the "OK" reply at the end. - // iStop changes it so that the we have to send the "OK" immediately and - // only stop with NotifyDataPushComplete() - TBool found = iCallback->NotifyNextCommandPeekRequest(); - if ( !found || iStop ) - { - SendReplyData(); - } - else - { - iNoErrorReceived = ETrue; - SetToIdleAndNotifyEnd( KErrNone ); - } + iEditorMode = EFalse; + ManageReplyTypeChangeToOk(); } break; case EReplyTypeError: { FTRACE(FPrint( _L("CDunAtCmdPusher::ManageReplyTypeChange() EReplyTypeError") )); - if ( iNoErrorReceived ) - { - iAtCmdExt->ReportExternalHandleCommandError(); - } - SendReplyData(); + iEditorMode = EFalse; + ManageReplyTypeChangeToError(); } break; + case EReplyTypeEditor: + FTRACE(FPrint( _L("CDunAtCmdPusher::ManageReplyTypeChange() EReplyTypeEditor") )); + ManageReplyTypeChangeToEditor(); + break; default: { FTRACE(FPrint( _L("CDunAtCmdPusher::ManageReplyTypeChange() EReplyTypeUndefined") )); + iEditorMode = EFalse; SetToIdleAndNotifyEnd( KErrNone ); } break; diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/dun/utils/inc/DunTransporter.h --- a/localconnectivityservice/dun/utils/inc/DunTransporter.h Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/dun/utils/inc/DunTransporter.h Fri May 14 16:44:53 2010 +0300 @@ -83,6 +83,7 @@ EDunStateCallListen, // Transporter state for call state listening EDunStateAtCmdHandling, // ATEXT state for AT command handling EDunStateAtCmdPushing, // ATEXT state for AT command reply pushing + EDunStateAtCmdEchoing, // ATEXT state for AT command character echoing (text mode) EDunStateAtUrcHandling, // ATEXT state for URC handling EDunStateModeListening, // ATEXT state for mode change listening EDunStateEcomListening, // ATEXT state for ECOM change listening diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/dun/utils/inc/DunUpstream.h --- a/localconnectivityservice/dun/utils/inc/DunUpstream.h Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/dun/utils/inc/DunUpstream.h Fri May 14 16:44:53 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2007-2010 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" @@ -22,6 +22,7 @@ #include "DunTransUtils.h" #include "DunStream.h" #include "DunAtCmdHandler.h" +#include "DunAtCmdEchoer.h" #include "DunDataPusher.h" class MDunCmdModeMonitor; @@ -132,7 +133,8 @@ NONSHARABLE_CLASS( CDunUpstream ) : public CDunStream, public MDunAtCmdHandler, public MDunCmdModeMonitor, - public MDunAtCmdStatusReporter + public MDunAtCmdStatusReporter, + public MDunAtCmdEchoer { public: @@ -284,6 +286,15 @@ */ void NotifyAtCmdHandlingEnd( TInt aStartIndex ); + /** + * Notifies about editor mode reply + * + * @since TB9.2 + * @param aStart ETrue if start of editor mode, EFalse otherwise + * @return Symbian error code on error, KErrNone otherwise + */ + void NotifyEditorModeReply( TBool aStart ); + // from base class MDunAtCmdHandler /** @@ -322,6 +333,16 @@ */ void NotifyCommandModeEnd(); +// from base class MDunAtCmdEchoer + + /** + * Notifies about completed echo in text mode + * + * @since TB9.2 + * @return None + */ + void NotifyEchoComplete(); + private: // data /** diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/dun/utils/src/DunUpstream.cpp --- a/localconnectivityservice/dun/utils/src/DunUpstream.cpp Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/dun/utils/src/DunUpstream.cpp Fri May 14 16:44:53 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2008-2010 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" @@ -499,6 +499,31 @@ } // --------------------------------------------------------------------------- +// From class MDunAtCmdStatusReporter +// Notifies about editor mode reply +// --------------------------------------------------------------------------- +// +void CDunUpstream::NotifyEditorModeReply( TBool aStart ) + { + FTRACE(FPrint( _L("CDunUpstream::NotifyEditorModeReply()" ))); + if ( iParseData.iDataMode ) + { + FTRACE(FPrint( _L("CDunUpstream::NotifyEditorModeReply() (not ready) complete" ))); + return; + } + // If start of editor mode then just reissue the read request + // If continuation then echo and reissue the read request + if ( aStart ) + { + IssueRequest(); + FTRACE(FPrint( _L("CDunUpstream::NotifyEditorModeReply() (start) complete" ))); + return; + } + iParseData.iAtCmdHandler->SendEchoCharacter( iBufferPtr, this ); + FTRACE(FPrint( _L("CDunUpstream::NotifyEditorModeReply() complete" ))); + } + +// --------------------------------------------------------------------------- // From class MDunAtCmdHandler // Starts URC message handling // --------------------------------------------------------------------------- @@ -581,3 +606,15 @@ IssueRequest(); FTRACE(FPrint( _L("CDunUpstream::NotifyCommandModeEnd() complete" ))); } + +// --------------------------------------------------------------------------- +// From class MDunAtCmdEchoer. +// Notifies about command mode end +// --------------------------------------------------------------------------- +// +void CDunUpstream::NotifyEchoComplete() + { + FTRACE(FPrint( _L("CDunUpstream::NotifyEchoComplete()" ))); + IssueRequest(); + FTRACE(FPrint( _L("CDunUpstream::NotifyEchoComplete() complete" ))); + } diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/group/bld.inf --- a/localconnectivityservice/group/bld.inf Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/group/bld.inf Fri May 14 16:44:53 2010 +0300 @@ -24,7 +24,6 @@ #include "../obexsendservices/group/bld.inf" #include "../obexreceiveservices/group/bld.inf" #include "../dun/group/bld.inf" -#include "../lcstylustap/group/bld.inf" #include "../generichid/group/bld.inf" #include "../headset/group/bld.inf" diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/data/10204DAE.rss --- a/localconnectivityservice/lcstylustap/data/10204DAE.rss Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,81 +0,0 @@ -/* -* Copyright (c) 2007-2008 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: Resource definitions for touch functional plug in -* -*/ - - - - -#include "registryinfov2.rh" -#include "AknIndicatorPluginImplUIDs.hrh" - - - -RESOURCE REGISTRY_INFO theInfo - { - resource_format_version = RESOURCE_FORMAT_VERSION_2; - dll_uid = 0x10204DAE; // Plugin dll UID - interfaces = - { - INTERFACE_INFO - { - interface_uid = KAknIndicatorPluginInterfaceUid; - - implementations = - { - IMPLEMENTATION_INFO - { - implementation_uid = KImplUIDBTIndicatorsPlugin; - version_no = 1; - display_name = "LC Stylus Tap Plug in for BT"; // Plugin debug name - default_data = "lcstylustapbt"; // Parent UID - opaque_data = ""; - // This implementation CANNOT be overridden by a RAM-based plug-in - rom_only = 1; - }, - IMPLEMENTATION_INFO - { - implementation_uid = KImplUIDUSBIndicatorsPlugin; - version_no = 1; - display_name = "LC Stylus Tap Plug in for USB"; // Plugin debug name - default_data = "lcstylustapusb"; // Parent UID - opaque_data = ""; - // This implementation CANNOT be overridden by a RAM-based plug-in - rom_only = 1; - }, - IMPLEMENTATION_INFO - { - implementation_uid = KImplUIDIRIndicatorsPlugin; - version_no = 1; - display_name = "LC Stylus Tap Plug in for IRDA"; // Plugin debug name - default_data = "lcstylustapirda"; // Parent UID - opaque_data = ""; - // This implementation CANNOT be overridden by a RAM-based plug-in - rom_only = 1; - }, - IMPLEMENTATION_INFO - { - implementation_uid = 0x20026FC4; - version_no = 1; - display_name = "LC Stylus Tap Plug in for USBMEM"; // Plugin debug name - default_data = "lcstylustapusbmem"; // Parent UID - opaque_data = ""; - // This implementation CANNOT be overridden by a RAM-based plug-in - rom_only = 1; - } - }; - } - }; - } diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/data/lcstylustaprsc.rss --- a/localconnectivityservice/lcstylustap/data/lcstylustaprsc.rss Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,38 +0,0 @@ -/* -* Copyright (c) 2007-2008 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: Resource definitions for project lcstylustap -* -*/ - - -// RESOURCE IDENTIFIER -NAME LCSX // 4 letter ID - -// INCLUDES - -#include -#include -#include - -// CONSTANTS - -// RESOURCE DEFINITIONS - -RESOURCE RSS_SIGNATURE - { - } -RESOURCE TBUF r_lcstylustap_bt_name { buf = qtn_bt_title_bluetooth; } -RESOURCE TBUF r_lcstylustap_usb_name { buf = qtn_usb_stylus_tap; } -RESOURCE TBUF r_lcstylustap_usb_mem_eject { buf = qtn_usb_mem_eject; } - diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/group/bld.inf --- a/localconnectivityservice/lcstylustap/group/bld.inf Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 2007-2008 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: Build information file for Stylus Tap. -* -*/ - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS -../rom/lcstylustap.iby CORE_MW_LAYER_IBY_EXPORT_PATH(lcstylustap.iby) -../rom/lcstylustapResource.iby LANGUAGE_MW_LAYER_IBY_EXPORT_PATH(lcstylustapResource.iby) - -PRJ_MMPFILES -lcstylustap.mmp - - diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/group/lcstylustap.mmp --- a/localconnectivityservice/lcstylustap/group/lcstylustap.mmp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -/* -* Copyright (c) 2007-2009 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: This is plug in to UI Framework Core -* -*/ - - - -#include // For RESOURCE_FILES_DIR -#include - -//EPOCALLOWDLLDATA - -CAPABILITY CAP_ECOM_PLUGIN - -TARGET lcstylustap.dll -TARGETTYPE PLUGIN -UID 0x10009D8D 0x10204DAE -VENDORID VID_DEFAULT - - -SOURCEPATH ../src -SOURCE lcstylustapproxy.cpp -SOURCE lcstylustap.cpp -SOURCE lcstylustapdismount.cpp -SOURCE forcedismounttimer.cpp - - -//User include paths -USERINCLUDE ../inc - - -//System include paths -MW_LAYER_SYSTEMINCLUDE -SYSTEMINCLUDE /epoc32/include/ecom - -SOURCEPATH ../data - -START RESOURCE 10204DAE.rss -TARGET lcstylustap.rsc -END - - -START RESOURCE lcstylustaprsc.rss -HEADER -TARGET lcstylustaprsc.rsc -TARGETPATH RESOURCE_FILES_DIR -LANGUAGE_IDS -END - - -LIBRARY ecom.lib -LIBRARY euser.lib -LIBRARY bafl.lib -LIBRARY avkon.lib -LIBRARY cone.lib -LIBRARY commonengine.lib -LIBRARY efsrv.lib - -LIBRARY flogger.lib - - diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/inc/debug.h --- a/localconnectivityservice/lcstylustap/inc/debug.h Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,167 +0,0 @@ -/* -* Copyright (c) 2006 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: Logging definition -* -*/ - - -#ifndef PRJ_LOGGING_H -#define PRJ_LOGGING_H - -#include -#include "debugconfig.h" - -#ifdef PRJ_ENABLE_TRACE - -#ifdef PRJ_FILE_TRACE -#include -#else -#include -#endif - -NONSHARABLE_CLASS(TOverflowTruncate16) : public TDes16Overflow - { -public: - void Overflow(TDes16& /*aDes*/) {} - }; - -NONSHARABLE_CLASS(TOverflowTruncate8) : public TDes8Overflow - { -public: - void Overflow(TDes8& /*aDes*/) {} - }; - -inline void Trace(TRefByValue aFmt, ...) - { - VA_LIST list; - VA_START(list,aFmt); -#ifdef PRJ_FILE_TRACE - RFileLogger::WriteFormat(KLogDir, KLogFile, EFileLoggingModeAppend, aFmt, list); -#else - TBuf16 theFinalString; - theFinalString.Append(KTracePrefix16); - TOverflowTruncate16 overflow; - theFinalString.AppendFormatList(aFmt,list,&overflow); - RDebug::Print(theFinalString); -#endif - } - -inline void Trace(TRefByValue aFmt, ...) - { - VA_LIST list; - VA_START(list, aFmt); -#ifdef PRJ_FILE_TRACE - RFileLogger::WriteFormat(KLogDir, KLogFile, EFileLoggingModeAppend, aFmt, list); -#else - TOverflowTruncate8 overflow; - TBuf8 buf8; - buf8.Append(KTracePrefix8); - buf8.AppendFormatList(aFmt, list, &overflow); - TBuf16 buf16(buf8.Length()); - buf16.Copy(buf8); - TRefByValue tmpFmt(_L("%S")); - RDebug::Print(tmpFmt, &buf16); -#endif - } - -inline void TracePanic( - char* aFile, - TInt aLine, - TInt aPanicCode, - const TDesC& aPanicCategory) - { - TPtrC8 fullFileName((const TUint8*)aFile); - TPtrC8 fileName(fullFileName.Ptr()+fullFileName.LocateReverse('\\')+1); - TBuf8 buf; - buf.Append(KPanicPrefix8); - buf.AppendFormat(_L8("%d at line %d in file %S"), aPanicCode, aLine, &fileName); - Trace(buf); - User::Panic(aPanicCategory, aPanicCode); - } - -inline void TraceLeave(char* aFile, TInt aLine, TInt aReason) - { - TPtrC8 fullFileName((const TUint8*)aFile); - TPtrC8 fileName(fullFileName.Ptr()+fullFileName.LocateReverse('\\')+1); - TBuf8 buf; - buf.Append(KLeavePrefix8); - buf.AppendFormat(_L8("%d at line %d in file %S"), aReason, aLine, &fileName); - Trace(buf); - User::LeaveIfError(aReason); - } - -#define TRACE_INFO(p) {if(KTraceMask & KPRINTINFO) Trace p;} - -#define TRACE_ERROR(p) {if(KTraceMask & KPRINTERROR) Trace p;} - -#define TRACE_STATE(p) {if(KTraceMask & KPRINTSTATE) Trace p;} - -#define TRACE_WARNING(p) {if(KTraceMask & KPRINTWARNING) Trace p;} - -#define TRACE_INFO_SEG(p) {if(KTraceMask & KPRINTINFO) p;} - -#define TRACE_ASSERT(GUARD, CODE) {if (!(GUARD)) TracePanic(__FILE__, __LINE__, CODE, KPanicCategory);} - -#define PANIC(CODE) TracePanic(__FILE__, __LINE__, CODE, KPanicCategory) - -#define LEAVE_IF_ERROR(REASON) {if (REASON) TraceLeave(__FILE__, __LINE__, REASON);} - -#define LEAVE(REASON) {TraceLeave(__FILE__, __LINE__, REASON);} - -#define TRACE_FUNC_ENTRY {if(KTraceMask & KPRINTINFO) { TPtrC8 ptr8((TUint8*)__PRETTY_FUNCTION__); Trace(KFuncEntryFormat8, &ptr8);}} - -#define TRACE_FUNC_ENTRY_THIS {if(KTraceMask & KPRINTINFO) { TPtrC8 ptr8((TUint8*)__PRETTY_FUNCTION__); Trace(KFuncEntryThisFormat8, &ptr8, this);}} - -#define TRACE_FUNC_EXIT {if(KTraceMask & KPRINTINFO) { TPtrC8 ptr8((TUint8*)__PRETTY_FUNCTION__); Trace(KFuncExitFormat8, &ptr8);}} - -#define TRACE_FUNC {if(KTraceMask & KPRINTINFO) { TPtrC8 ptr8((TUint8*)__PRETTY_FUNCTION__); Trace(KFuncFormat8, &ptr8);}} - -#define TRACE_FUNC_THIS {if(KTraceMask & KPRINTINFO) { TPtrC8 ptr8((TUint8*)__PRETTY_FUNCTION__); Trace(KFuncThisFormat8, &ptr8, this);}} - -#define RETURN_IF_ERR(ERR) {if(ERR) {TPtrC8 ptr8((TUint8*)__FILE__); Trace(_L8(" RETURN %d at file %S line %d"), ERR, &ptr8, __LINE__); return ERR;}} - -#else // PRJ_ENABLE_TRACE not defined - -#define TRACE_INFO(p) - -#define TRACE_ERROR(p) - -#define TRACE_STATE(p) - -#define TRACE_WARNING(p) - -#define TRACE_INFO_SEG(p) - -#define TRACE_ASSERT(GUARD, CODE) - -#define PANIC(CODE) {User::Panic(KPanicCategory, CODE);} - -#define LEAVE_IF_ERROR(REASON) {static_cast(User::LeaveIfError(REASON));} - -#define LEAVE(REASON) {static_cast(User::Leave(REASON));} - -#define TRACE_FUNC_ENTRY - -#define TRACE_FUNC_ENTRY_THIS - -#define TRACE_FUNC_EXIT - -#define TRACE_FUNC - -#define TRACE_FUNC_THIS - -#define RETURN_IF_ERR(ERR) {if(ERR) return ERR;} -#endif // PRJ_ENABLE_TRACE - -#endif // PRJ_LOGGING_H diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/inc/debugconfig.h --- a/localconnectivityservice/lcstylustap/inc/debugconfig.h Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,72 +0,0 @@ -/* -* Copyright (c) 2006 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: Project configure file. -* -*/ - - -#ifndef ___DEBUGCONFIG_H__ -#define ___DEBUGCONFIG_H__ - - -#ifdef _DEBUG -#define PRJ_ENABLE_TRACE -#endif - - -//#define PRJ_FILE_TRACE - -/** - * build the project for module test purpose if this is defined - */ -//#define PRJ_MODULETEST_BUILD - -/** - * build the project using stubs to replace the dependencies if this is defined - */ -//#define PRJ_USE_STUB - - -/** - * Custom logging variations. - */ -#ifdef PRJ_FILE_TRACE -_LIT(KLogFile,"lcstylustap.txt"); -_LIT(KLogDir,"lcstylustap"); -#endif - -#ifdef PRJ_ENABLE_TRACE -_LIT(KTracePrefix16, "[lcstylustap] "); -_LIT8(KTracePrefix8, "[lcstylustap] "); -_LIT8(KFuncFormat8, "><%S"); -_LIT8(KFuncThisFormat8, "><%S, [0x%08X]"); -_LIT8(KFuncEntryFormat8, ">%S"); -_LIT8(KFuncEntryThisFormat8, ">%S, [0x%08X]"); -_LIT8(KFuncExitFormat8, "<%S"); - -_LIT(KPanicCategory, "LC lcstylustap"); -_LIT8(KPanicPrefix8, "PANIC code "); -_LIT8(KLeavePrefix8, "LEAVE code "); -#endif - -const TInt KMaxLogLineLength = 512; - -#define KPRINTERROR 0x00000001 // Tracing level: error -#define KPRINTINFO 0x00000002 // Tracing level: function trace -#define KPRINTSTATE 0x00000004 // Tracing level: state machine info -#define KPRINTWARNING 0x00000008 // Tracing level: warning - -const TInt KTraceMask = KPRINTERROR | KPRINTINFO | KPRINTSTATE | KPRINTWARNING; - -#endif // ___DEBUGCONFIG_H__ diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/inc/forcedismounttimer.h --- a/localconnectivityservice/lcstylustap/inc/forcedismounttimer.h Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,97 +0,0 @@ -/* -* Copyright (c) 2009 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: Header file for Stylus Tap indicator -* -*/ - -#ifndef C_FORCEDISMOUNTTIMER_H -#define C_FORCEDISMOUNTTIMER_H - -#include - -/** - * Timer callback interface for force mount - * - * This class specifies the function to be called when a timeout occurs. - * Used in conjunction with CTimeOutTimer class - * - */ -class MTimerNotifier - { -public: - /** - * The function to be called when a timeout occurs. - * - */ - virtual void TimerExpired() = 0; - }; - -/** - * Timer interface for force mount - * - * This class will notify an object after a specified timeout. - * - */ -class CForceDismountTimer : public CTimer - { -public: - /** - * Two-phased constructor. - * @param aTimeOutNotify object to notify of timeout event - */ - static CForceDismountTimer* NewL( MTimerNotifier* aTimeOutNotify ); - - /** - * Two-phased constructor. - * @param aTimeOutNotify object to notify of timeout event - */ - static CForceDismountTimer* NewLC( MTimerNotifier* aTimeOutNotify); - - /** - * Destructor - */ - virtual ~CForceDismountTimer(); - -protected: - - /** - * From CTimer - * Invoked when a timeout occurs - * - */ - virtual void RunL(); - -private: - /** - * Constructor. - * @param aTimeOutNotify object to notify of timeout event - */ - CForceDismountTimer( MTimerNotifier* aTimeOutNotify ); - - /** - * Default constructor. - */ - void ConstructL(); - -private: // Member variables - - /** - * The observer for this objects events - * Not own. - */ - MTimerNotifier* iNotify; - - - }; -#endif // C_FORCEMOUNTTIMER_H diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/inc/lcstylustap.h --- a/localconnectivityservice/lcstylustap/inc/lcstylustap.h Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,104 +0,0 @@ -/* -* Copyright (c) 2006 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: Header file for Stylus Tap indicator -* -*/ - - -#ifndef C_LCSTYLUSTAP_H -#define C_LCSTYLUSTAP_H - -#include - - -class CLcStylusTapDismount; -/** - * Implements stylus tap actions for the indicator provided by - * UID - * @lib - * @since S60 v5.0 - */ - -NONSHARABLE_CLASS( CLcStylusTap ) : public CAknIndicatorPlugin - { - -public: - - /** - * Two-phase constructor - * @since S60 5.0 - * @param none - */ - static CLcStylusTap* NewL( ); - - /** - * Destructor - */ - virtual ~CLcStylusTap(); - -public: // CAknIndicatorPlugin - - /** - * HandleIndicatorTapL is called when user tap on the UI - * @since S60 5.0 - * @param aUid, implementation Uid - */ - void HandleIndicatorTapL( const TInt aUid ); - /** - * TextL, the text that should be shown in the tap area - * @since S60 5.0 - * @param aUid, implementation Uid - * @param aTextType, text type linked or no link - */ - HBufC* TextL( const TInt aUid, TInt& aTextType ); - -private: - - /** - * C++ default constructor - * @since S60 5.0 - * @param none - */ - CLcStylusTap( ); - - /** - * Symbian 2nd-phase constructor - * @since S60 5.0 - * @param none - */ - void ConstructL(); - /** - * Create the setting application - * @since S60 5.0 - * @param aProcessName, process name whose setting view will be launched - * @param aUidType TUidType of the desired process - */ - void CreateDesiredViewL(const TDesC & aProcessName,const TUidType & aUidType) const; - - - /** - * Ejec usb memory - */ - void EjectUSBMemL(); - -private: // data - /** - * Dismount manageer - * Own. - */ - CLcStylusTapDismount* iDismountManager; - }; - - -#endif // __LCSTYLUSTAP_H__ diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/inc/lcstylustapdismount.h --- a/localconnectivityservice/lcstylustap/inc/lcstylustapdismount.h Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,105 +0,0 @@ -/* -* Copyright (c) 2009 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: Header file for Stylus Tap indicator -* -*/ - - -#ifndef C_LCSTYLUSTAPDISMOUNT_H -#define C_LCSTYLUSTAPDISMOUNT_H - -#include // CActive -#include -#include "forcedismounttimer.h" - - -/** - * Active class dismount notifications notifiers - * - */ -NONSHARABLE_CLASS( CLcStylusTapDismount ) : public CActive, - public MTimerNotifier - { -public: - virtual ~CLcStylusTapDismount(); - static CLcStylusTapDismount* NewL(); - static CLcStylusTapDismount* NewLC(); - -public: - /** - * Send dismount notifications for all usb drives. - */ - void DisMountUsbDrives(); - -protected: - /** - * Constructor - */ - CLcStylusTapDismount(); - - /** - * ConstructL - */ - void ConstructL(); - -private: - /** - * Send dismount nontication - */ - void DoDismount(); - -private: //from CActive - // CActive implementation - /** - * RunL - */ - void RunL(); - - /** - * DoCancel - */ - void DoCancel(); - -private: // from MTimerNotifier - - /** - * Force dismount timer callback - */ - void TimerExpired(); - -private: - /** - * Drive index - */ - TInt iDriveIndex; - /** - * RFs session - */ - RFs iRFs; - - /** - * List of drives - */ - TDriveList iDriveList; - - /** - * Force dismount timer - * Own - */ - CForceDismountTimer* iDismountTimer; - }; - - - -#endif // __LCSTYLUSTAP_H__ diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/rom/lcstylustap.iby --- a/localconnectivityservice/lcstylustap/rom/lcstylustap.iby Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,23 +0,0 @@ -/* -* Copyright (c) 2009 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: -* -*/ -#ifndef LCSTYLUSTAP_IBY -#define LCSTYLUSTAP_IBY - -//ECOM plugin for tapping(Ecom DLL) -ECOM_PLUGIN(lcstylustap.dll,lcstylustap.rsc) - -#endif diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/rom/lcstylustapResource.iby --- a/localconnectivityservice/lcstylustap/rom/lcstylustapResource.iby Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,24 +0,0 @@ -/* -* Copyright (c) 2009 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: -* -*/ -#ifndef LCSTYLUSTAPRESOURCE_IBY -#define LCSTYLUSTAPRESOURCE_IBY - -//View resource in Ecom plugin -data=DATAZ_\RESOURCE_FILES_DIR\lcstylustaprsc.rsc RESOURCE_FILES_DIR\lcstylustaprsc.rsc - - -#endif diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/src/forcedismounttimer.cpp --- a/localconnectivityservice/lcstylustap/src/forcedismounttimer.cpp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,96 +0,0 @@ -/* -* Copyright (c) 2006 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: LC stylustap force unmount timeouttimer -*/ - -#include "debug.h" -#include "forcedismounttimer.h" - - -const TInt KForceDismountTimeOut = 6000000; // 6 seconds - -// ======== MEMBER FUNCTIONS ======== -// --------------------------------------------------------------------------- -// NewL -// --------------------------------------------------------------------------- -// -CForceDismountTimer* CForceDismountTimer::NewL( MTimerNotifier* aTimeOutNotify) - { - TRACE_FUNC - CForceDismountTimer* self = CForceDismountTimer::NewLC( aTimeOutNotify ); - CleanupStack::Pop(self); - return self; - } - -// --------------------------------------------------------------------------- -// NewLC -// --------------------------------------------------------------------------- -// -CForceDismountTimer* CForceDismountTimer::NewLC( MTimerNotifier* aTimeOutNotify ) - { - TRACE_FUNC - CForceDismountTimer* self = new (ELeave) CForceDismountTimer( aTimeOutNotify ); - CleanupStack::PushL(self); - self->ConstructL(); - return self; - } - -// --------------------------------------------------------------------------- -// CTimeOutTimer() -// --------------------------------------------------------------------------- -// -CForceDismountTimer::CForceDismountTimer( MTimerNotifier* aTimeOutNotify): - CTimer(EPriorityStandard), - iNotify(aTimeOutNotify) - { - TRACE_FUNC - } - -// --------------------------------------------------------------------------- -// Destructor -// --------------------------------------------------------------------------- -// -CForceDismountTimer::~CForceDismountTimer() - { - TRACE_FUNC - Cancel(); - } - -// --------------------------------------------------------------------------- -// ConstructL() -// --------------------------------------------------------------------------- -// -void CForceDismountTimer::ConstructL() - { - TRACE_FUNC - if ( !iNotify ) - { - User::Leave(KErrArgument); - } - CTimer::ConstructL(); - CActiveScheduler::Add(this); - After( KForceDismountTimeOut ); - } - -// --------------------------------------------------------------------------- -// From class CActive -// RunL() -// --------------------------------------------------------------------------- -// -void CForceDismountTimer::RunL() - { - TRACE_FUNC - // Timer request has completed, so notify the timer's owner - iNotify->TimerExpired(); - } diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/src/lcstylustap.cpp --- a/localconnectivityservice/lcstylustap/src/lcstylustap.cpp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,221 +0,0 @@ -/* -* Copyright (c) 2007-2008 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: ECOM implementation for touch indicator -* -*/ - - -#include -#include -#include -#include -#include -#include // KExecutableImageUid -#include -#include "lcstylustap.h" -#include "debug.h" -#include "lcstylustapdismount.h" - -const TInt KUsbUIUID = 0x102068E2; -const TInt KBtUIUID = 0x10005951; - - -// Constants -_LIT(KFileDrive, "z:"); -_LIT( KLCStylustapPluginResourceFile, "lcstylustaprsc.rsc" ); -_LIT(KBTUIExe, "BTUI.exe"); // Hard coded name can be used, since it will not be changed -_LIT(KUSBExe, "USBClassChangeUI.exe"); - - -// ======== MEMBER FUNCTIONS ======== - -// --------------------------------------------------------------------------- -// C++ default constructor -// --------------------------------------------------------------------------- -// -CLcStylusTap::CLcStylusTap() - { - - } - - -// --------------------------------------------------------------------------- -// Symbian 2nd-phase constructor -// --------------------------------------------------------------------------- -// -void CLcStylusTap::ConstructL() - { - - } - - -// --------------------------------------------------------------------------- -// NewL -// --------------------------------------------------------------------------- -// -CLcStylusTap* CLcStylusTap::NewL( ) - { - TRACE_FUNC_ENTRY - CLcStylusTap* self = new( ELeave ) CLcStylusTap( ); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop(); - TRACE_FUNC_EXIT - return self; - } - -// --------------------------------------------------------------------------- -// Destructor -// --------------------------------------------------------------------------- -// -CLcStylusTap::~CLcStylusTap() - { - TRACE_FUNC_ENTRY - delete iDismountManager; - TRACE_FUNC_EXIT - } - -// --------------------------------------------------------------------------- -// TextL. -// Return the text that should be displayed in the link. -// --------------------------------------------------------------------------- -// - -HBufC* CLcStylusTap::TextL( const TInt aUid, TInt& aTextType ) - { - TRACE_INFO((_L("CLcStylusTap::TextL aUid = %d"), aUid)) - - CEikonEnv* eikEnv = CEikonEnv::Static(); - RConeResourceLoader rLoader(*eikEnv); - - TFileName filename; - filename += KFileDrive; - filename += KDC_RESOURCE_FILES_DIR; - filename += KLCStylustapPluginResourceFile; - - - CleanupClosePushL(rLoader); - rLoader.OpenL(filename); - - HBufC* dynStringBuf = NULL; - - switch(aUid) - { - case EAknIndicatorBluetooth: - case EAknIndicatorBluetoothVisible: - case EAknIndicatorBluetoothModuleOn: - case EAknIndicatorBluetoothModuleOnVisible: - { - dynStringBuf = eikEnv->AllocReadResourceL(R_LCSTYLUSTAP_BT_NAME ); - aTextType = EAknIndicatorPluginLinkText; - break; - } - case EAknIndicatorUSBConnection: - { - aTextType = EAknIndicatorPluginLinkText; - dynStringBuf = eikEnv->AllocReadResourceL(R_LCSTYLUSTAP_USB_NAME ); - break; - } - case EAknIndicatorUSBMemConnected: - case EAknIndicatorUSBMemActive: - { - aTextType = EAknIndicatorPluginLinkText; - dynStringBuf = eikEnv->AllocReadResourceL(R_LCSTYLUSTAP_USB_MEM_EJECT ); - break; - } - default: - break; - } - - CleanupStack::PopAndDestroy(); // rLoader - TRACE_INFO((_L("CLcStylusTap::TextL = %S"), dynStringBuf)) - - return dynStringBuf; - } - -// --------------------------------------------------------------------------- -// HandleIndicatorTapL. -// Filter the aUid and find the app plug in for the view. -// --------------------------------------------------------------------------- -// -void CLcStylusTap::HandleIndicatorTapL( const TInt aUid ) - { - - TRACE_INFO((_L("CLcStylusTap::HandleIndicatorTapL aUid = %d"), aUid)) - - switch(aUid) - { - case EAknIndicatorBluetooth: - case EAknIndicatorBluetoothVisible: - case EAknIndicatorBluetoothModuleOn: - case EAknIndicatorBluetoothModuleOnVisible: - { - TUidType uidtype(KExecutableImageUid, KUidApp,TUid::Uid(KBtUIUID)); - CreateDesiredViewL(KBTUIExe(),uidtype); - break; - } - case EAknIndicatorUSBConnection: - { - TUidType uidtype(KExecutableImageUid, TUid::Uid(0x00),TUid::Uid(KUsbUIUID)); - CreateDesiredViewL(KUSBExe(),uidtype); - break; - } - case EAknIndicatorUSBMemConnected: - case EAknIndicatorUSBMemActive: - { - EjectUSBMemL(); - break; - } - case EAknIndicatorIrActive: // IR not required - default: - TRACE_INFO((_L(" CLcStylusTap::HandleIndicatorTapL default"))) - break; - } - TRACE_FUNC_EXIT - } - - -// --------------------------------------------------------------------------- -// CreateDesiredViewL. -// Create the desired view via control panel. -// --------------------------------------------------------------------------- -// -void CLcStylusTap::CreateDesiredViewL(const TDesC & aProcessName,const TUidType & aUidType) const - { - TRACE_FUNC_ENTRY - RProcess NewProcess; - User::LeaveIfError(NewProcess.Create(aProcessName, KNullDesC, aUidType)); - NewProcess.Resume(); - NewProcess.Close(); - TRACE_FUNC_EXIT - } - -// --------------------------------------------------------------------------- -// CreateDesiredViewL. -// Create the desired view via control panel. -// --------------------------------------------------------------------------- -// -void CLcStylusTap::EjectUSBMemL() - { - TRACE_FUNC_ENTRY - delete iDismountManager; - iDismountManager = NULL; - iDismountManager= CLcStylusTapDismount::NewL(); - iDismountManager->DisMountUsbDrives(); - TRACE_FUNC_EXIT - } - - - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/src/lcstylustapdismount.cpp --- a/localconnectivityservice/lcstylustap/src/lcstylustapdismount.cpp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,165 +0,0 @@ -/* -* Copyright (c) 2007-2008 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: ECOM implementation for touch indicator -* -*/ - -#include "debug.h" -#include "lcstylustapdismount.h" - -// --------------------------------------------------------------------------- -// Destructor. -// --------------------------------------------------------------------------- -// -CLcStylusTapDismount::~CLcStylusTapDismount() - { - TRACE_FUNC - Cancel(); - delete iDismountTimer; - iRFs.Close(); - } - -// --------------------------------------------------------------------------- -// Symbian two phase constructor. -// --------------------------------------------------------------------------- -// -CLcStylusTapDismount* CLcStylusTapDismount::NewL() - { - TRACE_FUNC - CLcStylusTapDismount* self = CLcStylusTapDismount::NewLC(); - CleanupStack::Pop(self); - return self; - } - -// --------------------------------------------------------------------------- -// Symbian two phase constructor. Object pushed to cleanup stack -// --------------------------------------------------------------------------- -// -CLcStylusTapDismount* CLcStylusTapDismount::NewLC() - { - TRACE_FUNC - - CLcStylusTapDismount* self = new (ELeave) CLcStylusTapDismount(); - CleanupStack::PushL(self); - self->ConstructL(); - - return self; - - } - -// --------------------------------------------------------------------------- -// Returning of previous notifier and starting of new one -// --------------------------------------------------------------------------- -// -void CLcStylusTapDismount::RunL() - { - TRACE_FUNC - - delete iDismountTimer; - iDismountTimer = NULL; - - if ( iDriveIndex < KMaxDrives ) - { - DoDismount(); - } - } - -// --------------------------------------------------------------------------- -// Cancel pending notifier and those in queue -// --------------------------------------------------------------------------- -// -void CLcStylusTapDismount::DoCancel() - { - TRACE_FUNC - iRFs.NotifyDismountCancel(iStatus); - } - -// --------------------------------------------------------------------------- -// C++ constructor -// --------------------------------------------------------------------------- -// -CLcStylusTapDismount::CLcStylusTapDismount() - : CActive(EPriorityStandard) - { - TRACE_FUNC - CActiveScheduler::Add(this); - } - -// --------------------------------------------------------------------------- -// 2nd-phase constructor -// --------------------------------------------------------------------------- -// -void CLcStylusTapDismount::ConstructL() - { - TRACE_FUNC - User::LeaveIfError( iRFs.Connect()); - } - -// --------------------------------------------------------------------------- -// Dismount drive -// --------------------------------------------------------------------------- -// -void CLcStylusTapDismount::DisMountUsbDrives() - { - TRACE_FUNC - Cancel(); - iDriveIndex = 0; - iRFs.DriveList( iDriveList ); - DoDismount(); - } - -// --------------------------------------------------------------------------- -// Dismount next drive -// --------------------------------------------------------------------------- -// -void CLcStylusTapDismount::DoDismount() - { - TRACE_FUNC - TDriveInfo info; - TInt err = KErrNone; - for ( ; iDriveIndex < KMaxDrives; iDriveIndex++ ) - { - if ( iDriveList[iDriveIndex] ) - { - err = iRFs.Drive( info , iDriveIndex ); - if ( info.iConnectionBusType == EConnectionBusUsb && - info.iDriveAtt & KDriveAttExternal && - err == KErrNone ) - { - TRACE_INFO(_L("CLcStylusTapDismount::DoDismount Dismount notify request ")); - iRFs.NotifyDismount( iDriveIndex, iStatus, EFsDismountNotifyClients ); - TRAP_IGNORE( iDismountTimer = CForceDismountTimer::NewL(this) ); - SetActive(); - break; - } - } - } - } - -// --------------------------------------------------------------------------- -// Dismount next drive -// --------------------------------------------------------------------------- -// -void CLcStylusTapDismount::TimerExpired() - { - TRACE_FUNC - - Cancel(); - delete iDismountTimer; - iDismountTimer = NULL; - iRFs.NotifyDismount( iDriveIndex, iStatus, EFsDismountForceDismount ); - SetActive(); - - } -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/src/lcstylustapproxy.cpp --- a/localconnectivityservice/lcstylustap/src/lcstylustapproxy.cpp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,49 +0,0 @@ -/* -* Copyright (c) 2006 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: ECOM proxy table for this plugin -* -*/ - - - -#include -#include -#include "lcstylustap.h" - - - -// ======== LOCAL FUNCTIONS ======== - -// --------------------------------------------------------------------------- -// Definition of ECOM interface UID -// --------------------------------------------------------------------------- -// -const TImplementationProxy ImplementationTable[] = - { - IMPLEMENTATION_PROXY_ENTRY( KImplUIDBTIndicatorsPlugin, CLcStylusTap::NewL ), - IMPLEMENTATION_PROXY_ENTRY( KImplUIDUSBIndicatorsPlugin, CLcStylusTap::NewL ), - IMPLEMENTATION_PROXY_ENTRY( KImplUIDIRIndicatorsPlugin, CLcStylusTap::NewL ), - IMPLEMENTATION_PROXY_ENTRY( 0x20026FC4, CLcStylusTap::NewL ) - }; - - -// --------------------------------------------------------------------------- -// ECOM factory method -// --------------------------------------------------------------------------- -// -EXPORT_C const TImplementationProxy* ImplementationGroupProxy( TInt& aTableCount ) - { - aTableCount = sizeof( ImplementationTable ) / sizeof( TImplementationProxy ); - return ImplementationTable; - } diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/Bmarm/LcStylusTapTestU.DEF --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/Bmarm/LcStylusTapTestU.DEF Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,3 +0,0 @@ -EXPORTS - LibEntryL__FR13CTestModuleIf @ 1 NONAME R3UNUSED ; LibEntryL(CTestModuleIf &) - diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/Bwins/LcStylusTapTestU.DEF --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/Bwins/LcStylusTapTestU.DEF Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,3 +0,0 @@ -EXPORTS - ?LibEntryL@@YAPAVCScriptBase@@AAVCTestModuleIf@@@Z @ 1 NONAME ; class CScriptBase * __cdecl LibEntryL(class CTestModuleIf &) - diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/EABI/LcStylusTapTestU.def --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/EABI/LcStylusTapTestU.def Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,3 +0,0 @@ -EXPORTS - _Z9LibEntryLR13CTestModuleIf @ 1 NONAME - diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/conf/ui_LcStylusTapTest.cfg --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/conf/ui_LcStylusTapTest.cfg Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,142 +0,0 @@ -/* -* Copyright (c) 2006 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: Test Scripter configuration file -* -*/ - - -// LcStylusTapTest Module - total ... tc - -// LcStylusTapTest Api Tests (... tc) - -[Test] -title Create LcStylusTap USB -create LcStylusTapTest tester -tester ExecuteApiTestBlock CreateLcStylusTap API USB -delete tester -[Endtest] - -[Test] -title Create LcStylusTap BT -create LcStylusTapTest tester -tester ExecuteApiTestBlock CreateLcStylusTap API BT -delete tester -[Endtest] - -[Test] -title Create LcStylusTap IRDA -create LcStylusTapTest tester -tester ExecuteApiTestBlock CreateLcStylusTap API IRDA -delete tester -[Endtest] - -[Test] -title Create LcStylusTap USBMEM -create LcStylusTapTest tester -tester ExecuteApiTestBlock CreateLcStylusTap API USBMEM -delete tester -[Endtest] -/////////////////////////////////////////////// - -[Test] -title Text LcStylusTap USB -create LcStylusTapTest tester -tester ExecuteApiTestBlock TextTapTest API USB -delete tester -[Endtest] - -[Test] -title Text LcStylusTap BT -create LcStylusTapTest tester -tester ExecuteApiTestBlock TextTapTest API BT -delete tester -[Endtest] - -[Test] -title Text LcStylusTap USBMEM -create LcStylusTapTest tester -tester ExecuteApiTestBlock TextTapTest API USBMEM -delete tester -[Endtest] -/* -[Test] -title Text LcStylusTap USBMEM_loc -create LcStylusTapTest tester -tester ExecuteApiTestBlock TextTapTest API USBMEM_loc -delete tester -[Endtest] -*/ -/////////////////////////////////////////////// -[Test] -title CallHandleIndicatorTap USB -create LcStylusTapTest tester -tester ExecuteApiTestBlock CallHandleIndicatorTap API USB -pause 700 -presskey global EKeyDevice1 -delete tester -[Endtest] - -[Test] -title CallHandleIndicatorTap BT -create LcStylusTapTest tester -tester ExecuteApiTestBlock CallHandleIndicatorTap API BT -pause 1000 -presskey global EKeyEnter -pause 700 -presskey global EKeyDevice1 -delete tester -[Endtest] - -[Test] -title CallHandleIndicatorTap USBMEM -create LcStylusTapTest tester -tester ExecuteApiTestBlock CallHandleIndicatorTap API USBMEM -delete tester -[Endtest] - -[Test] -title Create LcStylusTap IRDA -create LcStylusTapTest tester -tester ExecuteApiTestBlock CreateLcStylusTap API IRDA -delete tester -[Endtest] -/////////////////////////////////////////////////////////// -// Add new api tests here -// ... - - -// LcStylusTapTest Module Tests (... tc) -/* - [Test] - title Example Module Test - create LcStylusTapTest tester - tester ExecuteModuleTestBlock ExampleTestL MODULE option 2 b - delete tester - [Endtest] -*/ -// Add new module tests here -// ... - - -// LcStylusTapTest Branch Tests (... tc) -/* - [Test] - title Example Branch Test - create LcStylusTapTest tester - tester ExecuteBranchTestBlock ExampleTestL BRANCH option 3 c - delete tester - [Endtest] -*/ -// Add new branch tests here -// ... diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/Bld.inf --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/Bld.inf Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,59 +0,0 @@ -/* -* Copyright (c) 2006 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: Build information file for LcStylusTapTest -* -*/ - - -PRJ_PLATFORMS -// specify the platforms your component needs to be built for here -// defaults to WINS MARM so you can ignore this if you just build these -DEFAULT - -PRJ_TESTEXPORTS -// NOTE: If using ARS requirements all export operations should be done under this. -// 'abld test export' - -PRJ_EXPORTS -// Specify the source file followed by its destination here -// copy will be used to copy the source file to its destination -// If there's no destination then the source file will be copied -// to the same name in /epoc32/include -// Example: -/* -/agnmodel/inc/AGMCOMON.H -*/ - -PRJ_TESTMMPFILES -LcStylusTapTest.mmp - -PRJ_MMPFILES -LcStylusTapTest_exe.mmp -//LcStylusTapTest_nrm.mmp - -// Specify the .mmp files required for building the important component -// releasables. -// -// Specify "tidy" if the component you need to build doesn't need to be -// released. Specify "ignore" if the MMP file exists but should be -// ignored. -// Example: -/* -/agnmodel/group/agnmodel.mmp -#if defined(MARM) -/agnmodel/group/agsvexe.mmp -#endif -*/ - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/LcStylusTapTest.mmp --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/LcStylusTapTest.mmp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,104 +0,0 @@ -/*TYPE TESTCLASS*/ -/* -* Copyright (c) 2006 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: -* -*/ - - -#if defined(__S60_) - // To get the MW_LAYER_SYSTEMINCLUDE-definition - #include -#endif - -TARGET LcStylusTapTest.dll -TARGETTYPE dll -UID 0x1000008D 0x101FB3E3 - -CAPABILITY CAP_ECOM_PLUGIN - -/* Remove comments and replace 0x00000000 with correct vendor id */ -// VENDORID 0x00000000 -/* Remove comments and replace 0x00000000 with correct secure id */ -// SECUREID 0x00000000 - -//TARGETPATH ?target_path -DEFFILE LcStylusTapTest.def - -MW_LAYER_SYSTEMINCLUDE - -USERINCLUDE ../inc -USERINCLUDE ../../../inc - -SYSTEMINCLUDE /EPOC32/INCLUDE/ECOM - -SOURCEPATH ../src - -SOURCE LcStylusTapTest.cpp -SOURCE LcStylusTapTestBlocks.cpp LcStylusTapTest_exe.cpp - -//RESOURCE resource_file -//RESOURCE resource_file2 - -LIBRARY euser.lib -LIBRARY stiftestinterface.lib -LIBRARY stiftestengine.lib - -LIBRARY apparc.lib -LIBRARY avkon.lib -LIBRARY efsrv.lib -LIBRARY cone.lib -LIBRARY eikcore.lib -LIBRARY bafl.lib // Basic Application Framework -LIBRARY AknSkins.lib // Skinned icons -LIBRARY aknicon.lib -LIBRARY commonengine.lib -LIBRARY ecom.lib -LIBRARY eikcoctl.lib -LIBRARY aknnotify.lib eiksrv.lib CommonEngine.lib -LIBRARY mmfstandardcustomcommands.lib -LIBRARY ECom.lib -LIBRARY defaultappclient.lib -LIBRARY apgrfx.lib -LIBRARY ws32.lib // wssession -LIBRARY viewcli.lib -LIBRARY estor.lib -LIBRARY gslauncher.lib - - -LANG SC - -/* -START WINS -?wins_specific_information -END - -START MARM -?marm_specific_information -END -*/ -// Other possible keywords: - -// DOCUMENT ?file, that is not compiled, but added to MSVC project workspace (i.e. release notes) -/* -START BITMAP ?target -TARGETPATH ?emulated_path_on_target_machine -HEADER -SOURCE ?color_depth ?source_bitmap -END -*/ -// DEFFILE ?filename -// AIF ?filename - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/LcStylusTapTest.pkg --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/LcStylusTapTest.pkg Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,66 +0,0 @@ -; -; Copyright (c) 2009 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: -; -; -; Installation file for STIF -; - -; Languages -&EN - -; Provide value for uid -#{"LcStylusTapTest"},(0x00000000),1,1,0,TYPE=SA - -; Series60 product id for S60 5.1 -[0x10283160], 0, 0, 0, {"Series60ProductID"} - -; Localised Vendor name -%{"Nokia"} - -; Unique Vendor name; -:"Nokia" - - -; Logo -; None - -; Package signature - Optional -; None - -; Start of Package body - -; Condition blocks -; None - -; Options list -; None - -; Install files -"\epoc32\release\armv5\udeb\LcStylusTapTest.dll"-"C:\Sys\Bin\LcStylusTapTest.dll" - -"..\conf\ui_LcStylusTapTest.cfg"-"E:\testing\conf\ui_LcStylusTapTest.cfg" -"..\init\LcStylusTapTest.ini"-"E:\testing\init\LcStylusTapTest.ini" - -; Embedded SIS -; None - -; End of Package body - -; PKG dependencies -; None - -; PKG capabilities -; None - diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/LcStylusTapTest_exe.mmp --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/LcStylusTapTest_exe.mmp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,42 +0,0 @@ -/*TYPE TESTCLASS*/ -/* -* Copyright (c) 2006 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: -* -*/ - - -#if defined(__S60_) - #include -#endif - -TARGET LcStylusTapTest.exe -TARGETTYPE exe -UID 0 0xEF4892C6 - -CAPABILITY CAP_ECOM_PLUGIN - - -MW_LAYER_SYSTEMINCLUDE - -SOURCEPATH ../src - -SOURCE LcStylusTapTest_exe.cpp - -LIBRARY euser.lib -LIBRARY stiftestinterface.lib - -EPOCSTACKSIZE 40960 - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/LcStylusTapTest_nrm.mmp --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/LcStylusTapTest_nrm.mmp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,76 +0,0 @@ -/*TYPE TESTCLASS*//* -* Copyright (c) 2002 - 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: ?Description -* -*/ - - -#if defined(__S60_) - // To get the MW_LAYER_SYSTEMINCLUDE-definition - #include -#endif - -TARGET LcStylusTapTest.dll -TARGETTYPE dll -UID 0x1000008D 0x101FB3E3 - -CAPABILITY ALL -TCB -/* Remove comments and replace 0x00000000 with correct vendor id */ -// VENDORID 0x00000000 -/* Remove comments and replace 0x00000000 with correct secure id */ -// SECUREID 0x00000000 - -//TARGETPATH ?target_path -DEFFILE LcStylusTapTest.def - -MW_LAYER_SYSTEMINCLUDE - -USERINCLUDE ../inc -SOURCEPATH ../src - -SOURCE LcStylusTapTest.cpp -SOURCE LcStylusTapTestBlocks.cpp - -//RESOURCE resource_file -//RESOURCE resource_file2 - -LIBRARY euser.lib -LIBRARY stiftestinterface.lib -LIBRARY stiftestengine.lib - -LANG SC - -/* -START WINS -?wins_specific_information -END - -START MARM -?marm_specific_information -END -*/ -// Other possible keywords: - -// DOCUMENT ?file, that is not compiled, but added to MSVC project workspace (i.e. release notes) -/* -START BITMAP ?target -TARGETPATH ?emulated_path_on_target_machine -HEADER -SOURCE ?color_depth ?source_bitmap -END -*/ -// DEFFILE ?filename -// AIF ?filename - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/LcStylusTapTest_phone.pkg --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/LcStylusTapTest_phone.pkg Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,66 +0,0 @@ -; -; Copyright (c) 2009 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: -; -; -; Installation file for STIF -; - -; Languages -&EN - -; Provide value for uid -#{"LcStylusTapTest"},(0x00000000),1,1,0,TYPE=SA - -; Series60 product id for S60 5.1 -[0x10283160], 0, 0, 0, {"Series60ProductID"} - -; Localised Vendor name -%{"Nokia"} - -; Unique Vendor name; -:"Nokia" - - -; Logo -; None - -; Package signature - Optional -; None - -; Start of Package body - -; Condition blocks -; None - -; Options list -; None - -; Install files -"\epoc32\release\armv5\udeb\LcStylusTapTest.dll"-"C:\Sys\Bin\LcStylusTapTest.dll" - -"..\conf\ui_LcStylusTapTest.cfg"-"C:\testframework\ui_LcStylusTapTest.cfg" -"..\init\LcStylusTapTest_phone.ini"-"C:\testframework\testframework.ini" - -; Embedded SIS -; None - -; End of Package body - -; PKG dependencies -; None - -; PKG capabilities -; None - diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/make_and_sign_sis.bat --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/make_and_sign_sis.bat Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,19 +0,0 @@ -@rem -@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -@rem All rights reserved. -@rem This component and the accompanying materials are made available -@rem under the terms of "Eclipse Public License v1.0" -@rem which accompanies this distribution, and is available -@rem at the URL "http://www.eclipse.org/legal/epl-v10.html". -@rem -@rem Initial Contributors: -@rem Nokia Corporation - initial contribution. -@rem -@rem Contributors: -@rem -@rem Description: -@rem - -makesis -v LcStylusTapTest.pkg -signsis.exe LcStylusTapTest.sis LcStylusTapTest.sisx rd.cer rd-key.pem -del LcStylusTapTest.sis \ No newline at end of file diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/make_and_sign_sis_phone.bat --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/make_and_sign_sis_phone.bat Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,19 +0,0 @@ -@rem -@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -@rem All rights reserved. -@rem This component and the accompanying materials are made available -@rem under the terms of "Eclipse Public License v1.0" -@rem which accompanies this distribution, and is available -@rem at the URL "http://www.eclipse.org/legal/epl-v10.html". -@rem -@rem Initial Contributors: -@rem Nokia Corporation - initial contribution. -@rem -@rem Contributors: -@rem -@rem Description: -@rem - -makesis -v LcStylusTapTest_phone.pkg -signsis.exe LcStylusTapTest_phone.sis LcStylusTapTest_phone.sisx rd.cer rd-key.pem -del LcStylusTapTest_phone.sis \ No newline at end of file diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/rebuild_for_ats3.bat --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/rebuild_for_ats3.bat Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -@rem -@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -@rem All rights reserved. -@rem This component and the accompanying materials are made available -@rem under the terms of "Eclipse Public License v1.0" -@rem which accompanies this distribution, and is available -@rem at the URL "http://www.eclipse.org/legal/epl-v10.html". -@rem -@rem Initial Contributors: -@rem Nokia Corporation - initial contribution. -@rem -@rem Contributors: -@rem -@rem Description: -@rem - -echo Kompilacja na armv5 udeb - -del LcStylusTapTest.sisx -rd /S /Q \epoc32\BUILD -call bldmake bldfiles -call abld test reallyclean armv5 udeb -call abld test build armv5 udeb -call abld test freeze armv5 -call make_and_sign_sis.bat LcStylusTapTest - -call pause \ No newline at end of file diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/rebuild_for_phone.bat --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/group/rebuild_for_phone.bat Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -@rem -@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -@rem All rights reserved. -@rem This component and the accompanying materials are made available -@rem under the terms of "Eclipse Public License v1.0" -@rem which accompanies this distribution, and is available -@rem at the URL "http://www.eclipse.org/legal/epl-v10.html". -@rem -@rem Initial Contributors: -@rem Nokia Corporation - initial contribution. -@rem -@rem Contributors: -@rem -@rem Description: -@rem - -echo Kompilacja na armv5 udeb - -del LcStylusTapTest_phone.sisx -rd /S /Q \epoc32\BUILD -call bldmake bldfiles -call abld test reallyclean armv5 udeb -call abld test build armv5 udeb -call abld test freeze armv5 -call make_and_sign_sis_phone.bat - -call pause \ No newline at end of file diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/inc/LcStylusTapTest.h --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/inc/LcStylusTapTest.h Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,281 +0,0 @@ -/* -* Copyright (c) 2006 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: Header file for LcStylusTapTest -* -*/ - - - - -#ifndef LcStylusTapTest_H -#define LcStylusTapTest_H - -// INCLUDES -#include -#include -#include -#include -#include -#include -#include "lcstylustap.h" - -// CONSTANTS -//const ?type ?constant_var = ?constant; - -// MACROS -//#define ?macro ?macro_def -#define TEST_CLASS_VERSION_MAJOR 0 -#define TEST_CLASS_VERSION_MINOR 0 -#define TEST_CLASS_VERSION_BUILD 0 - -#ifdef STIF_LOG -#undef STIF_LOG -#endif - -#define STIF_LOG( s )\ - {\ - TBuf traceBuf;\ - traceBuf.Append( _L( "[STIF_LOG] " ) );\ - traceBuf.Append( _L( s ) );\ - iLog->Log( _L( s ) );\ - RDebug::Print( traceBuf );\ - } - -#define STIF_LOG1( s, v ) \ - {\ - TBuf traceBuf;\ - traceBuf.Append( _L( "[STIF_LOG] " ) );\ - traceBuf.Append( _L( s ) );\ - iLog->Log( _L( s ), v );\ - RDebug::Print( traceBuf, v );\ - } - -#define STIF_LOG2( s, v1, v2 ) \ - {\ - TBuf traceBuf;\ - traceBuf.Append( _L( "[STIF_LOG] " ) );\ - traceBuf.Append( _L( s ) );\ - iLog->Log( _L( s ), v1, v2 );\ - RDebug::Print( traceBuf, v1, v2 );\ - } - -#define STIF_LOG3( s, v1, v2, v3 ) \ - {\ - TBuf traceBuf;\ - traceBuf.Append( _L( "[STIF_LOG] " ) );\ - traceBuf.Append( _L( s ) );\ - iLog->Log( _L( s ), v1, v2, v3 );\ - RDebug::Print( traceBuf, v1, v2, v3 );\ - } - -// Logging path -_LIT( KLcStylusTapTestLogPath, "\\logs\\testframework\\LcStylusTapTest\\" ); - -// Logging path for ATS - for phone builds comment this line -//_LIT( KLcStylusTapTestLogPath, "e:\\testing\\stiflogs\\" ); - -// Log file -_LIT( KLcStylusTapTestLogFile, "LcStylusTapTest.txt" ); -_LIT( KLcStylusTapTestLogFileWithTitle, "LcStylusTapTest_[%S].txt" ); - -// FUNCTION PROTOTYPES -//?type ?function_name(?arg_list); - -// FORWARD DECLARATIONS -//class ?FORWARD_CLASSNAME; -class CLcStylusTapTest; -class CLcStylusTap; - -// DATA TYPES -//enum ?declaration - -enum TLcStylusTapTestResult - { - ETestCasePassed, - ETestCaseFailed - }; - -//typedef ?declaration -//extern ?data_type; - -// CLASS DECLARATION - -NONSHARABLE_CLASS( TLcStylusTapTestBlockParams ) - { - public: - TPtrC iTestBlockName; - - TPtrC iTestOption1; - TPtrC iTestOption2; - TPtrC iTestOption3; - - TInt iTestIntOption1; - TInt iTestIntOption2; - - TChar iTestCharOption1; - TChar iTestCharOption2; - }; - -/** -* CLcStylusTapTest test class for STIF Test Framework TestScripter. -* ?other_description_lines -* -* @lib ?library -* @since ?Series60_version -*/ -NONSHARABLE_CLASS( CLcStylusTapTest ) : public CScriptBase - { - public: // Constructors and destructor - - /** - * Two-phased constructor. - */ - static CLcStylusTapTest* NewL( CTestModuleIf& aTestModuleIf ); - - /** - * Destructor. - */ - virtual ~CLcStylusTapTest(); - - public: // New functions - - /** - * ?member_description. - * @since ?Series60_version - * @param ?arg1 ?description - * @return ?description - */ - //?type ?member_function( ?type ?arg1 ); - - public: // Functions from base classes - - /** - * From CScriptBase Runs a script line. - * @since ?Series60_version - * @param aItem Script line containing method name and parameters - * @return Symbian OS error code - */ - virtual TInt RunMethodL( CStifItemParser& aItem ); - - protected: // New functions - - /** - * ?member_description. - * @since ?Series60_version - * @param ?arg1 ?description - * @return ?description - */ - //?type ?member_function( ?type ?arg1 ); - - protected: // Functions from base classes - - /** - * From ?base_class ?member_description - */ - //?type ?member_function(); - - private: - - /** - * C++ default constructor. - */ - CLcStylusTapTest( CTestModuleIf& aTestModuleIf ); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL(); - - // Prohibit copy constructor if not deriving from CBase. - // ?classname( const ?classname& ); - // Prohibit assigment operator if not deriving from CBase. - // ?classname& operator=( const ?classname& ); - - /** - * Frees all resources allocated from test methods. - * @since ?Series60_version - */ - void Delete(); - - /** - * Test methods are listed below. - */ - - virtual TInt ExecuteApiTestBlock( CStifItemParser& aItem ); - virtual TInt ExecuteModuleTestBlock( CStifItemParser& aItem ); - virtual TInt ExecuteBranchTestBlock( CStifItemParser& aItem ); - - /** - * Method used to log version of test class - */ - void SendTestClassVersion(); - - //ADD NEW METHOD DEC HERE - //[TestMethods] - Do not remove - - void GetTestBlockParamsL( CStifItemParser& aItem ); - - void DoExecuteApiTestBlockL( CStifItemParser& aItem, TLcStylusTapTestResult& aTestResult ); - void DoExecuteModuleTestBlockL( CStifItemParser& aItem, TLcStylusTapTestResult& aTestResult ); - void DoExecuteBranchTestBlockL( CStifItemParser& aItem, TLcStylusTapTestResult& aTestResult ); - - void ExampleTestL( TPtrC aTestOption, TPtrC aTestSubOption, - TInt aTestIntOption, TInt aTestCharOption, TLcStylusTapTestResult& aTestResult ); - - //tests method - void CreateLcStylusTapTestL( TPtrC aTestOption, TPtrC aTestSubOption, TLcStylusTapTestResult& aTestResult ); - - void TextTapTestL( TPtrC aTestOption, TPtrC aTestSubOption, TLcStylusTapTestResult& aTestResult ); - - void CallHandleIndicatorTapTestL( TPtrC aTestOption, TPtrC aTestSubOption, TLcStylusTapTestResult& aTestResult ); - - //other methods - TBool GetPluginImplementation(TInt aValue); - void DestroyImplementation(); - //cheks if TextL method of lcstylustap returns correct values - TInt CheckTextResult(TInt aValue, HBufC* &aMedia); - - public: // Data - // ?one_line_short_description_of_data - //?data_declaration; - - protected: // Data - // ?one_line_short_description_of_data - //?data_declaration; - - private: // Data - TLcStylusTapTestBlockParams iTestBlockParams; - - CLcStylusTap* iLcStylusTap; - - RImplInfoPtrArray iPluginImpArray; - TUid iDtor_Key; - TInt iTextType; - RImplInfoPtrArray iImplementations; - - // Reserved pointer for future extension - //TAny* iReserved; - - public: // Friend classes - //?friend_class_declaration; - protected: // Friend classes - //?friend_class_declaration; - private: // Friend classes - //?friend_class_declaration; - - }; - -#endif // LcStylusTapTest_H - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/init/LcStylusTapTest.ini --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/init/LcStylusTapTest.ini Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,198 +0,0 @@ -# -# This is STIF initialization file -# Comment lines start with '#'-character. -# See STIF TestFramework users guide.doc for instructions - -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -# Set following test engine settings: -# - Set Test Reporting mode. TestReportMode's possible values are: -# + 'Summary': Summary of the tested test cases. -# + 'Environment': Hardware and software info. -# + 'TestCases': Test case report. -# + 'FullReport': Set of all above ones. -# + Example 'TestReportMode= Summary TestCases' -# -# - CreateTestReport setting controls report creation mode -# + YES, Test report will created. -# + NO, No Test report. -# -# - File path indicates the base path of the test report. -# - File name indicates the name of the test report. -# -# - File format indicates the type of the test report. -# + TXT, Test report file will be txt type, for example 'TestReport.txt'. -# + HTML, Test report will be html type, for example 'TestReport.html'. -# -# - File output indicates output source of the test report. -# + FILE, Test report logging to file. -# + RDEBUG, Test report logging to using rdebug. -# -# - File Creation Mode indicates test report overwriting if file exist. -# + OVERWRITE, Overwrites if the Test report file exist. -# + APPEND, Continue logging after the old Test report information if -# report exist. -# - Sets a device reset module's dll name(Reboot). -# + If Nokia specific reset module is not available or it is not correct one -# StifHWResetStub module may use as a template for user specific reset -# module. -# - Sets STIF test measurement disable options. e.g. pluging1 and pluging2 disablation -# DisableMeasurement= stifmeasurementplugin01 stifmeasurementplugin02 -# - -[Engine_Defaults] - -TestReportMode= FullReport # Possible values are: 'Empty', 'Summary', 'Environment', - 'TestCases' or 'FullReport' - -CreateTestReport= YES # Possible values: YES or NO - -TestReportFilePath= E:\Testing\Logs\ -TestReportFileName= LcStylusTapTest_TestReport.log - -TestReportFormat= TXT # Possible values: TXT or HTML -TestReportOutput= FILE # Possible values: FILE or RDEBUG -TestReportFileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND - -DeviceResetDllName= StifResetForNokia.dll # e.g. 'StifHWResetStub.dll' for user specific reseting - -DisableMeasurement= stifmeasurementdisablenone # Possible values are: - # 'stifmeasurementdisablenone', 'stifmeasurementdisableall' - # 'stifmeasurementplugin01', 'stifmeasurementplugin02', - # 'stifmeasurementplugin03', 'stifmeasurementplugin04', - # 'stifmeasurementplugin05' or 'stifbappeaprofiler' - -Timeout= 0 # Default timeout value for each test case. In milliseconds -UITestingSupport= YES # Possible values: YES or NO - -[End_Defaults] -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - - - -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -# Module configurations start -# Modules are added between module tags -# tags. Module name is specified after ModuleName= tag, like -# ModuleName= LcStylusTapTestLcStylusTapTestLcStylusTapTest -# Modules might have initialisation file, specified as -# IniFile= c:\testframework\YYYYYY -# Modules might have several configuration files, like -# TestCaseFile= c:\testframework\NormalCases.txt -# TestCaseFile= c:\testframework\SmokeCases.txt -# TestCaseFile= c:\testframework\ManualCases.txt - -# (TestCaseFile is synonym for old term ConfigFile) - -# Following case specifies demo module settings. Demo module -# does not read any settings from file, so tags -# IniFile and TestCaseFile are not used. -# In the simplest case it is enough to specify only the -# name of the test module when adding new test module - -[New_Module] -ModuleName= TestScripter -TestCaseFile= E:\testing\conf\ui_LcStylusTapTest.cfg -[End_Module] - - -# Load testmoduleLcStylusTapTest, optionally with initialization file and/or test case files -#[New_Module] -#ModuleName= testmodulexxx - -#TestModuleLcStylusTapTest used initialization file -#IniFile= c:\testframework\init.txt - -#TestModuleLcStylusTapTest used configuration file(s) -#TestCaseFile= c:\testframework\testcases1.cfg -#TestCaseFile= c:\testframework\testcases2.cfg -#TestCaseFile= c:\testframework\manualtestcases.cfg - -#[End_Module] -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - - - -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -# Set STIF logging overwrite parameters for Logger. -# Hardware and emulator environment logging path and styles can -# be configured from here to overwrite the Logger's implemented values. -# -# Settings description: -# - Indicates option for creation log directory/directories. If log directory/directories -# is/are not created by user they will make by software. -# + YES, Create log directory/directories if not allready exist. -# + NO, Log directory/directories not created. Only created one is used. -# -# - Overwrite emulator path setting. -# + Example: If 'EmulatorBasePath= C:\LOGS\TestFramework\' and in code is defined -# Logger's path 'D:\\LOGS\\Module\\' with those definition the path -# will be 'C:\LOGS\TestFramework\LOGS\Module\' -# -# - Overwrite emulator's logging format. -# + TXT, Log file(s) will be txt type(s), for example 'Module.txt'. -# + HTML, Log file(s) will be html type(s), for example 'Module.html'. -# -# - Overwrited emulator logging output source. -# + FILE, Logging to file(s). -# + RDEBUG, Logging to using rdebug(s). -# -# - Overwrite hardware path setting (Same description as above in emulator path). -# - Overwrite hardware's logging format(Same description as above in emulator format). -# - Overwrite hardware's logging output source(Same description as above in emulator output). -# -# - File Creation Mode indicates file overwriting if file exist. -# + OVERWRITE, Overwrites if file(s) exist. -# + APPEND, Continue logging after the old logging information if file(s) exist. -# -# - Will thread id include to the log filename. -# + YES, Thread id to log file(s) name, Example filename 'Module_b9.txt'. -# + NO, No thread id to log file(s), Example filename 'Module.txt'. -# -# - Will time stamps include the to log file. -# + YES, Time stamp added to each line in log file(s). Time stamp is -# for example'12.Nov.2003 115958 LOGGING INFO' -# + NO, No time stamp(s). -# -# - Will line breaks include to the log file. -# + YES, Each logging event includes line break and next log event is in own line. -# + NO, No line break(s). -# -# - Will event ranking include to the log file. -# + YES, Event ranking number added to each line in log file(s). Ranking number -# depends on environment's tics, for example(includes time stamp also) -# '012 12.Nov.2003 115958 LOGGING INFO' -# + NO, No event ranking. -# -# - Will write log file in unicode format. -# + YES, Log file will be written in unicode format -# + NO, Log will be written as normal, not unicode, file. -# - -[Logger_Defaults] - -#NOTE: If you want to set Logger using next setting(s) remove comment(s)'#' -#NOTE: TestEngine and TestServer logging settings cannot change here - -CreateLogDirectories= YES # Possible values: YES or NO - -#EmulatorBasePath= C:\LOGS\TestFramework\ -#EmulatorFormat= HTML # Possible values: TXT or HTML -#EmulatorOutput= FILE # Possible values: FILE or RDEBUG - -#HardwareBasePath= D:\LOGS\TestFramework\ -#HardwareFormat= HTML # Possible values: TXT or HTML -#HardwareOutput= FILE # Possible values: FILE or RDEBUG - -#FileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND - -#ThreadIdToLogFile= YES # Possible values: YES or NO -#WithTimeStamp= YES # Possible values: YES or NO -#WithLineBreak= YES # Possible values: YES or NO -#WithEventRanking= YES # Possible values: YES or NO - -#FileUnicode= YES # Possible values: YES or NO - -[End_Logger_Defaults] -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - -# End of file \ No newline at end of file diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/init/LcStylusTapTest_phone.ini --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/init/LcStylusTapTest_phone.ini Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,198 +0,0 @@ -# -# This is STIF initialization file -# Comment lines start with '#'-character. -# See STIF TestFramework users guide.doc for instructions - -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -# Set following test engine settings: -# - Set Test Reporting mode. TestReportMode's possible values are: -# + 'Summary': Summary of the tested test cases. -# + 'Environment': Hardware and software info. -# + 'TestCases': Test case report. -# + 'FullReport': Set of all above ones. -# + Example 'TestReportMode= Summary TestCases' -# -# - CreateTestReport setting controls report creation mode -# + YES, Test report will created. -# + NO, No Test report. -# -# - File path indicates the base path of the test report. -# - File name indicates the name of the test report. -# -# - File format indicates the type of the test report. -# + TXT, Test report file will be txt type, for example 'TestReport.txt'. -# + HTML, Test report will be html type, for example 'TestReport.html'. -# -# - File output indicates output source of the test report. -# + FILE, Test report logging to file. -# + RDEBUG, Test report logging to using rdebug. -# -# - File Creation Mode indicates test report overwriting if file exist. -# + OVERWRITE, Overwrites if the Test report file exist. -# + APPEND, Continue logging after the old Test report information if -# report exist. -# - Sets a device reset module's dll name(Reboot). -# + If Nokia specific reset module is not available or it is not correct one -# StifHWResetStub module may use as a template for user specific reset -# module. -# - Sets STIF test measurement disable options. e.g. pluging1 and pluging2 disablation -# DisableMeasurement= stifmeasurementplugin01 stifmeasurementplugin02 -# - -[Engine_Defaults] - -TestReportMode= FullReport # Possible values are: 'Empty', 'Summary', 'Environment', - 'TestCases' or 'FullReport' - -CreateTestReport= YES # Possible values: YES or NO - -TestReportFilePath= C:\LOGS\TestFramework\ -TestReportFileName= LcStylusTapTest_TestReport.log - -TestReportFormat= TXT # Possible values: TXT or HTML -TestReportOutput= FILE # Possible values: FILE or RDEBUG -TestReportFileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND - -DeviceResetDllName= StifResetForNokia.dll # e.g. 'StifHWResetStub.dll' for user specific reseting - -DisableMeasurement= stifmeasurementdisablenone # Possible values are: - # 'stifmeasurementdisablenone', 'stifmeasurementdisableall' - # 'stifmeasurementplugin01', 'stifmeasurementplugin02', - # 'stifmeasurementplugin03', 'stifmeasurementplugin04', - # 'stifmeasurementplugin05' or 'stifbappeaprofiler' - -Timeout= 0 # Default timeout value for each test case. In milliseconds -UITestingSupport= YES # Possible values: YES or NO - -[End_Defaults] -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - - - -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -# Module configurations start -# Modules are added between module tags -# tags. Module name is specified after ModuleName= tag, like -# ModuleName= LcStylusTapTestLcStylusTapTestLcStylusTapTest -# Modules might have initialisation file, specified as -# IniFile= c:\testframework\YYYYYY -# Modules might have several configuration files, like -# TestCaseFile= c:\testframework\NormalCases.txt -# TestCaseFile= c:\testframework\SmokeCases.txt -# TestCaseFile= c:\testframework\ManualCases.txt - -# (TestCaseFile is synonym for old term ConfigFile) - -# Following case specifies demo module settings. Demo module -# does not read any settings from file, so tags -# IniFile and TestCaseFile are not used. -# In the simplest case it is enough to specify only the -# name of the test module when adding new test module - -[New_Module] -ModuleName= TestScripter -TestCaseFile= c:\testframework\ui_LcStylusTapTest.cfg -[End_Module] - - -# Load testmoduleLcStylusTapTest, optionally with initialization file and/or test case files -#[New_Module] -#ModuleName= testmodulexxx - -#TestModuleLcStylusTapTest used initialization file -#IniFile= c:\testframework\init.txt - -#TestModuleLcStylusTapTest used configuration file(s) -#TestCaseFile= c:\testframework\testcases1.cfg -#TestCaseFile= c:\testframework\testcases2.cfg -#TestCaseFile= c:\testframework\manualtestcases.cfg - -#[End_Module] -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - - - -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -# Set STIF logging overwrite parameters for Logger. -# Hardware and emulator environment logging path and styles can -# be configured from here to overwrite the Logger's implemented values. -# -# Settings description: -# - Indicates option for creation log directory/directories. If log directory/directories -# is/are not created by user they will make by software. -# + YES, Create log directory/directories if not allready exist. -# + NO, Log directory/directories not created. Only created one is used. -# -# - Overwrite emulator path setting. -# + Example: If 'EmulatorBasePath= C:\LOGS\TestFramework\' and in code is defined -# Logger's path 'D:\\LOGS\\Module\\' with those definition the path -# will be 'C:\LOGS\TestFramework\LOGS\Module\' -# -# - Overwrite emulator's logging format. -# + TXT, Log file(s) will be txt type(s), for example 'Module.txt'. -# + HTML, Log file(s) will be html type(s), for example 'Module.html'. -# -# - Overwrited emulator logging output source. -# + FILE, Logging to file(s). -# + RDEBUG, Logging to using rdebug(s). -# -# - Overwrite hardware path setting (Same description as above in emulator path). -# - Overwrite hardware's logging format(Same description as above in emulator format). -# - Overwrite hardware's logging output source(Same description as above in emulator output). -# -# - File Creation Mode indicates file overwriting if file exist. -# + OVERWRITE, Overwrites if file(s) exist. -# + APPEND, Continue logging after the old logging information if file(s) exist. -# -# - Will thread id include to the log filename. -# + YES, Thread id to log file(s) name, Example filename 'Module_b9.txt'. -# + NO, No thread id to log file(s), Example filename 'Module.txt'. -# -# - Will time stamps include the to log file. -# + YES, Time stamp added to each line in log file(s). Time stamp is -# for example'12.Nov.2003 115958 LOGGING INFO' -# + NO, No time stamp(s). -# -# - Will line breaks include to the log file. -# + YES, Each logging event includes line break and next log event is in own line. -# + NO, No line break(s). -# -# - Will event ranking include to the log file. -# + YES, Event ranking number added to each line in log file(s). Ranking number -# depends on environment's tics, for example(includes time stamp also) -# '012 12.Nov.2003 115958 LOGGING INFO' -# + NO, No event ranking. -# -# - Will write log file in unicode format. -# + YES, Log file will be written in unicode format -# + NO, Log will be written as normal, not unicode, file. -# - -[Logger_Defaults] - -#NOTE: If you want to set Logger using next setting(s) remove comment(s)'#' -#NOTE: TestEngine and TestServer logging settings cannot change here - -CreateLogDirectories= YES # Possible values: YES or NO - -#EmulatorBasePath= C:\LOGS\TestFramework\ -#EmulatorFormat= HTML # Possible values: TXT or HTML -#EmulatorOutput= FILE # Possible values: FILE or RDEBUG - -#HardwareBasePath= D:\LOGS\TestFramework\ -#HardwareFormat= HTML # Possible values: TXT or HTML -#HardwareOutput= FILE # Possible values: FILE or RDEBUG - -#FileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND - -#ThreadIdToLogFile= YES # Possible values: YES or NO -#WithTimeStamp= YES # Possible values: YES or NO -#WithLineBreak= YES # Possible values: YES or NO -#WithEventRanking= YES # Possible values: YES or NO - -#FileUnicode= YES # Possible values: YES or NO - -[End_Logger_Defaults] -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - -# End of file \ No newline at end of file diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/src/LcStylusTapTest.cpp --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/src/LcStylusTapTest.cpp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,217 +0,0 @@ -/* -* Copyright (c) 2006 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: Implementation -* -*/ - - - - -// INCLUDE FILES -#include -#include "LcStylusTapTest.h" -#include -#include -//components headers -#include - - -// EXTERNAL DATA STRUCTURES -//extern ?external_data; - -// EXTERNAL FUNCTION PROTOTYPES -//extern ?external_function( ?arg_type,?arg_type ); - -// CONSTANTS -//const ?type ?constant_var = ?constant; - -// MACROS -//#define ?macro ?macro_def - -// LOCAL CONSTANTS AND MACROS -//const ?type ?constant_var = ?constant; -//#define ?macro_name ?macro_def - -// MODULE DATA STRUCTURES -//enum ?declaration -//typedef ?declaration - -// LOCAL FUNCTION PROTOTYPES -//?type ?function_name( ?arg_type, ?arg_type ); - -// FORWARD DECLARATIONS -//class ?FORWARD_CLASSNAME; - -// ============================= LOCAL FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// ?function_name ?description. -// ?description -// Returns: ?value_1: ?description -// ?value_n: ?description_line1 -// ?description_line2 -// ----------------------------------------------------------------------------- -// -/* -?type ?function_name( - ?arg_type arg, // ?description - ?arg_type arg) // ?description - { - - ?code // ?comment - - // ?comment - ?code - } -*/ - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CLcStylusTapTest::CLcStylusTapTest -// C++ default constructor can NOT contain any code, that -// might leave. -// ----------------------------------------------------------------------------- -// -CLcStylusTapTest::CLcStylusTapTest( - CTestModuleIf& aTestModuleIf ): - CScriptBase( aTestModuleIf ) - { - iTextType = 0; - } - -// ----------------------------------------------------------------------------- -// CLcStylusTapTest::ConstructL -// Symbian 2nd phase constructor can leave. -// ----------------------------------------------------------------------------- -// -void CLcStylusTapTest::ConstructL() - { - //Read logger settings to check whether test case name is to be - //appended to log file name. - RSettingServer settingServer; - TInt ret = settingServer.Connect(); - if(ret != KErrNone) - { - User::Leave(ret); - } - // Struct to StifLogger settigs. - TLoggerSettings loggerSettings; - // Parse StifLogger defaults from STIF initialization file. - ret = settingServer.GetLoggerSettings(loggerSettings); - if(ret != KErrNone) - { - User::Leave(ret); - } - // Close Setting server session - settingServer.Close(); - - TFileName logFileName; - - if(loggerSettings.iAddTestCaseTitle) - { - TName title; - TestModuleIf().GetTestCaseTitleL(title); - logFileName.Format(KLcStylusTapTestLogFileWithTitle, &title); - } - else - { - logFileName.Copy(KLcStylusTapTestLogFile); - } - - iLog = CStifLogger::NewL( KLcStylusTapTestLogPath, - logFileName, - CStifLogger::ETxt, - CStifLogger::EFile, - EFalse ); - - SendTestClassVersion(); - - } - -// ----------------------------------------------------------------------------- -// CLcStylusTapTest::NewL -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -CLcStylusTapTest* CLcStylusTapTest::NewL( - CTestModuleIf& aTestModuleIf ) - { - CLcStylusTapTest* self = new (ELeave) CLcStylusTapTest( aTestModuleIf ); - - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop(); - - return self; - - } - -// Destructor -CLcStylusTapTest::~CLcStylusTapTest() - { - // Delete resources allocated from test methods - Delete(); - - if(iLcStylusTap) - delete iLcStylusTap; - iLcStylusTap = NULL; - - - //if(REComSession::GetImplementationUidL(iDtor_Key) != TUid::Null()) - // REComSession::DestroyedImplementation(iDtor_Key); - - REComSession::FinalClose(); - - STIF_LOG("<<~CLcStylusTapTest"); - // Delete logger - delete iLog; - } - -//----------------------------------------------------------------------------- -// CLcStylusTapTest::SendTestClassVersion -// Method used to send version of test class -//----------------------------------------------------------------------------- -// -void CLcStylusTapTest::SendTestClassVersion() - { - TVersion moduleVersion; - moduleVersion.iMajor = TEST_CLASS_VERSION_MAJOR; - moduleVersion.iMinor = TEST_CLASS_VERSION_MINOR; - moduleVersion.iBuild = TEST_CLASS_VERSION_BUILD; - - TFileName moduleName; - moduleName = _L("LcStylusTapTest.dll"); - - TBool newVersionOfMethod = ETrue; - TestModuleIf().SendTestModuleVersion(moduleVersion, moduleName, newVersionOfMethod); - } - -// ========================== OTHER EXPORTED FUNCTIONS ========================= - -// ----------------------------------------------------------------------------- -// LibEntryL is a polymorphic Dll entry point. -// Returns: CScriptBase: New CScriptBase derived object -// ----------------------------------------------------------------------------- -// -EXPORT_C CScriptBase* LibEntryL( - CTestModuleIf& aTestModuleIf ) // Backpointer to STIF Test Framework - { - - return ( CScriptBase* ) CLcStylusTapTest::NewL( aTestModuleIf ); - - } - - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/src/LcStylusTapTestBlocks.cpp --- a/localconnectivityservice/lcstylustap/tsrc/LcStylusTapTest/src/LcStylusTapTestBlocks.cpp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,652 +0,0 @@ -/* -* Copyright (c) 2006 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: Implementation -* -*/ - - - - -// [INCLUDE FILES] - do not remove -#include -#include -#include -#include -//tests headers -#include "LcStylusTapTest.h" - -// EXTERNAL DATA STRUCTURES -//extern ?external_data; - -// EXTERNAL FUNCTION PROTOTYPES -//extern ?external_function( ?arg_type,?arg_type ); - -// CONSTANTS -//const ?type ?constant_var = ?constant; -_LIT(KBlueTooth, "Bluetooth"); -_LIT(KUSB, "USB"); -_LIT(KIRDA, "Infrared"); - -// MACROS -//#define ?macro ?macro_def - -// LOCAL CONSTANTS AND MACROS -//const ?type ?constant_var = ?constant; -//#define ?macro_name ?macro_def - -// MODULE DATA STRUCTURES -//enum ?declaration -//typedef ?declaration - -// LOCAL FUNCTION PROTOTYPES -//?type ?function_name( ?arg_type, ?arg_type ); - -// FORWARD DECLARATIONS -//class ?FORWARD_CLASSNAME; - -// ============================= LOCAL FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// ?function_name ?description. -// ?description -// Returns: ?value_1: ?description -// ?value_n: ?description_line1 -// ?description_line2 -// ----------------------------------------------------------------------------- -// -/* -?type ?function_name( - ?arg_type arg, // ?description - ?arg_type arg) // ?description - { - - ?code // ?comment - - // ?comment - ?code - } -*/ - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CLcStylusTapTest::Delete -// Delete here all resources allocated and opened from test methods. -// Called from destructor. -// ----------------------------------------------------------------------------- -// -void CLcStylusTapTest::Delete() - { - - } - -// ----------------------------------------------------------------------------- -// CLcStylusTapTest::RunMethodL -// Run specified method. Contains also table of test mothods and their names. -// ----------------------------------------------------------------------------- -// -TInt CLcStylusTapTest::RunMethodL( - CStifItemParser& aItem ) - { - - static TStifFunctionInfo const KFunctions[] = - { - //ADD NEW ENTRY HERE - // [test cases entries] - Do not remove - ENTRY( "ExecuteApiTestBlock", CLcStylusTapTest::ExecuteApiTestBlock ), - ENTRY( "ExecuteModuleTestBlock", CLcStylusTapTest::ExecuteModuleTestBlock ), - ENTRY( "ExecuteBranchTestBlock", CLcStylusTapTest::ExecuteBranchTestBlock ), - }; - - const TInt count = sizeof( KFunctions ) / - sizeof( TStifFunctionInfo ); - - return RunInternalL( KFunctions, count, aItem ); - - } - -// ----------------------------------------------------------------------------- -// CLcStylusTapTest::GetTestBlockParamsL -// ----------------------------------------------------------------------------- - -void CLcStylusTapTest::GetTestBlockParamsL( CStifItemParser& aItem ) - { - STIF_LOG( ">>> GetTestBlockParamsL" ); - - // Add new test block branches below, get all required test parameters - if ( !iTestBlockParams.iTestBlockName.Compare( _L( "ExampleTestL" ) ) ) - { - User::LeaveIfError( aItem.GetNextString( iTestBlockParams.iTestOption1 ) ); - User::LeaveIfError( aItem.GetNextString( iTestBlockParams.iTestOption2 ) ); - User::LeaveIfError( aItem.GetNextInt( iTestBlockParams.iTestIntOption1 ) ); - User::LeaveIfError( aItem.GetNextChar( iTestBlockParams.iTestCharOption1 ) ); - } - else if ( !iTestBlockParams.iTestBlockName.Compare( _L( "CreateLcStylusTap" ) ) ) - { - User::LeaveIfError( aItem.GetNextString( iTestBlockParams.iTestOption1 ) ); - User::LeaveIfError( aItem.GetNextString( iTestBlockParams.iTestOption2 ) ); - } - else if ( !iTestBlockParams.iTestBlockName.Compare( _L( "TextTapTest" ) ) ) - { - User::LeaveIfError( aItem.GetNextString( iTestBlockParams.iTestOption1 ) ); - User::LeaveIfError( aItem.GetNextString( iTestBlockParams.iTestOption2 ) ); - } - else if ( !iTestBlockParams.iTestBlockName.Compare( _L( "CallHandleIndicatorTap" ) ) ) - { - User::LeaveIfError( aItem.GetNextString( iTestBlockParams.iTestOption1 ) ); - User::LeaveIfError( aItem.GetNextString( iTestBlockParams.iTestOption2 ) ); - } - else// - { - STIF_LOG( "Test type: not found" ); - User::Leave( KErrNotFound ); - } - STIF_LOG( "<<< GetTestBlockParamsL" ); - } - -// ----------------------------------------------------------------------------- -// CLcStylusTapTest::ExecuteApiTestBlock -// ----------------------------------------------------------------------------- - -TInt CLcStylusTapTest::ExecuteApiTestBlock( CStifItemParser& aItem ) - { - STIF_LOG( ">>>ExecuteApiTestBlock" ); - - TInt res; - TLcStylusTapTestResult testResult = ETestCaseFailed; - - TRAP( res, DoExecuteApiTestBlockL( aItem, testResult ) ); - if ( res != KErrNone ) - { - STIF_LOG1( "DoExecuteApiTestBlockL error: %d", res ); - return res; - } - - STIF_ASSERT_EQUALS( ETestCasePassed, testResult ); - STIF_LOG( "Test case passed" ); - STIF_LOG( "<<>>DoExecuteApiTestBlockL" ); - - User::LeaveIfError( aItem.GetString( _L( "ExecuteApiTestBlock" ), iTestBlockParams.iTestBlockName ) ); - STIF_LOG1( "Api test type: %S", &iTestBlockParams.iTestBlockName ); - - GetTestBlockParamsL( aItem ); - - // Add new API test block branches with optional test parameters here - if ( !iTestBlockParams.iTestBlockName.Compare( _L( "ExampleTestL" ) ) ) - { - ExampleTestL( iTestBlockParams.iTestOption1, iTestBlockParams.iTestOption2, - iTestBlockParams.iTestIntOption1, iTestBlockParams.iTestCharOption1, aTestResult ); - } - else if ( !iTestBlockParams.iTestBlockName.Compare( _L( "CreateLcStylusTap" ) ) ) - { - CreateLcStylusTapTestL( iTestBlockParams.iTestOption1, iTestBlockParams.iTestOption2, aTestResult ); - } - else if ( !iTestBlockParams.iTestBlockName.Compare( _L( "TextTapTest" ) ) ) - { - TextTapTestL( iTestBlockParams.iTestOption1, iTestBlockParams.iTestOption2, aTestResult ); - } - else if ( !iTestBlockParams.iTestBlockName.Compare( _L( "CallHandleIndicatorTap" ) ) ) - { - CallHandleIndicatorTapTestL( iTestBlockParams.iTestOption1, iTestBlockParams.iTestOption2, aTestResult ); - } - else - { - STIF_LOG( "Test type: not found" ); - User::Leave( KErrNotFound ); - } - - STIF_LOG( "<<>>ExecuteModuleTestBlock" ); - - TInt res; - TLcStylusTapTestResult testResult; - - TRAP( res, DoExecuteModuleTestBlockL( aItem, testResult ) ); - if ( res != KErrNone ) - { - STIF_LOG1( "DoExecuteModuleTestBlockL error: %d", res ); - return res; - } - - STIF_ASSERT_EQUALS( ETestCasePassed, testResult ); - STIF_LOG( "[STIF_LOG] Test case passed" ); - STIF_LOG( "[STIF_LOG] <<>>DoExecuteModuleTestBlockL" ); - - User::LeaveIfError( aItem.GetString( _L( "ExecuteModuleTestBlock" ), iTestBlockParams.iTestBlockName ) ); - STIF_LOG1( "Module test type: %S", &iTestBlockParams.iTestBlockName ); - - GetTestBlockParamsL( aItem ); - - // Add new module test block branches with optional test parameters here - if ( !iTestBlockParams.iTestBlockName.Compare( _L( "ExampleTestL" ) ) ) - { - ExampleTestL( iTestBlockParams.iTestOption1, iTestBlockParams.iTestOption2, - iTestBlockParams.iTestIntOption1, iTestBlockParams.iTestCharOption1, aTestResult ); - } - else - { - STIF_LOG( "Test type: not found" ); - User::Leave( KErrNotFound ); - } - - STIF_LOG( "[STIF_LOG] <<>>ExecuteBranchTestBlock" ); - - TInt res; - TLcStylusTapTestResult testResult; - - TRAP( res, DoExecuteBranchTestBlockL( aItem, testResult ) ); - if ( res != KErrNone ) - { - STIF_LOG1( "DoExecuteBranchTestBlockL error: %d", res ); - return res; - } - - STIF_ASSERT_EQUALS( ETestCasePassed, testResult ); - STIF_LOG( "[STIF_LOG] Test case passed" ); - STIF_LOG( "[STIF_LOG] <<>>DoExecuteBranchTestBlockL" ); - - User::LeaveIfError( aItem.GetString( _L( "ExecuteBranchTestBlock" ), iTestBlockParams.iTestBlockName ) ); - STIF_LOG1( "Branch test type: %S", &iTestBlockParams.iTestBlockName ); - - GetTestBlockParamsL( aItem ); - - // Add new branch test block branches with optional test parameters here - if ( !iTestBlockParams.iTestBlockName.Compare( _L( "ExampleTestL" ) ) ) - { - ExampleTestL( iTestBlockParams.iTestOption1, iTestBlockParams.iTestOption2, - iTestBlockParams.iTestIntOption1, iTestBlockParams.iTestCharOption1, aTestResult ); - } - else - { - STIF_LOG( "Test type: not found" ); - User::Leave( KErrNotFound ); - } - - STIF_LOG( "[STIF_LOG] <<>>ExampleTestL" ); - - if ( !aTestOption.Compare( _L( "API" ) ) ) - { - STIF_LOG1( "Api test option: %S", &aTestOption ); - STIF_LOG1( "Api test sub-option: %S", &aTestSubOption ); - STIF_LOG1( "Api test int option: %d", aTestIntOption ); - STIF_LOG1( "Api test char option: %c", aTestCharOption ); - } - else if ( !aTestOption.Compare( _L( "MODULE" ) ) ) - { - STIF_LOG1( "Module test option: %S", &aTestOption ); - STIF_LOG1( "Module test sub-option: %S", &aTestSubOption ); - STIF_LOG1( "Module test int option: %d", aTestIntOption ); - STIF_LOG1( "Module test char option: %c", aTestCharOption ); - } - else if ( !aTestOption.Compare( _L( "BRANCH" ) ) ) - { - STIF_LOG1( "Branch test option: %S", &aTestOption ); - STIF_LOG1( "Branch test sub-option: %S", &aTestSubOption ); - STIF_LOG1( "Branch test int option: %d", aTestIntOption ); - STIF_LOG1( "Branch test char option: %c", aTestCharOption ); - } - else - { - STIF_LOG( "Invalid test parameter" ); - User::Leave( KErrNotFound ); - } - - aTestResult = ETestCasePassed; - - STIF_LOG( "<<>>CreateLcStylusTapL" ); - - delete iLcStylusTap; - iLcStylusTap = NULL; - - if( !aTestSubOption.Compare(_L( "BT" )) ) - { - GetPluginImplementation(EAknIndicatorBluetoothModuleOnVisible); - STIF_LOG1( "CreateLcStylusTapL BT result: %d", iLcStylusTap ? 1 : 0 ); - } - else if( !aTestSubOption.Compare(_L( "USB" )) ) - { - GetPluginImplementation(EAknIndicatorUSBConnection); - STIF_LOG1( "CreateLcStylusTapL USB result: %d", iLcStylusTap ? 1 : 0 ); - } - else if( !aTestSubOption.Compare(_L( "IRDA" )) ) - { - GetPluginImplementation(EAknIndicatorIrActive); - STIF_LOG1( "CreateLcStylusTapL IR result: %d", iLcStylusTap ? 1 : 0 ); - } - else if( !aTestSubOption.Compare(_L( "USBMEM" )) ) - { - GetPluginImplementation(EAknIndicatorUSBMemConnected); - STIF_LOG1( "CreateLcStylusTapL USB result: %d", iLcStylusTap ? 1 : 0 ); - } - else - {} - - if(!iLcStylusTap) - { - STIF_LOG( "Error iLcStylusTap == NULL" ); - return; - } - - DestroyImplementation(); - - aTestResult = ETestCasePassed; - - STIF_LOG( "<<>CLcStylusTapTest::TextTapTestL"); - - HBufC* Media = NULL; - delete iLcStylusTap; - iLcStylusTap = NULL; - - if( !aTestSubOption.Compare(_L( "BT" )) ) - { - GetPluginImplementation(EAknIndicatorBluetoothModuleOnVisible); - if(iLcStylusTap) - { - Media = iLcStylusTap->TextL(EAknIndicatorBluetoothModuleOnVisible, iTextType); - STIF_LOG1( "CheckTextResult err: %d", CheckTextResult(EAknIndicatorBluetoothModuleOnVisible, Media) ); - STIF_LOG1( "TextL: %S, OK", Media ); - } - } - else if( !aTestSubOption.Compare(_L( "USB" )) ) - { - GetPluginImplementation(EAknIndicatorUSBConnection); - if(iLcStylusTap) - { - Media = iLcStylusTap->TextL(EAknIndicatorUSBConnection, iTextType); - STIF_LOG1( "TextL: %S, OK", Media ); - STIF_LOG1( "CheckTextResult err: %d", CheckTextResult(EAknIndicatorUSBConnection, Media) ); - } - } - else if( !aTestSubOption.Compare(_L( "USBMEM" )) ) - { - GetPluginImplementation(EAknIndicatorUSBMemConnected); - if(iLcStylusTap) - { - Media = iLcStylusTap->TextL(EAknIndicatorUSBMemConnected, iTextType); - STIF_LOG1( "TextL: %S no checked", Media ); - //STIF_LOG1( "CheckTextResult err: %d", CheckTextResult(EAknIndicatorUSBMemConnected, Media) ); - } - } - else if( !aTestSubOption.Compare(_L( "USBMEM_loc" )) ) - { - GetPluginImplementation(EAknIndicatorUSBMemConnected); - if(iLcStylusTap) - { - Media = iLcStylusTap->TextL(EAknIndicatorUSBMemConnected, iTextType); - STIF_LOG1( "CheckTextResult err: %d", CheckTextResult(EAknIndicatorUSBMemConnected, Media) ); - STIF_LOG1( "TextL: %S, OK", Media ); - } - } - else - User::LeaveIfError(KErrNotFound); - - DestroyImplementation(); - - aTestResult = ETestCasePassed; - - STIF_LOG("<>CLcStylusTapTest::CallHandleIndicatorTapL"); - - if( !aTestSubOption.Compare(_L( "BT" )) ) - { - GetPluginImplementation(EAknIndicatorBluetoothModuleOnVisible); - if(iLcStylusTap) - { - iLcStylusTap->HandleIndicatorTapL(EAknIndicatorBluetoothModuleOnVisible); - STIF_LOG("HandleIndicatorTapL OK"); - } - } - else if( !aTestSubOption.Compare(_L( "USB" )) ) - { - GetPluginImplementation(EAknIndicatorUSBConnection); - if(iLcStylusTap) - { - iLcStylusTap->HandleIndicatorTapL(EAknIndicatorUSBConnection); - STIF_LOG("HandleIndicatorTapL OK"); - } - } - else if( !aTestSubOption.Compare(_L( "USBMEM" )) ) - { - GetPluginImplementation(EAknIndicatorUSBMemConnected); - if(iLcStylusTap) - { - iLcStylusTap->HandleIndicatorTapL(EAknIndicatorUSBMemConnected); - STIF_LOG("HandleIndicatorTapL OK"); - } - } - else if( !aTestSubOption.Compare(_L( "IRDA" )) ) - { - GetPluginImplementation(EAknIndicatorIrActive); - if(iLcStylusTap) - { - iLcStylusTap->HandleIndicatorTapL(EAknIndicatorIrActive); - STIF_LOG("HandleIndicatorTapL OK"); - } - } - else - User::LeaveIfError(KErrNotFound); - - DestroyImplementation(); - - aTestResult = ETestCasePassed; - - STIF_LOG(">>CLcStylusTapTest::CallHandleIndicatorTapL"); - } - -// Other operaton functions -// ----------------------------------------------------------------------------- -// CLcStylusTapTest::GetPluginImplementation -// returns CLcStylusTap pointer -// ----------------------------------------------------------------------------- -// -TBool CLcStylusTapTest::GetPluginImplementation(TInt aValue) - { - STIF_LOG( ">>CLcStylusTapTest::GetPluginImplementation" ); - - - const TUid uidInterfacetobepop = TUid::Uid(KAknIndicatorPluginInterfaceUid); - TRAPD(err, REComSession::ListImplementationsL(uidInterfacetobepop, iImplementations)); - STIF_LOG1( "REComSession::ListImplementationsL err: %d", err ); - if(err != KErrNone) - User::LeaveIfError(err); - - delete iLcStylusTap; - iLcStylusTap = NULL; - //HBufC* Media = NULL; - - TUid btimpluid = {KImplUIDBTIndicatorsPlugin}; - TUid usbimpluid = {KImplUIDUSBIndicatorsPlugin}; - TUid irimpluid = {KImplUIDIRIndicatorsPlugin}; - TUid usbMemImp = {0x20026FC4};//usb_mem - - switch (aValue) - { - case EAknIndicatorBluetooth://12 - case EAknIndicatorBluetoothVisible: - case EAknIndicatorBluetoothModuleOn: - case EAknIndicatorBluetoothModuleOnVisible://55 - iLcStylusTap = REINTERPRET_CAST(CLcStylusTap*, REComSession::CreateImplementationL(btimpluid, iDtor_Key) ); - break; - case EAknIndicatorUSBConnection: //28 - iLcStylusTap = REINTERPRET_CAST(CLcStylusTap*, REComSession::CreateImplementationL(usbimpluid, iDtor_Key) ); - break; - case EAknIndicatorIrActive: - iLcStylusTap = REINTERPRET_CAST(CLcStylusTap*, REComSession::CreateImplementationL(irimpluid, iDtor_Key) ); - break; - case EAknIndicatorUSBMemConnected: - case EAknIndicatorUSBMemActive: - iLcStylusTap = REINTERPRET_CAST(CLcStylusTap*, REComSession::CreateImplementationL(usbMemImp, iDtor_Key) ); - break; - default: - STIF_LOG( "GetPluginImplementation ERROR!" ); - User::LeaveIfError(KErrNotFound); - break; - } - - STIF_LOG1( "iLcStylusTap: %d", iLcStylusTap ? 1 : 0 ); - - return ETrue; - } - - -// ----------------------------------------------------------------------------- -// CLcStylusTapTest::CheckTextResult -// ------------------------------------------- -// -TInt CLcStylusTapTest::CheckTextResult(TInt aValue, HBufC* &aMedia) - { - TInt err = KErrNone; - - if(!aMedia) - { - User::Leave(KErrNotFound); - } - - switch(aValue) - { - case EAknIndicatorBluetooth://12 - case EAknIndicatorBluetoothVisible: - case EAknIndicatorBluetoothModuleOn: - case EAknIndicatorBluetoothModuleOnVisible://55 - if(aMedia->Compare(KBlueTooth())!= 0 || iTextType != CAknIndicatorPlugin::EAknIndicatorPluginLinkText) - err = KErrNotFound; - break; - case EAknIndicatorUSBConnection: - if(aMedia->Compare(KUSB())!= 0 || iTextType != CAknIndicatorPlugin::EAknIndicatorPluginLinkText) - err = KErrNotFound; - break; - case EAknIndicatorIrActive: - if(aMedia->Compare(KIRDA())!= 0 || iTextType != CAknIndicatorPlugin::EAknIndicatorPluginLinkText) - err = KErrNotFound; - break; - default: - err = KErrNotFound; - break; - } - - if(err == KErrNotFound) - { - delete aMedia; - aMedia = NULL; - User::LeaveIfError(KErrNotFound); // Did not match that should - } - - STIF_LOG("CallHandleIndicatorTapL::CompareMedia OK"); - - return err; - } -// ----------------------------------------------------------------------------- -// CLcStylusTapTest::DestroyImplementation -// destroy plugin implementation -// ------------------------------------------- -// -void CLcStylusTapTest::DestroyImplementation() - { - STIF_LOG( ">>CLcStylusTapTest::DestroyImplementation" ); - - if(iLcStylusTap) - { - delete iLcStylusTap; - iLcStylusTap = NULL; - } - - iImplementations.ResetAndDestroy(); - iImplementations.Close(); - - REComSession::DestroyedImplementation(iDtor_Key); - - STIF_LOG("< -#include -#include -// EXTERNAL DATA STRUCTURES - -// EXTERNAL FUNCTION PROTOTYPES - -// ================= OTHER EXPORTED FUNCTIONS ================================= - -/* -------------------------------------------------------------------------------- - - Class: - - - Method: E32Main - - Description: - - Parameters: None - - Return Values: TInt: Symbian error code - - Errors/Exceptions: None - - Status: Draft - -------------------------------------------------------------------------------- -*/ -GLDEF_C TInt E32Main() - { - _LIT( KProcessMsgStart, "New process starting" ); - RDebug::Print( KProcessMsgStart ); - - - // This starts a new session that get capabilites that is used in - // LcStylusTapTest_exe.mmp file. - TInt r = StartSession(); - - _LIT( KProcessMsgEnd, "New process ends" ); - RDebug::Print( KProcessMsgEnd ); - - return r; - - } - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexreceiveservices/bip/src/BIPController.cpp --- a/localconnectivityservice/obexreceiveservices/bip/src/BIPController.cpp Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/obexreceiveservices/bip/src/BIPController.cpp Fri May 14 16:44:53 2010 +0300 @@ -32,7 +32,7 @@ #include #include #include -#include // provides interface for quering system paths +#include #include #include #include @@ -635,21 +635,14 @@ iDrive = EDriveZ; // Intialize iDrive to Z TInt filesize = iBTObject->Length(); - TFileName mmcRoot = PathInfo::MemoryCardRootPath(); // e.g. "E:\\" - TInt mmcDrive = KDefaultDrive; // External memory card TInt imsDrive = KDefaultDrive; // Internal mass storage - if ( mmcRoot == _L("E:\\")) - { - mmcDrive = EDriveE; - imsDrive = EDriveF; - } - else if ( mmcRoot == _L("F:\\") ) - { - mmcDrive = EDriveF; - imsDrive = EDriveE; - } + User::LeaveIfError(DriveInfo::GetDefaultDrive(DriveInfo::EDefaultMassStorage, imsDrive)); + User::LeaveIfError(DriveInfo::GetDefaultDrive(DriveInfo::EDefaultRemovableMassStorage, mmcDrive)); + + TRACE_INFO( (_L( "[oppreceiveservice] CheckCapacityL imsDrive=%d; mmcDrive=%d\t" ),imsDrive, mmcDrive ) ); + TVolumeInfo volumeInfo; TInt err = iFs.Volume(volumeInfo, imsDrive); diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexreceiveservices/opp/src/oppcontroller.cpp --- a/localconnectivityservice/obexreceiveservices/opp/src/oppcontroller.cpp Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/obexreceiveservices/opp/src/oppcontroller.cpp Fri May 14 16:44:53 2010 +0300 @@ -31,7 +31,7 @@ #include #include #include -#include // provides interface for quering system paths +#include #include #include @@ -570,23 +570,15 @@ RFs rfs ; User::LeaveIfError(rfs.Connect()); - - TFileName mmcRoot = PathInfo::MemoryCardRootPath(); // e.g. "E:\\" - + TInt mmcDrive = KDefaultDrive; // External memroy card - TInt imsDrive = KDefaultDrive; // Internal mass storage + TInt imsDrive = KDefaultDrive; // Internal mass storage + + User::LeaveIfError(DriveInfo::GetDefaultDrive(DriveInfo::EDefaultMassStorage, imsDrive)); + User::LeaveIfError(DriveInfo::GetDefaultDrive(DriveInfo::EDefaultRemovableMassStorage, mmcDrive)); - if ( mmcRoot == _L("E:\\")) - { - mmcDrive = EDriveE; - imsDrive = EDriveF; - } - else if ( mmcRoot == _L("F:\\") ) - { - mmcDrive = EDriveF; - imsDrive = EDriveE; - } - + TRACE_INFO( (_L( "[oppreceiveservice] CheckCapacityL imsDrive=%d; mmcDrive=%d\t" ),imsDrive, mmcDrive ) ); + TVolumeInfo volumeInfo; TInt err = rfs.Volume(volumeInfo, imsDrive); @@ -595,7 +587,7 @@ if ( !err ) { // Check capacity on Internal mass storage - TRACE_INFO( (_L( "[oppreceiveservice] CheckCapacityL Internal mass storage E\t" )) ); + TRACE_INFO( (_L( "[oppreceiveservice] CheckCapacityL Internal mass storage\t" )) ); if ( !SysUtil::DiskSpaceBelowCriticalLevelL( &rfs, filesize, imsDrive ) ) { iDrive = imsDrive; @@ -607,7 +599,7 @@ if ( !err ) { // Check capacity on Internal mass storage - TRACE_INFO( (_L( "[oppreceiveservice] CheckCapacityL Checking memory card F\t" )) ); + TRACE_INFO( (_L( "[oppreceiveservice] CheckCapacityL Checking memory card\t" )) ); if ( !SysUtil::DiskSpaceBelowCriticalLevelL( &rfs, filesize, mmcDrive ) ) { iDrive = mmcDrive; diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/group/bld.inf --- a/localconnectivityservice/obexsendservices/group/bld.inf Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/obexsendservices/group/bld.inf Fri May 14 16:44:53 2010 +0300 @@ -25,14 +25,10 @@ PRJ_EXPORTS ../obexservicesendutils/inc/BTServiceAPI.h |../../inc/btserviceapi.h ../obexservicesendutils/inc/BTServiceParameterList.h |../../inc/BTServiceParameterList.h -../rom/obexservicebtsend.iby CORE_MW_LAYER_IBY_EXPORT_PATH(obexservicebtsend.iby) -../rom/obexserviceirsend.iby CORE_MW_LAYER_IBY_EXPORT_PATH(obexserviceirsend.iby) ../rom/obexservicesendutils.iby CORE_MW_LAYER_IBY_EXPORT_PATH(obexservicesendutils.iby) PRJ_MMPFILES ../group/sendutils.mmp -../group/obexservicebtsend.mmp -../group/obexserviceirsend.mmp PRJ_TESTMMPFILES diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/group/obexservicebtsend.mmp --- a/localconnectivityservice/obexsendservices/group/obexservicebtsend.mmp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,62 +0,0 @@ -/* -* Copyright (c) 2002 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: ?Description -* -*/ - -#include -#include "../obexservicebtsend/inc/BTSendingServiceUIDS.hrh" - -#include - -TARGET obexservicebtsend.dll -TARGETTYPE PLUGIN -UID 0x10009D8D KBTSendingServiceDllUid - -CAPABILITY CAP_ECOM_PLUGIN -VENDORID VID_DEFAULT - - -SOURCEPATH ../obexservicebtsend/src -SOURCE BTSendingService.cpp -SOURCE BTSSProvider.cpp -SOURCE btsssendlisthandler.cpp -// Plugin resources are placed in z:/system/libs/plugins -// -SOURCEPATH ../obexservicebtsend/data -START RESOURCE 101F86A2.rss -TARGET obexservicebtsend.rsc -END - -SOURCEPATH ../obexservicebtsend/data -START RESOURCE BtSSMenu.rss -TARGETPATH RESOURCE_FILES_DIR -HEADER -LANGUAGE_IDS -END - -USERINCLUDE ../obexservicebtsend/inc -SYSTEMINCLUDE ../../inc ../../../inc /epoc32/include/ecom -MW_LAYER_SYSTEMINCLUDE - -LIBRARY euser.lib // Base library -LIBRARY servicehandler.lib // Application InterWorking -LIBRARY obexservicesendutils.lib // Tools for bt sending -LIBRARY btfeatures.lib - -DEBUGLIBRARY flogger.lib // File logging services - -// End of File - - diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/group/obexserviceirsend.mmp --- a/localconnectivityservice/obexsendservices/group/obexserviceirsend.mmp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,66 +0,0 @@ -/* -* Copyright (c) 2002 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: ?Description -* -*/ - -#include -#include "../obexserviceirsend/inc/IrSendingServiceUIDS.hrh" - -#include - -TARGET obexserviceirsend.dll -TARGETTYPE PLUGIN -UID 0x10009d8d KIRSendingServiceDllUid - -CAPABILITY CAP_ECOM_PLUGIN -VENDORID VID_DEFAULT - - -SOURCEPATH ../obexserviceirsend/src -SOURCE IRClient.cpp -SOURCE IRSendingService.cpp -SOURCE IRSSProvider.cpp - -// Plugin resources are placed in z:/system/libs/plugins -// -SOURCEPATH ../obexserviceirsend/data -START RESOURCE 001F86A2.rss -#ifdef SYMBIAN_SECURE_ECOM -TARGET obexserviceirsend.rsc -#endif -END - -SOURCEPATH ../obexserviceirsend/data -START RESOURCE irssmenu.rss -TARGETPATH RESOURCE_FILES_DIR -HEADER -LANGUAGE_IDS -END - - -USERINCLUDE ../obexserviceirsend/inc -SYSTEMINCLUDE ../../inc ../../../inc /epoc32/include/ecom -MW_LAYER_SYSTEMINCLUDE - -LIBRARY euser.lib // Base library -LIBRARY servicehandler.lib // Application InterWorking -LIBRARY obexutils.lib // Tools for bt sending -LIBRARY irobex.lib -LIBRARY irda.lib -LIBRARY efsrv.lib -LIBRARY featmgr.lib -DEBUGLIBRARY flogger.lib // File logging services - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/group/sendutils.mmp --- a/localconnectivityservice/obexsendservices/group/sendutils.mmp Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/obexsendservices/group/sendutils.mmp Fri May 14 16:44:53 2010 +0300 @@ -49,6 +49,8 @@ USERINCLUDE ../obexservicesendutils/inc SYSTEMINCLUDE ../../inc ../../../inc /epoc32/include/libc +SYSTEMINCLUDE /epoc32/include/mw/hb/hbcore +SYSTEMINCLUDE /epoc32/include/mw/hb/hbwidgets MW_LAYER_SYSTEMINCLUDE LIBRARY apgrfx.lib // App Arch Session @@ -72,6 +74,8 @@ LIBRARY caf.lib // DRM common LIBRARY xmlframework.lib // XML Framework LIBRARY featmgr.lib // Inquire supported static feature +LIBRARY HbCore.lib +LIBRARY HbWidgets.lib DEBUGLIBRARY flogger.lib // File logging services diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexhighway/inc/btsendingservicedebug.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/localconnectivityservice/obexsendservices/obexhighway/inc/btsendingservicedebug.h Fri May 14 16:44:53 2010 +0300 @@ -0,0 +1,81 @@ +/* +* Copyright (c) 2002 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: This file defines logging macros for BTSS. +* +*/ + + +#ifndef BT_SENDING_SERVICE_DEBUG_H +#define BT_SENDING_SERVICE_DEBUG_H + + +#ifdef _DEBUG +// =========================================================================== +#ifdef __WINS__ // File logging for WINS +// =========================================================================== +#include +#include +#include + +_LIT(KLogFile,"btss.log"); +_LIT(KLogDirFullName,"c:\\logs\\"); +_LIT(KLogDir,"btss"); + +#define FLOG(a) { FPrint(a); } +#define FTRACE(a) { a; } + +// Declare the FPrint function +// +inline void FPrint(const TRefByValue aFmt, ...) + { + VA_LIST list; + VA_START(list,aFmt); + RFileLogger::WriteFormat(KLogDir, KLogFile, EFileLoggingModeAppend, aFmt, list); + } + +// =========================================================================== +#else // RDebug logging for target HW +// =========================================================================== +#include + +#define FLOG(a) { RDebug::Print(a); } +#define FTRACE(a) { a; } + +// Declare the FPrint function +// +inline void FPrint(const TRefByValue aFmt, ...) + { + VA_LIST list; + VA_START(list,aFmt); + TInt tmpInt = VA_ARG(list, TInt); + TInt tmpInt2 = VA_ARG(list, TInt); + TInt tmpInt3 = VA_ARG(list, TInt); + VA_END(list); + RDebug::Print(aFmt, tmpInt, tmpInt2, tmpInt3); + } + +#endif //__WINS__ + +// =========================================================================== +#else // // No loggings --> Reduced binary size +// =========================================================================== +#define FLOG(a) +#define FTRACE(a) + +#endif // _DEBUG + + +#endif // BT_SENDING_SERVICE_DEBUG_H + +// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexhighway/inc/btsendserviceinterface.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/localconnectivityservice/obexsendservices/obexhighway/inc/btsendserviceinterface.h Fri May 14 16:44:53 2010 +0300 @@ -0,0 +1,44 @@ +/* +* Copyright (c) 2010 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: ?Description +* +*/ + + +#ifndef BTSENDSERVICEINTERFACE_H +#define BTSENDSERVICEINTERFACE_H + +#include + +class BtSendManager; + +class BTSendServiceInterface : public XQServiceProvider +{ + Q_OBJECT + +public: + BTSendServiceInterface( QObject *parent = 0); + inline ~BTSendServiceInterface(); + +public slots: + void send(QVariant data); + + +}; + +inline BTSendServiceInterface::~BTSendServiceInterface() + { + } + +#endif // BTSENDSERVICEINTERFACE_H diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexhighway/inc/btsendserviceprovider.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/localconnectivityservice/obexsendservices/obexhighway/inc/btsendserviceprovider.h Fri May 14 16:44:53 2010 +0300 @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2009 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: + * class to manage differnt messaging views. + * + */ + +#ifndef BTSENDSERVICEPROVIDER_H +#define BTSENDSERVICEPROVIDER_H + +#include +#include +#include + +class CBTServiceAPI; +class CBTSSSendListHandler; + + +class CBtSendServiceProvider: public CBase + { +public: + /** + * constructor + */ + static CBtSendServiceProvider* NewL(); + + /** + * Destructor. + */ + ~CBtSendServiceProvider(); + + + int send(const QList &arguments); +private: + CBtSendServiceProvider(); + void ConstructL(); + +public: + CBTSSSendListHandler* iConverter; + CBTServiceAPI* iBTSendingService; + }; + +#endif /* BTSENDSERVICEPROVIDER_H */ diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexhighway/inc/btsssendlisthandler.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/localconnectivityservice/obexsendservices/obexhighway/inc/btsssendlisthandler.h Fri May 14 16:44:53 2010 +0300 @@ -0,0 +1,146 @@ +/* +* Copyright (c) 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: Converter class for converting AIW paramerer list to +* bt send parameter list +* +*/ + + +#ifndef BTSSSENDLISTHANDLER_H +#define BTSSSENDLISTHANDLER_H + +#include +#include +#include +#include +#include +#include +#include "BTSendingServiceDebug.h" + + +class CBTServiceParameterList; + +/** + * BTSSend list handler + * Converts AIW list to bt sending object list + * + * @since S60 v3.2 + */ +class CBTSSSendListHandler : public CActive + { + +public: + + static CBTSSSendListHandler* NewL(); + static CBTSSSendListHandler* NewLC(); + + /** + * Destructor. + */ + virtual ~CBTSSSendListHandler(); + + /** + * ConvertList + * + * @since S60 v3.2 + * @param aOutParamList AIW parameter list + * @param aList bt sending parameter list + * @return error code + */ + TInt ConvertList(const QList *arguments,CBTServiceParameterList* aList ); + + + +// from base class CActive + + /** + * From CActive. + * RunL + * + * @since S60 v3.2 + */ + void RunL(); + + /** + * From CActive. + * DoCancel + * + * @since S60 v3.2 + */ + inline void DoCancel(); + + +private: + CBTSSSendListHandler(); + + void ConstructL(); + + /** + * Add object + * + * @since S60 v3.2 + */ + void AddObject(); + + /** + * Add object + * + * @since S60 v3.2 + */ + void DoAddObjectL(); + +private: // data + + /** + * BT sending parameter list + * Not own. + */ + CBTServiceParameterList* iList; + + /** + * AIW parameter list + * Not own. + */ +// const CAiwGenericParamList* iOutParamList; + + const QList *mArguments; + + /** + * List index + */ + TInt iListIndex; + + /** + * Sync waiter object + */ + CActiveSchedulerWait iSyncWaiter; + }; + + +// --------------------------------------------------------------------------- +// From class CActive. +// DoCancel() +// --------------------------------------------------------------------------- +// +inline void CBTSSSendListHandler::DoCancel() + { + FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoCancel()")); + if ( iSyncWaiter.IsStarted() ) + { + iSyncWaiter.AsyncStop(); + } + FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoCancel() done")); + } + +#endif // BTSSSENDLISTHANDLER_H diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexhighway/obexhighway.pro --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/localconnectivityservice/obexsendservices/obexhighway/obexhighway.pro Fri May 14 16:44:53 2010 +0300 @@ -0,0 +1,55 @@ +# +# Copyright (c) 2009 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: +# +TEMPLATE = app +TARGET = obexhighway +CONFIG += hb \ + service + +MOC_DIR = moc +OBJECTS_DIR = obj + +HEADERS += inc/btsendserviceinterface.h \ + inc/btsssendlisthandler.h \ + inc/btsendingservicedebug.h \ + inc/btsendserviceprovider.h + +SOURCES += src/main.cpp \ + src/btsendserviceinterface.cpp \ + src/btsssendlisthandler.cpp \ + src/btsendserviceprovider.cpp + + +INCLUDEPATH += . ../../inc + +SERVICE.FILE = xml/obexhighway_conf.xml +SERVICE.OPTIONS = embeddable \ + hidden + +LIBS += -lhbcore \ + -lxqservice \ + -lxqserviceutil \ + -lobexservicesendutils \ + -lbtfeatures \ + -lflogger \ + -lxqutils + +symbian { + TARGET.UID3 = 0x2002EA5A + TARGET.CAPABILITY = All -TCB + } +BLD_INF_RULES.prj_exports += \ + "$${LITERAL_HASH}include " \ + "./rom/obexhighway.iby CORE_MW_LAYER_IBY_EXPORT_PATH(obexhighway.iby)" diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexhighway/rom/obexhighway.iby --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/localconnectivityservice/obexsendservices/obexhighway/rom/obexhighway.iby Fri May 14 16:44:53 2010 +0300 @@ -0,0 +1,23 @@ +/* +* Copyright (c) 2009 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: +* +*/ +#ifndef __OBEXHIGHWAY_IBY__ +#define __OBEXHIGHWAY_IBY__ + +file=ABI_DIR\UREL\obexhighway.exe SHARED_LIB_DIR\obexhighway.exe +data=DATAZ_\resource\apps\obexhighway.rsc resource\apps\obexhighway.rsc +data=DATAZ_\private\10003a3f\import\apps\obexhighway_reg.rsc private\10003a3f\import\apps\obexhighway_reg.rsc +#endif \ No newline at end of file diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexhighway/src/btsendserviceinterface.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/localconnectivityservice/obexsendservices/obexhighway/src/btsendserviceinterface.cpp Fri May 14 16:44:53 2010 +0300 @@ -0,0 +1,47 @@ +/* +* Copyright (c) 2010 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: ?Description +* +*/ + + +#include "btsendserviceinterface.h" +#include "btsendserviceprovider.h" + +BTSendServiceInterface::BTSendServiceInterface(QObject* parent) +: XQServiceProvider("com.nokia.services.btsendservice.imessage.send",parent) + { + publishAll(); + } + + +void BTSendServiceInterface::send(QVariant data) + { + QList arguments; + + if(data.type()==QVariant::String) + { + arguments.append(data); + } + else + { + arguments.append(data.toList()); + } + CBtSendServiceProvider *btSendServiceProvider = NULL; + TRAPD(err,btSendServiceProvider = CBtSendServiceProvider::NewL()); + if(err) + return; + btSendServiceProvider->send(arguments); + delete btSendServiceProvider; + } diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexhighway/src/btsendserviceprovider.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/localconnectivityservice/obexsendservices/obexhighway/src/btsendserviceprovider.cpp Fri May 14 16:44:53 2010 +0300 @@ -0,0 +1,90 @@ +/* + * Copyright (c) 2009 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 +#include "BTSSSendListHandler.h" +#include "btsendserviceprovider.h" +#include // For Enterprise security settings +#include // For Enterprise security notifier + + +CBtSendServiceProvider* CBtSendServiceProvider::NewL() + { + CBtSendServiceProvider* self = new( ELeave ) CBtSendServiceProvider(); + CleanupStack::PushL( self ); + self->ConstructL(); + CleanupStack::Pop(); + return self; + } + +void CBtSendServiceProvider::ConstructL() + { + if(BluetoothFeatures::EnterpriseEnablementL() != BluetoothFeatures::EEnabled) + { + RNotifier notifier; + User::LeaveIfError(notifier.Connect()); + CleanupClosePushL(notifier); + User::LeaveIfError(notifier.StartNotifier(KBTEnterpriseItSecurityInfoNotifierUid, KNullDesC8)); + CleanupStack::PopAndDestroy(¬ifier); + + //@TODO in old code we don't continue further what needs to be done here + } + iBTSendingService = CBTServiceAPI::NewL(); + iConverter = CBTSSSendListHandler::NewL(); + } + +CBtSendServiceProvider::CBtSendServiceProvider() + { + + } + + +CBtSendServiceProvider::~CBtSendServiceProvider() + { + if(iConverter) + { + delete iConverter; + iConverter= NULL; + } + if(iBTSendingService) + { + delete iBTSendingService; + iBTSendingService = NULL; + } + } + + +int CBtSendServiceProvider::send(const QList &arguments) + { + TInt error = KErrNone; + + CBTServiceParameterList* parameterList = NULL; + TRAP(error,parameterList= CBTServiceParameterList::NewL()); + if (error) + return error; + iConverter->ConvertList( &arguments, parameterList); + + delete iConverter; + iConverter = NULL; + + TRAP(error,iBTSendingService->StartSynchronousServiceL( EBTSendingService, parameterList )); + if(error) + return error; + return error; + } diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexhighway/src/btsssendlisthandler.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/localconnectivityservice/obexsendservices/obexhighway/src/btsssendlisthandler.cpp Fri May 14 16:44:53 2010 +0300 @@ -0,0 +1,195 @@ +/* +* Copyright (c) 2009 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: Converter class implementation for converting AIW paramerer +* list to bt send parameter list +* +*/ + + +#include + +#include "BTSSSendListHandler.h" +#include "btserviceparameterlist.h" + +#include + + + +// ======== MEMBER FUNCTIONS ======== + +// --------------------------------------------------------------------------- +// CBTSSSendListHandler() +// --------------------------------------------------------------------------- +// +CBTSSSendListHandler::CBTSSSendListHandler(): CActive( EPriorityNormal ) + { + CActiveScheduler::Add(this); + } + +// --------------------------------------------------------------------------- +// ConstructL() +// --------------------------------------------------------------------------- +// +void CBTSSSendListHandler::ConstructL() + { + } + + +// --------------------------------------------------------------------------- +// NewL() +// --------------------------------------------------------------------------- +// +CBTSSSendListHandler* CBTSSSendListHandler::NewL() + { + CBTSSSendListHandler* self = CBTSSSendListHandler::NewLC(); + CleanupStack::Pop( self ); + return self; + } + + +// --------------------------------------------------------------------------- +// NewLC() +// --------------------------------------------------------------------------- +// +CBTSSSendListHandler* CBTSSSendListHandler::NewLC() + { + CBTSSSendListHandler* self = new( ELeave ) CBTSSSendListHandler(); + CleanupStack::PushL( self ); + self->ConstructL(); + return self; + } + + +// --------------------------------------------------------------------------- +// CBTSSSendListHandler +// --------------------------------------------------------------------------- +// +CBTSSSendListHandler::~CBTSSSendListHandler() + { + FLOG(_L("[BTSS]\t CBTSSSendListHandler::Destructor")); + Cancel(); + } + +// --------------------------------------------------------------------------- +// ConvertList() +// --------------------------------------------------------------------------- +// +TInt CBTSSSendListHandler::ConvertList( const QList *arguments, + CBTServiceParameterList* aList) + { + FLOG(_L("[BTSS]\t CBTSSSendListHandler::ConvertList")); + iListIndex = 0; + mArguments = arguments; + iList = aList; + iStatus = KRequestPending; + AddObject(); + SetActive(); + + iSyncWaiter.Start(); + FLOG(_L("[BTSS]\t CBTSSSendListHandler::ConvertList done")); + return iStatus.Int(); + } + +// --------------------------------------------------------------------------- +// AddObject() +// --------------------------------------------------------------------------- +// +void CBTSSSendListHandler::AddObject() + { + FLOG(_L("[BTSS]\t CBTSSSendListHandler::AddObjectL()")); + TRAPD(error, DoAddObjectL()); + if (error != KErrNone ) + { + //Complete request + TRequestStatus* status = &iStatus; + User::RequestComplete(status, error); + } + FLOG(_L("[BTSS]\t CBTSSSendListHandler::AddObjectL() Done")); + } + +// --------------------------------------------------------------------------- +// From class CActive. +// RunL() +// --------------------------------------------------------------------------- +// +void CBTSSSendListHandler::DoAddObjectL() + { + FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoAddObjectL()")); + + // const TAiwGenericParam* param=&(*iOutParamList)[iListIndex]; + + QString string = mArguments->at(iListIndex).toString(); + + /* if ( param->SemanticId() != EGenericParamFile ) + { + FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoAddObjectL() wrong semantic Id: Leave")); + } + // Try to add file as an image + // + if( param->Value().TypeId()== EVariantTypeFileHandle) + { + TRAPD( retVal, iList->AddImageL( param->Value().AsFileHandle() )); + FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoAddObjectL AddImage")); + if( retVal != KErrNone ) + { + // File was not an image. We can not use BIP + // so add rest of the files as objects + // + FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoAddObjectL AddImage filed try object")); + iList->AddObjectL( param->Value().AsFileHandle() ); + } + } + else */ + // { + // TRAPD( retVal, iList->AddImageL( param->Value().AsDes() ) ); + HBufC* path = XQConversions::qStringToS60Desc(string); + TRAPD( retVal, iList->AddImageL(*path)); + if( retVal != KErrNone ) + { + // File was not an image. We can not use BIP + // so add rest of the files as objects + // + iList->AddObjectL( *path ); + } + // } + //Complete request + TRequestStatus* status = &iStatus; + User::RequestComplete(status, KErrNone); + + FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoAddObjectL() completed")); + } +// --------------------------------------------------------------------------- +// From class CActive. +// RunL() +// --------------------------------------------------------------------------- +// +void CBTSSSendListHandler::RunL() + { + FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoAddObjectL()")); + iListIndex++; + if ( mArguments->count() > iListIndex && iStatus.Int() == KErrNone ) + { + iStatus = KRequestPending; + AddObject(); + SetActive(); + } + else + { + if ( iSyncWaiter.IsStarted() ) + { + iSyncWaiter.AsyncStop(); + } + } + FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoAddObjectL() Done")); + } diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexhighway/src/main.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/localconnectivityservice/obexsendservices/obexhighway/src/main.cpp Fri May 14 16:44:53 2010 +0300 @@ -0,0 +1,28 @@ +/* +* Copyright (c) 2010 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: ?Description +* +*/ + + +#include +#include "btsendserviceinterface.h" + +int main(int argc, char **argv) + { + QCoreApplication app(argc, argv); + BTSendServiceInterface btSendSI; + return app.exec(); + } + diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexhighway/xml/obexhighway_conf.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/localconnectivityservice/obexsendservices/obexhighway/xml/obexhighway_conf.xml Fri May 14 16:44:53 2010 +0300 @@ -0,0 +1,12 @@ + + + com.nokia.services.btsendservice + No path + BT Send Service + + imessage.send + 1.0 + Send interface + Via Bluetooth + + \ No newline at end of file diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexservicebtsend/data/101F86A2.rss --- a/localconnectivityservice/obexsendservices/obexservicebtsend/data/101F86A2.rss Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,72 +0,0 @@ -/* -* Copyright (c) 2002 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 -#include "registryinfov2.rh" -#include -#include - -#include "BTSendingService.hrh" -#include "BTSendingServiceUIDS.hrh" - -RESOURCE REGISTRY_INFO theInfo - { - resource_format_version = RESOURCE_FORMAT_VERSION_2; - dll_uid = KBTSendingServiceDllUid; - interfaces = - { - INTERFACE_INFO - { - interface_uid = KAiwClassMenu; - implementations = - { - IMPLEMENTATION_INFO - { - implementation_uid = KBTSendingServiceMenuImplUid; - version_no = 1; - display_name = ""; - default_data = "*"; - opaque_data = KAiwCmdSendStr; - } - }; - }, - INTERFACE_INFO - { - interface_uid = KBTSendingServiceIfaceUid; - implementations = - { - IMPLEMENTATION_INFO - { - implementation_uid = KBTSendingServiceBaseImplUid; - version_no = 1; - display_name = "Bluetooth Sending Service"; - default_data = "*"; - opaque_data = KAiwCmdSendStr; - } - }; - } - }; - } - - - -// End of file - - diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexservicebtsend/data/BtSSMenu.rss --- a/localconnectivityservice/obexsendservices/obexservicebtsend/data/BtSSMenu.rss Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,40 +0,0 @@ -/* -* Copyright (c) 2009 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 -#include "registryinfov2.rh" -#include -#include - -#include "BTSendingService.hrh" -#include "BTSendingServiceUIDS.hrh" - -RESOURCE MENU_PANE r_send_via_bt_menu - { - items= - { - MENU_ITEM - { - command = ESendBT; - txt = qtn_query_send_via_bt; - } - }; - } - - -// End of file - diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexservicebtsend/inc/BTSSProvider.h --- a/localconnectivityservice/obexsendservices/obexservicebtsend/inc/BTSSProvider.h Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,126 +0,0 @@ -/* -* Copyright (c) 2002 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: -* -*/ - - - -#ifndef BT_SENDING_SERVICE_PROVIDER_H -#define BT_SENDING_SERVICE_PROVIDER_H - -// INCLUDES -#include - -// FORWARD DECLARATIONS -class CBTServiceParameterList; -class CBTServiceAPI; -class CBTSSSendListHandler; - -// CLASS DECLARATION - -/** -* Provides BT sending services -* -*/ -class CBTSSProvider : public CAiwServiceIfMenu - { - public: // Constructors and destructor - - /** - * Two-phased constructor. - */ - static CBTSSProvider* NewL(); - - /** - * Destructor. - */ - virtual ~CBTSSProvider(); - - - public: // Functions from base classes - - /** - * From CAiwServiceIfBase Not used - * @since 2.6 - * @param aFrameworkCallback Not used - * @param aInterest Not used - * @return None - */ - virtual void InitialiseL( MAiwNotifyCallback& aFrameworkCallback, - const RCriteriaArray& aInterest ); - - /** - * From CAiwServiceIfBase Processes service command - * and starts bt sending - * @since 2.6 - * @param aCmdId Command id - * @param aInParamList Not used - * @param aOutParamList List of files - * @param aCmdOptions Not used - * @param aCallback Not used - * @return None - */ - virtual void HandleServiceCmdL( const TInt& aCmdId, - const CAiwGenericParamList& aInParamList, - CAiwGenericParamList& aOutParamList, - TUint aCmdOptions, - const MAiwNotifyCallback* aCallback ); - - /** - * From CAiwServiceIfBase Processes service command - * and starts bt sending - * @since 2.6 - * @param aCmdId Command id - * @param aInParamList Not used - * @param aOutParamList List of files - * @param aCmdOptions Not used - * @param aCallback Not used - * @return None - */ - virtual void HandleMenuCmdL(TInt aMenuCmdId, - const CAiwGenericParamList& aInParamList, - CAiwGenericParamList& aOutParamList, - TUint aCmdOptions, - const MAiwNotifyCallback* aCallback ); - - - - virtual void InitializeMenuPaneL( CAiwMenuPane& aMenuPane, - TInt aIndex, - TInt /* aCascadeId */, - const CAiwGenericParamList& aInParamList ); - - private: - - /** - * C++ default constructor. - */ - CBTSSProvider(); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL(); - - private: // Data - - CBTServiceAPI* iBTSendingService; - - CBTSSSendListHandler* iConverter; - }; - -#endif // BT_SENDING_SERVICE_PROVIDER_H - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexservicebtsend/inc/BTSSSendListHandler.h --- a/localconnectivityservice/obexsendservices/obexservicebtsend/inc/BTSSSendListHandler.h Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,124 +0,0 @@ -/* -* Copyright (c) 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: Converter class for converting AIW paramerer list to -* bt send parameter list -* -*/ - - -#ifndef BTSSSENDLISTHANDLER_H -#define BTSSSENDLISTHANDLER_H - -#include -#include -#include -#include - -class CBTServiceParameterList; - -/** - * BTSSend list handler - * Converts AIW list to bt sending object list - * - * @since S60 v3.2 - */ -class CBTSSSendListHandler : public CActive - { - -public: - - static CBTSSSendListHandler* NewL(); - static CBTSSSendListHandler* NewLC(); - - /** - * Destructor. - */ - virtual ~CBTSSSendListHandler(); - - /** - * ConvertList - * - * @since S60 v3.2 - * @param aOutParamList AIW parameter list - * @param aList bt sending parameter list - * @return error code - */ - TInt ConvertList(const CAiwGenericParamList* aOutParamList, CBTServiceParameterList* aList ); - - - -// from base class CActive - - /** - * From CActive. - * RunL - * - * @since S60 v3.2 - */ - void RunL(); - - /** - * From CActive. - * DoCancel - * - * @since S60 v3.2 - */ - void DoCancel(); - - -private: - CBTSSSendListHandler(); - - void ConstructL(); - - /** - * Add object - * - * @since S60 v3.2 - */ - void AddObject(); - - /** - * Add object - * - * @since S60 v3.2 - */ - void DoAddObjectL(); - -private: // data - - /** - * BT sending parameter list - * Not own. - */ - CBTServiceParameterList* iList; - - /** - * AIW parameter list - * Not own. - */ - const CAiwGenericParamList* iOutParamList; - - /** - * List index - */ - TInt iListIndex; - - /** - * Sync waiter object - */ - CActiveSchedulerWait iSyncWaiter; - }; - -#endif // BTSSSENDLISTHANDLER_H diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexservicebtsend/inc/BTSendingService.hrh --- a/localconnectivityservice/obexsendservices/obexservicebtsend/inc/BTSendingService.hrh Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,32 +0,0 @@ -/* -* Copyright (c) 2002 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: ?Description -* -*/ - - -#ifndef BT_SENDING_SERVICE_HRH -#define BT_SENDING_SERVICE_HRH - -enum -{ - ESendBT=0, - ESendIR -}; - -#endif - - - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexservicebtsend/inc/BTSendingServiceDebug.h --- a/localconnectivityservice/obexsendservices/obexservicebtsend/inc/BTSendingServiceDebug.h Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,81 +0,0 @@ -/* -* Copyright (c) 2002 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: This file defines logging macros for BTSS. -* -*/ - - -#ifndef BT_SENDING_SERVICE_DEBUG_H -#define BT_SENDING_SERVICE_DEBUG_H - - -#ifdef _DEBUG -// =========================================================================== -#ifdef __WINS__ // File logging for WINS -// =========================================================================== -#include -#include -#include - -_LIT(KLogFile,"btss.log"); -_LIT(KLogDirFullName,"c:\\logs\\"); -_LIT(KLogDir,"btss"); - -#define FLOG(a) { FPrint(a); } -#define FTRACE(a) { a; } - -// Declare the FPrint function -// -inline void FPrint(const TRefByValue aFmt, ...) - { - VA_LIST list; - VA_START(list,aFmt); - RFileLogger::WriteFormat(KLogDir, KLogFile, EFileLoggingModeAppend, aFmt, list); - } - -// =========================================================================== -#else // RDebug logging for target HW -// =========================================================================== -#include - -#define FLOG(a) { RDebug::Print(a); } -#define FTRACE(a) { a; } - -// Declare the FPrint function -// -inline void FPrint(const TRefByValue aFmt, ...) - { - VA_LIST list; - VA_START(list,aFmt); - TInt tmpInt = VA_ARG(list, TInt); - TInt tmpInt2 = VA_ARG(list, TInt); - TInt tmpInt3 = VA_ARG(list, TInt); - VA_END(list); - RDebug::Print(aFmt, tmpInt, tmpInt2, tmpInt3); - } - -#endif //__WINS__ - -// =========================================================================== -#else // // No loggings --> Reduced binary size -// =========================================================================== -#define FLOG(a) -#define FTRACE(a) - -#endif // _DEBUG - - -#endif // BT_SENDING_SERVICE_DEBUG_H - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexservicebtsend/inc/BTSendingServiceUIDS.hrh --- a/localconnectivityservice/obexsendservices/obexservicebtsend/inc/BTSendingServiceUIDS.hrh Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,31 +0,0 @@ -/* -* Copyright (c) 2002 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: ?Description -* -*/ - - -#ifndef BT_SENDING_SERVICE_UIDS_HRH -#define BT_SENDING_SERVICE_UIDS_HRH - -#define KBTSendingServiceDllUid 0x101F86A2 -#define KBTSendingServiceIfaceUid 0x101F8650 // KAiwClassBase -#define KBTSendingServiceBaseImplUid 0x101F86A3 -#define KBTSendingServiceMenuImplUid 0x20002777 - -#endif - - - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexservicebtsend/src/BTSSProvider.cpp --- a/localconnectivityservice/obexsendservices/obexservicebtsend/src/BTSSProvider.cpp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,208 +0,0 @@ -/* -* Copyright (c) 2002 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: ?Description -* -*/ - - -// INCLUDE FILES - -#include -#include -#include -#include -#include -#include -#include // For Enterprise security settings -#include // For Enterprise security notifier -#include -#include - -#include "BTSSProvider.h" -#include "BTSendingServiceDebug.h" -#include "BTSSSendListHandler.h" - -_LIT( KBTSendingServiceFileDrive, "z:"); -_LIT( KBTSSResFileName,"BtSSMenu.rsc"); - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CBTSSProvider::CBTSSProvider -// C++ default constructor can NOT contain any code, that -// might leave. -// ----------------------------------------------------------------------------- -// -CBTSSProvider::CBTSSProvider(): iConverter(NULL) - { - } - -// ----------------------------------------------------------------------------- -// CBTSSProvider::ConstructL -// Symbian 2nd phase constructor can leave. -// ----------------------------------------------------------------------------- -// -void CBTSSProvider::ConstructL() - { - FLOG(_L("[BTSS]\t CBTSSProvider::ConstructL()")); - } - -// ----------------------------------------------------------------------------- -// CBTSSProvider::NewL -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -CBTSSProvider* CBTSSProvider::NewL() - { - CBTSSProvider* self = new( ELeave ) CBTSSProvider; - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop(); - return self; - } - -// ----------------------------------------------------------------------------- -// Destructor -// ----------------------------------------------------------------------------- -// -CBTSSProvider::~CBTSSProvider() - { - FLOG(_L("[BTSS]\t CBTSSProvider::destructor")); - - if( iBTSendingService ) - { - delete iBTSendingService; - } - - delete iConverter; - iConverter = NULL; - } - -// ----------------------------------------------------------------------------- -// CBTSSProvider::InitialiseL -// ----------------------------------------------------------------------------- -// -void CBTSSProvider::InitialiseL(MAiwNotifyCallback& /*aFrameworkCallback*/, - const RCriteriaArray& /*aInterest*/) - { - // Not needed. - } - -// ----------------------------------------------------------------------------- -// CBTSSProvider::HandleServiceCmdL -// ----------------------------------------------------------------------------- -// -void CBTSSProvider::HandleServiceCmdL(const TInt& aCmdId, - const CAiwGenericParamList& aInParamList, - CAiwGenericParamList& /*aOutParamList*/, - TUint /*aCmdOptions*/, - const MAiwNotifyCallback* aCallback ) - { - FLOG(_L("[BTSS]\t CBTSSProvider::HandleServiceCmdL()")); - - if ( &aInParamList == NULL || aInParamList.Count() <= 0 ) - { - FLOG(_L("[BTSS]\t CBTSSProvider::HandleServiceCmdL() aOutParamList check failed: Leave")); - User::Leave( KErrArgument ); - } - - if ( aCallback ) - { - FLOG(_L("[BTSS]\t CBTSSProvider::HandleServiceCmdL() aCallback exists: Leave")); - User::Leave( KErrNotSupported ); - } - - switch ( aCmdId ) - { - case KAiwCmdSend: - { - // Check features setting - if not completely enabled with enterprise settings then we are not allowed to send anything. - // Fail here at the first fence, otherwise there are a number of other areas that need to be considered. - if(BluetoothFeatures::EnterpriseEnablementL() != BluetoothFeatures::EEnabled) - { - RNotifier notifier; - User::LeaveIfError(notifier.Connect()); - CleanupClosePushL(notifier); - User::LeaveIfError(notifier.StartNotifier(KBTEnterpriseItSecurityInfoNotifierUid, KNullDesC8)); - CleanupStack::PopAndDestroy(¬ifier); - // Don't leave as we have already commuicated (through the security notifier) why we failed. - break; - } - - if ( !iBTSendingService ) - { - // Create the controller when needed - // - iBTSendingService = CBTServiceAPI::NewL(); - } - CBTServiceParameterList* parameterList = CBTServiceParameterList::NewLC(); - - iConverter = CBTSSSendListHandler::NewL(); - User::LeaveIfError(iConverter->ConvertList( &aInParamList, parameterList)); - - delete iConverter; - iConverter = NULL; - - // Start sending files. This function returns when all of the files are sent - // or some error has occured. - // - - CleanupStack::Pop(parameterList); - iBTSendingService->StartSynchronousServiceL( EBTSendingService, parameterList ); - - break; - } - default: - { - FLOG(_L("[BTSS]\t CBTSSProvider::HandleServiceCmdL() wrong command id: Leave")); - User::Leave( KErrNotSupported ); - break; - } - } - - FLOG(_L("[BTSS]\t CBTSSProvider::HandleServiceCmdL() completed")); - } - - - void CBTSSProvider::HandleMenuCmdL(TInt aMenuCmdId, - const CAiwGenericParamList& aInParamList, - CAiwGenericParamList& aOutParamList, - TUint aCmdOptions, - const MAiwNotifyCallback* aCallback ) - { - HandleServiceCmdL(aMenuCmdId,aInParamList, aOutParamList, aCmdOptions, aCallback); - } - - void CBTSSProvider::InitializeMenuPaneL( CAiwMenuPane& aMenuPane, - TInt aIndex, - TInt /* aCascadeId */, - const CAiwGenericParamList& /*aInParamList*/ ) - { - TFileName resourceFile; - TInt resId; - - resourceFile += KBTSendingServiceFileDrive; - resourceFile += KDC_RESOURCE_FILES_DIR; - resourceFile += KBTSSResFileName; - resId=R_SEND_VIA_BT_MENU; - - aMenuPane.AddMenuItemsL( - resourceFile, - resId, - KAiwCmdSend, - aIndex); - - } - -// End of file diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexservicebtsend/src/BTSendingService.cpp --- a/localconnectivityservice/obexsendservices/obexservicebtsend/src/BTSendingService.cpp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,57 +0,0 @@ -/* -* Copyright (c) 2002 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: Defines the DLL entry point and ECom initialization. -* and a panic function used in BTSS. -* -*/ - - -// INCLUDE FILES -#include "BTSSProvider.h" -#include "BTSendingServiceUIDS.hrh" -#include -#include - -// ============================= LOCAL FUNCTIONS =============================== -// - -// ----------------------------------------------------------------------------- -// ImplementationTable -// ECom init: Maps the interface UIDs to implementation factory functions. -// Returns: A table of implementation UIDs and their constructors. -// ----------------------------------------------------------------------------- -// -const TImplementationProxy ImplementationTable[] = - { - IMPLEMENTATION_PROXY_ENTRY(KBTSendingServiceMenuImplUid, CBTSSProvider::NewL), - IMPLEMENTATION_PROXY_ENTRY(KBTSendingServiceBaseImplUid, CBTSSProvider::NewL) - }; - -// ========================== OTHER EXPORTED FUNCTIONS ========================= - - - -// ----------------------------------------------------------------------------- -// ImplementationGroupProxy -// ECom init: Exported proxy for instantiation method resolution. -// Returns: Pointer to the proxy and number of implementations in it. -// ----------------------------------------------------------------------------- -// -EXPORT_C const TImplementationProxy* ImplementationGroupProxy( TInt& aTableCount ) - { - aTableCount = sizeof( ImplementationTable ) / sizeof( TImplementationProxy ); - return ImplementationTable; - } - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexservicebtsend/src/btsssendlisthandler.cpp --- a/localconnectivityservice/obexsendservices/obexservicebtsend/src/btsssendlisthandler.cpp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,204 +0,0 @@ -/* -* Copyright (c) 2009 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: Converter class implementation for converting AIW paramerer -* list to bt send parameter list -* -*/ - - -#include - -#include "BTSSSendListHandler.h" -#include "BTServiceParameterList.h" -#include "BTSendingServiceDebug.h" - - - -// ======== MEMBER FUNCTIONS ======== - -// --------------------------------------------------------------------------- -// CBTSSSendListHandler() -// --------------------------------------------------------------------------- -// -CBTSSSendListHandler::CBTSSSendListHandler(): CActive( EPriorityNormal ) - { - CActiveScheduler::Add(this); - } - -// --------------------------------------------------------------------------- -// ConstructL() -// --------------------------------------------------------------------------- -// -void CBTSSSendListHandler::ConstructL() - { - } - - -// --------------------------------------------------------------------------- -// NewL() -// --------------------------------------------------------------------------- -// -CBTSSSendListHandler* CBTSSSendListHandler::NewL() - { - CBTSSSendListHandler* self = CBTSSSendListHandler::NewLC(); - CleanupStack::Pop( self ); - return self; - } - - -// --------------------------------------------------------------------------- -// NewLC() -// --------------------------------------------------------------------------- -// -CBTSSSendListHandler* CBTSSSendListHandler::NewLC() - { - CBTSSSendListHandler* self = new( ELeave ) CBTSSSendListHandler(); - CleanupStack::PushL( self ); - self->ConstructL(); - return self; - } - - -// --------------------------------------------------------------------------- -// CBTSSSendListHandler -// --------------------------------------------------------------------------- -// -CBTSSSendListHandler::~CBTSSSendListHandler() - { - FLOG(_L("[BTSS]\t CBTSSSendListHandler::Destructor")); - Cancel(); - } - -// --------------------------------------------------------------------------- -// ConvertList() -// --------------------------------------------------------------------------- -// -TInt CBTSSSendListHandler::ConvertList( const CAiwGenericParamList* aOutParamList, - CBTServiceParameterList* aList) - { - FLOG(_L("[BTSS]\t CBTSSSendListHandler::ConvertList")); - iListIndex = 0; - iOutParamList = aOutParamList; - iList = aList; - iStatus = KRequestPending; - AddObject(); - SetActive(); - - iSyncWaiter.Start(); - FLOG(_L("[BTSS]\t CBTSSSendListHandler::ConvertList done")); - return iStatus.Int(); - } - -// --------------------------------------------------------------------------- -// AddObject() -// --------------------------------------------------------------------------- -// -void CBTSSSendListHandler::AddObject() - { - FLOG(_L("[BTSS]\t CBTSSSendListHandler::AddObjectL()")); - TRAPD(error, DoAddObjectL()); - if (error != KErrNone ) - { - //Complete request - TRequestStatus* status = &iStatus; - User::RequestComplete(status, error); - } - FLOG(_L("[BTSS]\t CBTSSSendListHandler::AddObjectL() Done")); - } - -// --------------------------------------------------------------------------- -// From class CActive. -// RunL() -// --------------------------------------------------------------------------- -// -void CBTSSSendListHandler::DoAddObjectL() - { - FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoAddObjectL()")); - - const TAiwGenericParam* param=&(*iOutParamList)[iListIndex]; - - if ( param->SemanticId() != EGenericParamFile ) - { - FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoAddObjectL() wrong semantic Id: Leave")); - } - // Try to add file as an image - // - if( param->Value().TypeId()== EVariantTypeFileHandle) - { - TRAPD( retVal, iList->AddImageL( param->Value().AsFileHandle() )); - FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoAddObjectL AddImage")); - if( retVal != KErrNone ) - { - // File was not an image. We can not use BIP - // so add rest of the files as objects - // - FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoAddObjectL AddImage filed try object")); - iList->AddObjectL( param->Value().AsFileHandle() ); - } - } - else - { - TRAPD( retVal, iList->AddImageL( param->Value().AsDes() ) ); - if( retVal != KErrNone ) - { - // File was not an image. We can not use BIP - // so add rest of the files as objects - // - iList->AddObjectL( param->Value().AsDes() ); - } - } - //Complete request - TRequestStatus* status = &iStatus; - User::RequestComplete(status, KErrNone); - - FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoAddObjectL() completed")); - } -// --------------------------------------------------------------------------- -// From class CActive. -// RunL() -// --------------------------------------------------------------------------- -// -void CBTSSSendListHandler::RunL() - { - FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoAddObjectL()")); - iListIndex++; - if ( iOutParamList->Count() > iListIndex && iStatus.Int() == KErrNone ) - { - iStatus = KRequestPending; - AddObject(); - SetActive(); - } - else - { - if ( iSyncWaiter.IsStarted() ) - { - iSyncWaiter.AsyncStop(); - } - } - FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoAddObjectL() Done")); - } -// --------------------------------------------------------------------------- -// From class CActive. -// DoCancel() -// --------------------------------------------------------------------------- -// -void CBTSSSendListHandler::DoCancel() - { - FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoCancel()")); - if ( iSyncWaiter.IsStarted() ) - { - iSyncWaiter.AsyncStop(); - } - FLOG(_L("[BTSS]\t CBTSSSendListHandler::DoCancel() done")); - } diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexserviceirsend/data/001F86A2.rss --- a/localconnectivityservice/obexsendservices/obexserviceirsend/data/001F86A2.rss Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,53 +0,0 @@ -/* -* Copyright (c) 2002 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 -#include "registryinfov2.rh" -#include "IrSendingServiceUIDS.hrh" -#include - -RESOURCE REGISTRY_INFO theInfo - { - resource_format_version = RESOURCE_FORMAT_VERSION_2; - dll_uid = KIRSendingServiceDllUid; - interfaces = - { - INTERFACE_INFO - { - interface_uid = KAiwClassMenu; - implementations = - { - IMPLEMENTATION_INFO - { - implementation_uid = KIRSendingServiceImplUid; - version_no = 1; - display_name = ""; - default_data = "*"; - opaque_data = KAiwCmdSendStr; - rom_only = 1; - } - }; - } - }; - } - -// End of file - - diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexserviceirsend/data/irssmenu.rss --- a/localconnectivityservice/obexsendservices/obexserviceirsend/data/irssmenu.rss Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,43 +0,0 @@ -/* -* Copyright (c) 2002 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 -#include "registryinfov2.rh" -#include "IRSendingService.hrh" -#include -#include - -RESOURCE MENU_PANE r_send_via_ir_menu - { - items= - { - MENU_ITEM - { - command = ESendIR; - txt = qtn_query_send_via_ir; - } - }; - } - - - -// End of file - - diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexserviceirsend/inc/IRClient.h --- a/localconnectivityservice/obexsendservices/obexserviceirsend/inc/IRClient.h Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,165 +0,0 @@ -/* -* Copyright (c) 2002 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: Obex client -* -*/ - - - -#ifndef IR_SERVICE_CLIENT_H -#define IR_SERVICE_CLIENT_H - -// INCLUDES - - -#include -#include -#include - - -// FORWARD DECLARATION - - -// CLASS DECLARATION - -// CLASS DECLARATION - -/** -* An active object managing the Obex client. -*/ -class CIRClient : public CActive, - MObexUtilsProgressObserver, - MObexUtilsDialogObserver - - { - public: // Constructors and destructor - - /** - * Two-phased constructor. - * @return None. - */ - static CIRClient* NewL(); - - /** - * Destructor. - */ - virtual ~CIRClient(); - - public: // New functions - - - /** - * Issues an Obex Put-request. - * @param aHeaderList The headers to be associated with the object. - * @param aFileName A filename of the Put Object. - * @return None. - */ - void PutObjectL( ); - - /** - * Closes Obex Client connection. - * @param None. - * @return None. - */ - void CloseClientConnection(); - - - void StartSendL( const CAiwGenericParamList& aOutParamList ); - - private: // Functions from base classes - - /** - * From MBTServiceProgressGetter Returns the progess status. - * @return The number of bytes sent. - */ - TInt GetProgressStatus(); - - void DialogDismissed( TInt aButtonId ); - - void PutCompleted(); - - - private: // Functions from base classes - - - /** - * From CActive Get's called when a request is cancelled. - * @param None. - * @return None. - */ - void DoCancel(); - - /** - * From CActive Get's called when a request is completed. - * @param None. - * @return None. - */ - void RunL(); - - void AddFileHandleL(RFile aFile); - - void AddFileL(const TDesC& aFilePath); - - void SendL(); - - TInt FileListsize(); - - void ShowNote(); - - private: // Data definitions - - enum TIRServiceClientState - { - EIRCliConnecting, - EIRCliPutting, - EIRCliGetting, - EIRCliDisconnected - }; - - private: - - /** - * C++ default constructor. - */ - CIRClient( ); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL(); - - private: // Data - - TIRServiceClientState iClientState; - - CObexClient* iClient; - CBufFlat* iObjectBuffer; - CObexBufObject* iPutBufObject; - CObexNullObject* iConnectObject; - TInt iTotalBytesSent; - TInt iObjectIndex; - RArray iFileArray; - RFs iFileSession; - CBufFlat* iBuffer; - CObexUtilsDialog* iDialog; - - - // Not owned - // - - }; - -#endif // BT_SERVICE_CLIENT_H - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexserviceirsend/inc/IRSendingService.hrh --- a/localconnectivityservice/obexsendservices/obexserviceirsend/inc/IRSendingService.hrh Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,32 +0,0 @@ -/* -* Copyright (c) 2002 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: ?Description -* -*/ - - -#ifndef BT_SENDING_SERVICE_HRH -#define BT_SENDING_SERVICE_HRH - -enum -{ - ESendBT=0, - ESendIR -}; - -#endif - - - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexserviceirsend/inc/IrSSProvider.h --- a/localconnectivityservice/obexsendservices/obexserviceirsend/inc/IrSSProvider.h Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,134 +0,0 @@ -/* -* Copyright (c) 2002 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: -* -*/ - - - -#ifndef IR_SENDING_SERVICE_PROVIDER_H -#define IR_SENDING_SERVICE_PROVIDER_H - -// INCLUDES -#include - - -#include "IRClient.h" - -// FORWARD DECLARATIONS - - - -// CLASS DECLARATION - -/** -* Provides BT sending services -* -*/ -class CIRSSProvider : public CAiwServiceIfMenu - { - public: // Constructors and destructor - - /** - * Two-phased constructor. - */ - static CIRSSProvider* NewL(); - - /** - * Destructor. - */ - virtual ~CIRSSProvider(); - - - public: // Functions from base classes - - /** - * From CAiwServiceIfMenu Not used - * @since 2.6 - * @param aFrameworkCallback Not used - * @param aInterest Not used - * @return None - */ - virtual void InitialiseL( MAiwNotifyCallback& aFrameworkCallback, - const RCriteriaArray& aInterest ); - - /** - * From CAiwServiceIfMenu Processes service command - * and starts bt sending - * @since 2.6 - * @param aCmdId Command id - * @param aInParamList Not used - * @param aOutParamList List of files - * @param aCmdOptions Not used - * @param aCallback Not used - * @return None - */ - virtual void HandleServiceCmdL( const TInt& aCmdId, - const CAiwGenericParamList& aInParamList, - CAiwGenericParamList& aOutParamList, - TUint aCmdOptions, - const MAiwNotifyCallback* aCallback ); - - - virtual void InitializeMenuPaneL( CAiwMenuPane& aMenuPane, - TInt aIndex, - TInt /* aCascadeId */, - const CAiwGenericParamList& aInParamList ); - /** - * From CAiwServiceIfBase Processes service command - * and starts bt sending - * @since 2.6 - * @param aCmdId Command id - * @param aInParamList Not used - * @param aOutParamList List of files - * @param aCmdOptions Not used - * @param aCallback Not used - * @return None - */ - virtual void HandleMenuCmdL(TInt aMenuCmdId, - const CAiwGenericParamList& aInParamList, - CAiwGenericParamList& aOutParamList, - TUint aCmdOptions, - const MAiwNotifyCallback* aCallback ); - - - - - - - private: - - - - - private: - - /** - * C++ default constructor. - */ - CIRSSProvider(); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL(); - - private: // Data - - CIRClient* iIRClient; - }; - -#endif // BT_SENDING_SERVICE_PROVIDER_H - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexserviceirsend/inc/IrSendingServiceDebug.h --- a/localconnectivityservice/obexsendservices/obexserviceirsend/inc/IrSendingServiceDebug.h Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,81 +0,0 @@ -/* -* Copyright (c) 2002 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: This file defines logging macros for BTSS. -* -*/ - - -#ifndef BT_SENDING_SERVICE_DEBUG_H -#define BT_SENDING_SERVICE_DEBUG_H - - -#ifdef _DEBUG -// =========================================================================== -#ifdef __WINS__ // File logging for WINS -// =========================================================================== -#include -#include -#include - -_LIT(KLogFile,"btss.log"); -_LIT(KLogDirFullName,"c:\\logs\\"); -_LIT(KLogDir,"btss"); - -#define FLOG(a) { FPrint(a); } -#define FTRACE(a) { a; } - -// Declare the FPrint function -// -inline void FPrint(const TRefByValue aFmt, ...) - { - VA_LIST list; - VA_START(list,aFmt); - RFileLogger::WriteFormat(KLogDir, KLogFile, EFileLoggingModeAppend, aFmt, list); - } - -// =========================================================================== -#else // RDebug logging for target HW -// =========================================================================== -#include - -#define FLOG(a) { RDebug::Print(a); } -#define FTRACE(a) { a; } - -// Declare the FPrint function -// -inline void FPrint(const TRefByValue aFmt, ...) - { - VA_LIST list; - VA_START(list,aFmt); - TInt tmpInt = VA_ARG(list, TInt); - TInt tmpInt2 = VA_ARG(list, TInt); - TInt tmpInt3 = VA_ARG(list, TInt); - VA_END(list); - RDebug::Print(aFmt, tmpInt, tmpInt2, tmpInt3); - } - -#endif //__WINS__ - -// =========================================================================== -#else // // No loggings --> Reduced binary size -// =========================================================================== -#define FLOG(a) -#define FTRACE(a) - -#endif // _DEBUG - - -#endif // BT_SENDING_SERVICE_DEBUG_H - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexserviceirsend/inc/IrSendingServiceUIDS.hrh --- a/localconnectivityservice/obexsendservices/obexserviceirsend/inc/IrSendingServiceUIDS.hrh Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,28 +0,0 @@ -/* -* Copyright (c) 2002 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: ?Description -* -*/ - - -#ifndef IR_SENDING_SERVICE_UIDS_HRH -#define IR_SENDING_SERVICE_UIDS_HRH - -#define KIRSendingServiceDllUid 0x001F86A2 -#define KIRSendingServiceIfaceUid 0x101F8650 // KAiwClassBase -#define KIRSendingServiceImplUid 0x001F86A3 - -#endif - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexserviceirsend/src/IRClient.cpp --- a/localconnectivityservice/obexsendservices/obexserviceirsend/src/IRClient.cpp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,462 +0,0 @@ -/* -* Copyright (c) 2002 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: Obex client implementation -* -*/ - - - -// INCLUDE FILES -#include -#include -#include - -#include "IRClient.h" -#include "IrSendingServiceDebug.h" - - -const TUint KIRProgressInterval = 1000000; - -_LIT( KTransportTinyTp, "IrTinyTP" ); -_LIT8( KClassNameObex, "OBEX" ); -_LIT8( KAttName, "IrDA:TinyTP:LsapSel" ); - -// CONSTANTS - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CBTServiceClient::CBTServiceClient -// C++ default constructor can NOT contain any code, that -// might leave. -// ----------------------------------------------------------------------------- -// -CIRClient::CIRClient( ) - : CActive( EPriorityStandard ), - iClientState( EIRCliDisconnected), - iObjectIndex( 0 ) - { - CActiveScheduler::Add( this ); - } - -// ----------------------------------------------------------------------------- -// CBTServiceClient::ConstructL -// Symbian 2nd phase constructor can leave. -// ----------------------------------------------------------------------------- -// -void CIRClient::ConstructL( ) - { - FLOG(_L("[BTSU]\t CBTServiceClient::ConstructL()")); - - User::LeaveIfError( iFileSession.Connect() ); - - iDialog = CObexUtilsDialog::NewL( this ); - iTotalBytesSent = 0; - // Create Obex Client - // - TObexIrProtocolInfo info; - //info.iTransport = KObexIrTTPProtocol; - - // info.iAddr.SetPort( KDefaultObexPort );//default obex server for now - info.iTransport = KTransportTinyTp; - info.iClassName = KClassNameObex; - info.iAttributeName = KAttName; - - - iClient = CObexClient::NewL( info ); - - - // Create Connect-object - // - iConnectObject = CObexNullObject::NewL(); - - //Show note - // - iDialog->LaunchWaitDialogL( R_IR_CONNECTING_WAIT_NOTE); - - // Establish client connection - // - iClient->Connect( /**iConnectObject,*/ iStatus ); - SetActive(); - iClientState = EIRCliConnecting; - - FLOG(_L("[BTSU]\t CBTServiceClient::ConstructL() completed")); - } - -// ----------------------------------------------------------------------------- -// CBTServiceClient::NewL -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -CIRClient* CIRClient::NewL() - { - CIRClient* self = new( ELeave ) CIRClient( ); - CleanupStack::PushL( self ); - self->ConstructL( ); - CleanupStack::Pop(); - return self; - } - - -// Destructor -CIRClient::~CIRClient() - { - - Cancel(); - if(iClient) - { - delete iClient; - iClient = NULL; - } - - iFileSession.Close(); - delete iConnectObject; - - for (TInt index = 0; index < iFileArray.Count(); index++ ) - { - if(iFileArray[index].SubSessionHandle()) - { - iFileArray[index].Close(); - } - } - - iFileArray.Close(); - - if ( iPutBufObject ) - { - delete iPutBufObject; - iPutBufObject = NULL; - } - } - -// ----------------------------------------------------------------------------- -// CBTServiceClient::PutObjectL -// ----------------------------------------------------------------------------- -// -void CIRClient::PutObjectL( ) - { - FLOG(_L("[BTSU]\t CBTServiceClient::PutObjectL()")); - - if ( iPutBufObject ) - { - delete iPutBufObject; - iPutBufObject = NULL; - } - - // Create object - // - iPutBufObject = CObexBufObject::NewL(NULL); - - RFile file; - file.Duplicate(iFileArray[iObjectIndex]); - - iBuffer = CBufFlat::NewL(1000); - iBuffer ->ResizeL(1000); - TObexRFileBackedBuffer bufferdetails(*iBuffer,file,CObexBufObject::ESingleBuffering); - iPutBufObject->SetDataBufL(bufferdetails); - - - TFileName filename; - file.Name(filename); - - TInt size; - file.Size(size); - iPutBufObject->SetLengthL(size); - - iPutBufObject->SetNameL(filename); - TTime time; - if(file.Modified(time) == KErrNone) - iPutBufObject->SetTimeL(time); - - - - - // Send object - // - iClient->Put( *iPutBufObject, iStatus ); - SetActive(); - iClientState = EIRCliPutting; - - FLOG(_L("[BTSU]\t CBTServiceClient::PutObjectL() completed")); - } - -// ----------------------------------------------------------------------------- -// CBTServiceClient::CloseClientConnection -// ----------------------------------------------------------------------------- -// -void CIRClient::CloseClientConnection() - { - - iClient->Disconnect( iStatus ); - SetActive(); - iClientState = EIRCliDisconnected; - - } - -// ----------------------------------------------------------------------------- -// CBTServiceClient::GetProgressStatus -// ----------------------------------------------------------------------------- -// -TInt CIRClient::GetProgressStatus() - { - - TInt bytesSent = 0; - if ( iPutBufObject ) - { - bytesSent = iPutBufObject->BytesSent(); - } - - return iTotalBytesSent + bytesSent; - } - - -// ----------------------------------------------------------------------------- -// CBTServiceClient::DoCancel -// ----------------------------------------------------------------------------- -// -void CIRClient::DoCancel() - { - FLOG(_L("[BTSU]\t CBTServiceClient::DoCancel()")); - - // Sending an error to Obex is the only way to cancel active requests - // - if(iClient) - { - delete iClient; - iClient = NULL; - } - - - FLOG(_L("[BTSU]\t CBTServiceClient::DoCancel() completed")); - } - -// ----------------------------------------------------------------------------- -// CBTServiceClient::RunL -// ----------------------------------------------------------------------------- -// -void CIRClient::RunL() - { - - - switch ( iClientState ) - { - case EIRCliConnecting: - { - - if ( iPutBufObject ) - { - delete iPutBufObject; - iPutBufObject = NULL; - } - iObjectIndex=0; - iDialog->CancelWaitDialogL(); - iDialog->LaunchProgressDialogL( this, FileListsize(), - R_IR_SENDING_DATA, KIRProgressInterval ); - TRAPD(error,SendL()); - error=error; - - - break; - } - - case EIRCliPutting: - { - - if ( iPutBufObject ) - { - delete iPutBufObject; - iPutBufObject = NULL; - } - if(iBuffer) - { - delete iBuffer; - iBuffer=NULL; - } - iObjectIndex++; - TRAPD(error,SendL()); - error=error; - - break; - } - - case EIRCliDisconnected: - { - break; - } - default: - { - - break; - } - } - - FLOG(_L("[BTSU]\t CBTServiceClient::RunL() completed")); - } - - // ----------------------------------------------------------------------------- -// CBTServiceClient::DialogDismissed -// ----------------------------------------------------------------------------- -// - void CIRClient::DialogDismissed( TInt aButtonId ) - { - - if( aButtonId == EAknSoftkeyCancel ) - { - FLOG(_L("[BTSU]\t CBTServiceStarter::DialogDissmissed(), cancelled by user")); - Cancel(); - - // Cancelled by user, stop service - // - iClientState = EIRCliDisconnected; - TRequestStatus* temp = &iStatus; - User::RequestComplete( temp, KErrNone ); - SetActive(); - } - } - - -// ----------------------------------------------------------------------------- -// CBTServiceClient::StartSendL -// ----------------------------------------------------------------------------- -// - void CIRClient::StartSendL(const CAiwGenericParamList& aOutParamList ) - { - - if ( iDialog ) - { - iDialog->CancelWaitDialogL(); - } - - for( TInt index = 0; index < aOutParamList.Count(); index++ ) - { - if ( aOutParamList[index].SemanticId() != EGenericParamFile ) - { - FLOG(_L("[BTSS]\t CBTSSProvider::AddParametersL() wrong semantic Id: Leave")); - User::Leave( KErrArgument ); - } - // Try to add file as an image - // - - - if(aOutParamList[index].Value().TypeId()== EVariantTypeFileHandle) - { - AddFileHandleL( aOutParamList[index].Value().AsFileHandle() ); - - } - else - { - AddFileL( aOutParamList[index].Value().AsDes() ); - } - - } - - } - -// ----------------------------------------------------------------------------- -// CBTServiceClient::SendL -// ----------------------------------------------------------------------------- -// - void CIRClient::SendL() - { - if(iObjectIndexCancelProgressDialogL(); - iClient->Disconnect( iStatus ); - SetActive(); - iClientState=EIRCliDisconnected; - - } - - } - -// ----------------------------------------------------------------------------- -// CBTServiceClient::AddFileHandleL -// ----------------------------------------------------------------------------- -// - - - void CIRClient::AddFileHandleL(RFile aFile) - { - if(!aFile.SubSessionHandle()) - { - User::Leave( KErrArgument ); - } - RFile file; - - file.Duplicate(aFile); - - iFileArray.AppendL( file ); - - } - -// ----------------------------------------------------------------------------- -// CBTServiceClient::AddFileL -// ----------------------------------------------------------------------------- -// - - void CIRClient::AddFileL(const TDesC& aFilePath) - { - if ( &aFilePath == NULL || - aFilePath.Length() == 0 || - aFilePath.Length() > KMaxFileName ) - { - User::Leave( KErrArgument ); - } - RFile file; - User::LeaveIfError( file.Open( iFileSession, aFilePath, EFileShareReadersOnly) ); - AddFileHandleL(file); - - } - -// ----------------------------------------------------------------------------- -// CBTServiceClient::FileListsize -// ----------------------------------------------------------------------------- -// - TInt CIRClient::FileListsize() - { - - TInt totalFileSize = 0; - for ( TInt index = 0; index < iFileArray.Count(); index++ ) - { - TInt fileSize = 0; - iFileArray[index].Size( fileSize ); - totalFileSize += fileSize; - } - return totalFileSize; - - } - -// ----------------------------------------------------------------------------- -// CBTServiceClient::ShowNote -// ----------------------------------------------------------------------------- -// -void CIRClient::ShowNote() - { - if(iObjectIndex==iFileArray.Count() && iStatus==KErrNone) - { - TRAPD(error,TObexUtilsUiLayer::ShowInformationNoteL(R_IR_DATA_SENT)); - error=error; - } - else - { - TRAPD(error,TObexUtilsUiLayer::ShowInformationNoteL(R_IR_SENDING_FAILED)); - error=error; - } - } -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexserviceirsend/src/IRSSProvider.cpp --- a/localconnectivityservice/obexsendservices/obexserviceirsend/src/IRSSProvider.cpp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,170 +0,0 @@ -/* -* Copyright (c) 2002 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: ?Description -* -*/ - - -// INCLUDE FILES - -#include - -#include -#include -#include // Notifier UID's -#include //For notifier -#include -#include "IrSSProvider.h" -#include "IrSendingServiceDebug.h" -#include "IRClient.h" - -#include - -_LIT( KIRSendingServiceFileDrive, "z:"); -_LIT( KIRSSResFileName,"IRSSMenu.rsc"); - -// ============================ MEMBER FUNCTIONS =============================== - -// ----------------------------------------------------------------------------- -// CIRSSProvider::CIRSSProvider -// C++ default constructor can NOT contain any code, that -// might leave. -// ----------------------------------------------------------------------------- -// -CIRSSProvider::CIRSSProvider() - { - } - -// ----------------------------------------------------------------------------- -// CIRSSProvider::ConstructL -// Symbian 2nd phase constructor can leave. -// ----------------------------------------------------------------------------- -// -void CIRSSProvider::ConstructL() - { - - } - -// ----------------------------------------------------------------------------- -// CIRSSProvider::NewL -// Two-phased constructor. -// ----------------------------------------------------------------------------- -// -CIRSSProvider* CIRSSProvider::NewL() - { - CIRSSProvider* self = new( ELeave ) CIRSSProvider; - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop(); - return self; - } - -// ----------------------------------------------------------------------------- -// Destructor -// ----------------------------------------------------------------------------- -// -CIRSSProvider::~CIRSSProvider() - { - - } - -// ----------------------------------------------------------------------------- -// CIRSSProvider::InitialiseL -// ----------------------------------------------------------------------------- -// -void CIRSSProvider::InitialiseL(MAiwNotifyCallback& /*aFrameworkCallback*/, - const RCriteriaArray& /*aInterest*/) - { - // Not needed. - } - -// ----------------------------------------------------------------------------- -// CIRSSProvider::HandleMenuCmdL -// ----------------------------------------------------------------------------- -// - -void CIRSSProvider::HandleMenuCmdL( TInt aCmdId, - const CAiwGenericParamList& aInParamList, - CAiwGenericParamList& /*aOutParamList*/, - TUint /*aCmdOptions*/, - const MAiwNotifyCallback* /*aCallback*/ ) - { - FeatureManager::InitializeLibL(); - if(!FeatureManager::FeatureSupported(KFeatureIdIrda)) - { - FLOG(_L("[IRSS]\t FeatMgr doesn't find IrDA, show not_supported ")); - RNotifier notifier; - User::LeaveIfError( notifier.Connect() ); - TBTGenericInfoNotiferParamsPckg paramsPckg; - paramsPckg().iMessageType=EIRNotSupported; - TInt status = notifier.StartNotifier(KBTGenericInfoNotifierUid, paramsPckg); - if ( status != KErrNone ) - { - FTRACE(FPrint(_L("[IRSS]\t void CIRSSProvider::HandleMenuCmdL() ERROR: StartNotifier() failed. Code: %d "), status)); - } - notifier.Close(); - User::Leave(KErrNone); - } - FeatureManager::UnInitializeLib(); - - if ( &aInParamList == NULL || aInParamList.Count() <= 0 ) - { - FLOG(_L("[IRSS]\t CIRSSProvider::HandleServiceCmdL() aOutParamList check failed: Leave")); - User::Leave( KErrArgument ); - } - - if ( !iIRClient ) - { - iIRClient = CIRClient::NewL(); - } - iIRClient->StartSendL( aInParamList ); - - FLOG(_L("[BTSS]\t CBTSSProvider::HandleServiceCmdL() completed")); - } - - // ----------------------------------------------------------------------------- -// CIRSSProvider::InitializeMenuPaneL -// ----------------------------------------------------------------------------- -// - - void CIRSSProvider::InitializeMenuPaneL( CAiwMenuPane& aMenuPane, - TInt aIndex, - TInt /* aCascadeId */, - const CAiwGenericParamList& /*aInParamList*/ ) - { - TFileName resourceFile; - TInt resId; - - resourceFile += KIRSendingServiceFileDrive; - resourceFile += KDC_RESOURCE_FILES_DIR; - resourceFile += KIRSSResFileName; - resId=R_SEND_VIA_IR_MENU; - - aMenuPane.AddMenuItemsL( - resourceFile, - resId, - KAiwCmdSend, - aIndex); - } - - void CIRSSProvider::HandleServiceCmdL( const TInt& aCmdId, - const CAiwGenericParamList& aInParamList, - CAiwGenericParamList& aOutParamList, - TUint aCmdOptions, - const MAiwNotifyCallback* aCallback ) - { - HandleMenuCmdL(aCmdId,aInParamList,aOutParamList,aCmdOptions,aCallback); - } - -// End of file diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexserviceirsend/src/IRSendingService.cpp --- a/localconnectivityservice/obexsendservices/obexserviceirsend/src/IRSendingService.cpp Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,68 +0,0 @@ -/* -* Copyright (c) 2002 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: Defines the DLL entry point and ECom initialization. -* and a panic function used in BTSS. -* -*/ - - -// INCLUDE FILES -#include "IrSSProvider.h" -#include "IRSendingService.hrh" -#include "IrSendingServiceUIDS.hrh" -#include -#include - -// ============================= LOCAL FUNCTIONS =============================== -// - -// ----------------------------------------------------------------------------- -// ImplementationTable -// ECom init: Maps the interface UIDs to implementation factory functions. -// Returns: A table of implementation UIDs and their constructors. -// ----------------------------------------------------------------------------- -// -const TImplementationProxy ImplementationTable[] = - { - IMPLEMENTATION_PROXY_ENTRY(KIRSendingServiceImplUid, CIRSSProvider::NewL) - }; - -// ========================== OTHER EXPORTED FUNCTIONS ========================= - -// ----------------------------------------------------------------------------- -// E32Dll -// DLL entry point. -// Returns: Symbian OS errorcode. -// ----------------------------------------------------------------------------- -// -#ifndef EKA2 -GLDEF_C TInt E32Dll( TDllReason /*aReason*/ ) - { - return KErrNone; - } -#endif - -// ----------------------------------------------------------------------------- -// ImplementationGroupProxy -// ECom init: Exported proxy for instantiation method resolution. -// Returns: Pointer to the proxy and number of implementations in it. -// ----------------------------------------------------------------------------- -// -EXPORT_C const TImplementationProxy* ImplementationGroupProxy( TInt& aTableCount ) - { - aTableCount = sizeof( ImplementationTable ) / sizeof( TImplementationProxy ); - return ImplementationTable; - } - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexservicesendutils/inc/BTServiceStarter.h --- a/localconnectivityservice/obexsendservices/obexservicesendutils/inc/BTServiceStarter.h Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/obexsendservices/obexservicesendutils/inc/BTServiceStarter.h Fri May 14 16:44:53 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2002-2010 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" @@ -29,6 +29,7 @@ #include #include #include +#include // DATA TYPES @@ -105,7 +106,8 @@ public MObexUtilsDialogObserver, public MObexUtilsProgressObserver, public MBTEngSdpResultReceiver, - public MBTEngSettingsObserver + public MBTEngSettingsObserver, + public MHbDeviceProgressDialogObserver { public: // Constructors and destructor @@ -157,6 +159,18 @@ * @return None. */ void DialogDismissed( TInt aButtonId ); + + /** + * From MHbDeviceProgressDialogObserver + * + */ + void ProgressDialogCancelled(const CHbDeviceProgressDialogSymbian * aDialog); + + /** + * From MHbDeviceProgressDialogObserver + * + */ + void ProgressDialogClosed(const CHbDeviceProgressDialogSymbian * aDialog ) ; /** * From MObexUtilsProgressObserver request for number of bytes sent @@ -413,7 +427,7 @@ CBTDevice* iDevice; CBTEngDiscovery* iBTEngDiscovery; CBTServiceParameterList* iList; - CObexUtilsDialog* iDialog; + // CObexUtilsDialog* iDialog; CBTSController* iController; TBTServiceType iService; @@ -438,6 +452,7 @@ TBool iFeatureManagerInitialized; TBool iTriedBIP; TBool iTriedOPP; + CHbDeviceProgressDialogSymbian *iProgressDialog; }; #endif // BT_SERVICE_CONTROLLER_H diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/obexservicesendutils/src/BTServiceStarter.cpp --- a/localconnectivityservice/obexsendservices/obexservicesendutils/src/BTServiceStarter.cpp Mon May 03 13:21:36 2010 +0300 +++ b/localconnectivityservice/obexsendservices/obexservicesendutils/src/BTServiceStarter.cpp Fri May 14 16:44:53 2010 +0300 @@ -29,6 +29,7 @@ #include #include #include +#include "hbdevicemessageboxsymbian.h" // CONSTANTS @@ -37,7 +38,6 @@ const TUint KBTServiceDirectPrinting = 0x1118; const TUint KBTServiceImagingResponder = 0x111B; -const TUint KBTProgressInterval = 1000000; // ============================ MEMBER FUNCTIONS =============================== @@ -72,7 +72,7 @@ { FLOG(_L("[BTSU]\t CBTServiceStarter::ConstructL()")); iDevice = CBTDevice::NewL(); - iDialog = CObexUtilsDialog::NewL( this ); +// iDialog = CObexUtilsDialog::NewL( this ); FeatureManager::InitializeLibL(); iFeatureManagerInitialized = ETrue; FLOG(_L("[BTSU]\t CBTServiceStarter::ConstructL() completed")); @@ -108,7 +108,8 @@ delete iController; delete iBTEngDiscovery; - delete iDialog; + // delete iDialog; + delete iProgressDialog; if(iWaiter && iWaiter->IsStarted() ) { @@ -166,7 +167,8 @@ TBool offline = EFalse; if( !power ) { - offline = CheckOfflineModeL(); + //offline = CheckOfflineModeL(); + offline = EFalse; } if( !offline ) { @@ -424,11 +426,16 @@ FLOG(_L("[BTSU]\t CBTServiceStarter::LaunchWaitNoteL()")); if ( iService == EBTPrintingService ) { - iDialog->LaunchWaitDialogL( R_BT_PRINTING_WAIT_NOTE ); + // iDialog->LaunchWaitDialogL( R_BT_PRINTING_WAIT_NOTE ); } else { - iDialog->LaunchWaitDialogL( R_BT_CONNECTING_WAIT_NOTE ); + // iDialog->LaunchWaitDialogL( R_BT_CONNECTING_WAIT_NOTE ); + _LIT(KConnectText, "Connecting..."); + iProgressDialog = CHbDeviceProgressDialogSymbian::NewL(CHbDeviceProgressDialogSymbian::EWaitDialog,this); + iProgressDialog->SetTextL(KConnectText); + iProgressDialog->ShowL(); + } FLOG(_L("[BTSU]\t CBTServiceStarter::LaunchWaitNoteL() completed")); } @@ -441,10 +448,15 @@ { FLOG(_L("[BTSU]\t CBTServiceStarter::CancelWaitNote()")); - if ( iDialog ) - { - TRAP_IGNORE( iDialog->CancelWaitDialogL() ); - } + // if ( iDialog ) + // { + // TRAP_IGNORE( iDialog->CancelWaitDialogL() ); + if(iProgressDialog) + { + //This has to be tested + iProgressDialog->Close(); + } + // } FLOG(_L("[BTSU]\t CBTServiceStarter::CancelWaitNote() completed")); } @@ -458,7 +470,8 @@ TInt aTotalSize ) { FLOG(_L("[BTSU]\t CBTServiceStarter::LaunchProgressNoteL()")); - + (void) aTotalSize; + if ( iService != EBTPrintingService ) { iProgressGetter = aGetter; @@ -468,8 +481,8 @@ { iMessageServerIndex = TObexUtilsMessageHandler::CreateOutboxEntryL( KUidMsgTypeBt, R_BT_SEND_OUTBOX_SENDING ); - iDialog->LaunchProgressDialogL( this, aTotalSize, - R_BT_SENDING_DATA, KBTProgressInterval ); + // iDialog->LaunchProgressDialogL( this, aTotalSize, + // R_BT_SENDING_DATA, KBTProgressInterval ); } iProgressDialogActive=ETrue; } @@ -485,9 +498,9 @@ { FLOG(_L("[BTSU]\t CBTServiceStarter::CancelProgressNote()")); - if ( iDialog ) + // if ( iDialog ) { - TRAP_IGNORE( iDialog->CancelProgressDialogL() ); + // TRAP_IGNORE( iDialog->CancelProgressDialogL() ); } } @@ -529,7 +542,8 @@ { FLOG(_L("[BTSU]\t CBTServiceStarter::ShowNote()")); - TInt resource = 0; +// TInt resource = 0; + TBuf<255> buf; switch ( aReason ) { @@ -537,17 +551,24 @@ { if ( iService == EBTPrintingService ) { - resource = R_BT_DATA_SENT2; + // resource = R_BT_DATA_SENT2; + + _LIT(KText, "Data Sent"); + buf.Copy(KText); } else { - resource = R_BT_DATA_SENT; + //resource = R_BT_DATA_SENT; + _LIT(KText, "Data Sent"); + buf.Copy(KText); } break; } case EBTSConnectingFailed: { - resource = R_BT_DEV_NOT_AVAIL; + //resource = R_BT_DEV_NOT_AVAIL; + _LIT(KText, "Cannot establish Bluetooth connection"); + buf.Copy(KText); break; } case EBTSGettingFailed: @@ -555,11 +576,15 @@ { if ( iService == EBTPrintingService ) { - resource = R_BT_FAILED_TO_SEND2; + _LIT(KText, "Sending failed"); + //resource = R_BT_FAILED_TO_SEND2; + buf.Copy(KText); } else { - resource = R_BT_FAILED_TO_SEND; + _LIT(KText, "Failed to send Data"); + //resource = R_BT_FAILED_TO_SEND; + buf.Copy(KText); } break; } @@ -567,37 +592,50 @@ { if ( iService == EBTPrintingService ) { - resource = R_BT_PRINTING_NOT_SUPPORTED; + _LIT(KText, "Printer not supported"); + buf.Copy(KText); + // resource = R_BT_PRINTING_NOT_SUPPORTED; } else { - resource = R_BT_FAILED_TO_SEND; + _LIT(KText, "Failed to send Data"); + buf.Copy(KText); + // resource = R_BT_FAILED_TO_SEND; } break; } case EBTSBIPSomeSend: { - resource = R_BT_FAILED_TO_SEND; + _LIT(KText, "Failed to send Data"); + buf.Copy(KText); + //resource = R_BT_FAILED_TO_SEND; break; } case EBTSBIPOneNotSend: { - resource = R_BT_NOT_RECEIVE_ONE; + _LIT(KText, "Receiving device does not support this image format."); + buf.Copy(KText); + //resource = R_BT_NOT_RECEIVE_ONE; break; } case EBTSBIPNoneSend: { - resource = R_BT_NOT_RECEIVE_ANY; + _LIT(KText, "Receiving device does not support the needed image formats."); + buf.Copy(KText); + //resource = R_BT_NOT_RECEIVE_ANY; break; } default: { - resource = R_BT_DEV_NOT_AVAIL; + // resource = R_BT_DEV_NOT_AVAIL; + _LIT(KText, "Cannot establish Bluetooth connection"); + buf.Copy(KText); break; } } - TRAP_IGNORE(TObexUtilsUiLayer::ShowInformationNoteL( resource ) ); +// TRAP_IGNORE(TObexUtilsUiLayer::ShowInformationNoteL( resource ) ); + CHbDeviceMessageBoxSymbian::InformationL(buf); FLOG(_L("[BTSU]\t CBTServiceStarter::ShowNote() completed")); } @@ -605,10 +643,10 @@ // CBTServiceStarter::LaunchConfirmationQuery // ----------------------------------------------------------------------------- // -TInt CBTServiceStarter::LaunchConfirmationQuery(TInt aResourceId) +TInt CBTServiceStarter::LaunchConfirmationQuery(TInt /*aResourceId*/) { TInt keypress=0; - TRAP_IGNORE( keypress = iDialog->LaunchQueryDialogL( aResourceId )); +// TRAP_IGNORE( keypress = iDialog->LaunchQueryDialogL( aResourceId )); if ( !keypress ) { FLOG(_L("[BTSU]\t CBTServiceStarter::LaunchConfirmationQuery(), cancelled by user")); @@ -624,6 +662,7 @@ // void CBTServiceStarter::StopTransfer(TInt aError) { + FLOG(_L("[BTSU]\t CBTServiceStarter::StopTransfer()")); Cancel(); if( !iUserCancel ) @@ -905,7 +944,7 @@ void CBTServiceStarter::TurnBTPowerOnL( const TBTPowerStateValue aState ) { FLOG( _L("[BTSU]\t CBTServiceStarter::TurnBTPowerOnL()") ); - if (iName() != EFalse) +// if (iName() != EFalse) { if( !iBTEngSettings ) { @@ -927,7 +966,7 @@ StartDiscoveryL(); } } - else + /* else { if ( !iNotifier.Handle() ) { @@ -940,7 +979,7 @@ iNotifier.StartNotifierAndGetResponse( iStatus, KBTGenericQueryNotifierUid, pckg, iName ); SetActive(); - } + }*/ FLOG(_L("[BTSU]\t CBTServiceStarter::TurnBTPowerOnL() - completed")); } @@ -988,6 +1027,7 @@ if( err ) { + err = ( err == KErrNotSupported ? KErrCancel : err ); if ( iWaiter && err != KErrInUse && err != KErrCancel ) { @@ -1012,4 +1052,25 @@ FLOG(_L("[BTSU]\t CBTServiceStarter::RunError() - completed")); return KErrNone; } -// End of File + + + + +void CBTServiceStarter::ProgressDialogCancelled(const CHbDeviceProgressDialogSymbian*/* aDialog*/) + { + FLOG(_L("[BTSU]\t CBTServiceStarter::ProgressDialogCancelled(), cancelled by user")); + iUserCancel=ETrue; + if ( iController ) + { + iController->Abort(); + } + else + { + StopTransfer(KErrCancel); + } + } + + +void CBTServiceStarter::ProgressDialogClosed(const CHbDeviceProgressDialogSymbian* /* aDialog*/) + { + } diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/rom/obexservicebtsend.iby --- a/localconnectivityservice/obexsendservices/rom/obexservicebtsend.iby Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,28 +0,0 @@ -/* -* Copyright (c) 2004 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: IBY file for btsendingservice -* -*/ - - -#ifndef BTSENDINGSERVICE_IBY -#define BTSENDINGSERVICE_IBY - -#ifdef __BT -ECOM_PLUGIN(obexservicebtsend.dll,101F86A2.rsc) -#endif - -#endif // BTSENDINGSERVICE_IBY - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e localconnectivityservice/obexsendservices/rom/obexserviceirsend.iby --- a/localconnectivityservice/obexsendservices/rom/obexserviceirsend.iby Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,28 +0,0 @@ -/* -* Copyright (c) 2004 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: IBY file for btsendingservice -* -*/ - - -#ifndef IRSENDINGSERVICE_IBY -#define IRSENDINGSERVICE_IBY - -#ifdef __IRDA -ECOM_PLUGIN(obexserviceirsend.dll,001F86A2.rsc) -#endif - -#endif // IRSENDINGSERVICE_IBY - -// End of File diff -r c3bac82c6ce0 -r 6743bfee309e sysdef_1_4_0.dtd --- a/sysdef_1_4_0.dtd Mon May 03 13:21:36 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,86 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -r c3bac82c6ce0 -r 6743bfee309e sysdef_1_5_1.dtd --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysdef_1_5_1.dtd Fri May 14 16:44:53 2010 +0300 @@ -0,0 +1,88 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +