kerneltest/e32test/usb/t_usb_device/src/transfersession.cpp
author hgs
Tue, 24 Aug 2010 14:49:21 +0100
changeset 253 d37db4dcc88d
parent 189 a5496987b1da
permissions -rw-r--r--
201033_01
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
189
a5496987b1da 201025_04
hgs
parents:
diff changeset
     1
/*
253
d37db4dcc88d 201033_01
hgs
parents: 189
diff changeset
     2
* Copyright (c) 1997-2010 Nokia Corporation and/or its subsidiary(-ies).
189
a5496987b1da 201025_04
hgs
parents:
diff changeset
     3
* All rights reserved.
a5496987b1da 201025_04
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
a5496987b1da 201025_04
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
a5496987b1da 201025_04
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
a5496987b1da 201025_04
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
a5496987b1da 201025_04
hgs
parents:
diff changeset
     8
*
a5496987b1da 201025_04
hgs
parents:
diff changeset
     9
* Initial Contributors:
a5496987b1da 201025_04
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
a5496987b1da 201025_04
hgs
parents:
diff changeset
    11
*
a5496987b1da 201025_04
hgs
parents:
diff changeset
    12
* Contributors:
a5496987b1da 201025_04
hgs
parents:
diff changeset
    13
*
a5496987b1da 201025_04
hgs
parents:
diff changeset
    14
* Description:
a5496987b1da 201025_04
hgs
parents:
diff changeset
    15
* Implements a Session of a Symbian OS server for the RUsb API
a5496987b1da 201025_04
hgs
parents:
diff changeset
    16
*
a5496987b1da 201025_04
hgs
parents:
diff changeset
    17
*/
a5496987b1da 201025_04
hgs
parents:
diff changeset
    18
a5496987b1da 201025_04
hgs
parents:
diff changeset
    19
/**
a5496987b1da 201025_04
hgs
parents:
diff changeset
    20
 @file
a5496987b1da 201025_04
hgs
parents:
diff changeset
    21
*/
a5496987b1da 201025_04
hgs
parents:
diff changeset
    22
a5496987b1da 201025_04
hgs
parents:
diff changeset
    23
#define __E32TEST_EXTENSION__
a5496987b1da 201025_04
hgs
parents:
diff changeset
    24
a5496987b1da 201025_04
hgs
parents:
diff changeset
    25
#include <e32test.h>
a5496987b1da 201025_04
hgs
parents:
diff changeset
    26
#include <usb.h>
a5496987b1da 201025_04
hgs
parents:
diff changeset
    27
#include "transfersession.h"
a5496987b1da 201025_04
hgs
parents:
diff changeset
    28
#include "transferserver.h"
a5496987b1da 201025_04
hgs
parents:
diff changeset
    29
#include "transfersrv.h"
a5496987b1da 201025_04
hgs
parents:
diff changeset
    30
#include "tranhandlesrv.h"
253
d37db4dcc88d 201033_01
hgs
parents: 189
diff changeset
    31
#include "OstTraceDefinitions.h"
d37db4dcc88d 201033_01
hgs
parents: 189
diff changeset
    32
#ifdef OST_TRACE_COMPILER_IN_USE
d37db4dcc88d 201033_01
hgs
parents: 189
diff changeset
    33
#include "transfersessionTraces.h"
d37db4dcc88d 201033_01
hgs
parents: 189
diff changeset
    34
#endif
189
a5496987b1da 201025_04
hgs
parents:
diff changeset
    35
a5496987b1da 201025_04
hgs
parents:
diff changeset
    36
a5496987b1da 201025_04
hgs
parents:
diff changeset
    37
CTransferSession* CTransferSession::NewL(CTransferServer* aServer)
a5496987b1da 201025_04
hgs
parents:
diff changeset
    38
	{
a5496987b1da 201025_04
hgs
parents:
diff changeset
    39
	return (new (ELeave) CTransferSession(aServer));
a5496987b1da 201025_04
hgs
parents:
diff changeset
    40
	}
a5496987b1da 201025_04
hgs
parents:
diff changeset
    41
a5496987b1da 201025_04
hgs
parents:
diff changeset
    42
a5496987b1da 201025_04
hgs
parents:
diff changeset
    43
CTransferSession::CTransferSession(CTransferServer* aServer)
a5496987b1da 201025_04
hgs
parents:
diff changeset
    44
	: iTransferServer(aServer)
a5496987b1da 201025_04
hgs
parents:
diff changeset
    45
	{
a5496987b1da 201025_04
hgs
parents:
diff changeset
    46
	iTransferServer->IncrementSessionCount();
a5496987b1da 201025_04
hgs
parents:
diff changeset
    47
	}
a5496987b1da 201025_04
hgs
parents:
diff changeset
    48
a5496987b1da 201025_04
hgs
parents:
diff changeset
    49
a5496987b1da 201025_04
hgs
parents:
diff changeset
    50
CTransferSession::~CTransferSession()
a5496987b1da 201025_04
hgs
parents:
diff changeset
    51
	{
a5496987b1da 201025_04
hgs
parents:
diff changeset
    52
	TUSB_PRINT("CTransferSession::~CTransferSession");
253
d37db4dcc88d 201033_01
hgs
parents: 189
diff changeset
    53
	OstTrace0(TRACE_NORMAL, CTRANSFERSESSION_DCTRANSFERSESSION, "CTransferSession::~CTransferSession");
189
a5496987b1da 201025_04
hgs
parents:
diff changeset
    54
	iTransferServer->DecrementSessionCount();
a5496987b1da 201025_04
hgs
parents:
diff changeset
    55
	TUSB_PRINT("<<CTransferSession::~CTransferSession");
253
d37db4dcc88d 201033_01
hgs
parents: 189
diff changeset
    56
	OstTrace0(TRACE_NORMAL, CTRANSFERSESSION_DCTRANSFERSESSION_DUP01, "<<CTransferSession::~CTransferSession");
189
a5496987b1da 201025_04
hgs
parents:
diff changeset
    57
	}
a5496987b1da 201025_04
hgs
parents:
diff changeset
    58
a5496987b1da 201025_04
hgs
parents:
diff changeset
    59
a5496987b1da 201025_04
hgs
parents:
diff changeset
    60
void CTransferSession::ServiceL(const RMessage2& aMessage)
a5496987b1da 201025_04
hgs
parents:
diff changeset
    61
	{
a5496987b1da 201025_04
hgs
parents:
diff changeset
    62
	DispatchMessageL(aMessage);
a5496987b1da 201025_04
hgs
parents:
diff changeset
    63
	}
a5496987b1da 201025_04
hgs
parents:
diff changeset
    64
a5496987b1da 201025_04
hgs
parents:
diff changeset
    65
void CTransferSession::CreateL()
a5496987b1da 201025_04
hgs
parents:
diff changeset
    66
	{
a5496987b1da 201025_04
hgs
parents:
diff changeset
    67
	}
a5496987b1da 201025_04
hgs
parents:
diff changeset
    68
a5496987b1da 201025_04
hgs
parents:
diff changeset
    69
void CTransferSession::DispatchMessageL(const RMessage2& aMessage)
a5496987b1da 201025_04
hgs
parents:
diff changeset
    70
	{
a5496987b1da 201025_04
hgs
parents:
diff changeset
    71
	TInt ret = KErrNone;
a5496987b1da 201025_04
hgs
parents:
diff changeset
    72
	TName string;
a5496987b1da 201025_04
hgs
parents:
diff changeset
    73
a5496987b1da 201025_04
hgs
parents:
diff changeset
    74
	switch (aMessage.Function())
a5496987b1da 201025_04
hgs
parents:
diff changeset
    75
		{
a5496987b1da 201025_04
hgs
parents:
diff changeset
    76
	case ESetConfigFileName:
a5496987b1da 201025_04
hgs
parents:
diff changeset
    77
		ret = aMessage.Read(0, string);
a5496987b1da 201025_04
hgs
parents:
diff changeset
    78
		if (ret != KErrNone)
a5496987b1da 201025_04
hgs
parents:
diff changeset
    79
			break;
a5496987b1da 201025_04
hgs
parents:
diff changeset
    80
		ret = iTransferServer->SetupLdds(string);
a5496987b1da 201025_04
hgs
parents:
diff changeset
    81
		break;
a5496987b1da 201025_04
hgs
parents:
diff changeset
    82
a5496987b1da 201025_04
hgs
parents:
diff changeset
    83
	default:
a5496987b1da 201025_04
hgs
parents:
diff changeset
    84
		ret = KErrNotSupported;
a5496987b1da 201025_04
hgs
parents:
diff changeset
    85
		break;
a5496987b1da 201025_04
hgs
parents:
diff changeset
    86
		}
a5496987b1da 201025_04
hgs
parents:
diff changeset
    87
a5496987b1da 201025_04
hgs
parents:
diff changeset
    88
	aMessage.Complete(ret);
a5496987b1da 201025_04
hgs
parents:
diff changeset
    89
	}
a5496987b1da 201025_04
hgs
parents:
diff changeset
    90