bluetoothengine/btnotif/btnotifsrv/inc/btnotifsession.h
author hgs
Mon, 12 Jul 2010 18:51:05 +0300
changeset 42 b72428996822
parent 31 a0ea99b6fa53
permissions -rw-r--r--
201025
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     1
/*
31
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
     2
* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
     3
* All rights reserved.
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
     4
* This component and the accompanying materials are made available
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
     6
* which accompanies this distribution, and is available
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     8
*
31
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
     9
* Initial Contributors:
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    10
* Nokia Corporation - initial contribution.
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    11
*
31
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    12
* Contributors:
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    13
*
31
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    14
* Description: Session class for handling commands from clients.
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    15
*
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    16
*/
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    17
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    18
#ifndef BTNOTIFSESSION_H
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    19
#define BTNOTIFSESSION_H
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    20
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    21
#include "btnotifserver.h"
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    22
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    23
/**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    24
 *  CBTNotifSession maintains a session with a client.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    25
 *
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    26
 *  @since Symbian^4
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    27
 */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    28
NONSHARABLE_CLASS( CBTNotifSession ) : public CSession2
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    29
    {
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    30
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    31
public:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    32
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    33
    /**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    34
     * Two-phased constructor.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    35
     */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    36
    static CBTNotifSession* NewL();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    37
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    38
    /**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    39
    * Destructor.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    40
    */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    41
    virtual ~CBTNotifSession();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    42
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    43
// from base class CSession2
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    44
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    45
    /**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    46
     * From CSession2.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    47
     * Receives a message from a client.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    48
     *
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    49
     * @since Symbian^4
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    50
     * @param aMessage The message containing the details of the client request.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    51
     */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    52
    virtual void ServiceL( const RMessage2& aMessage );
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    53
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    54
    /**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    55
     * From CSession2.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    56
     * Completes construction of the session.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    57
     *
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    58
     * @since Symbian^4
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    59
     */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    60
    virtual void CreateL();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    61
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    62
private:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    63
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    64
    CBTNotifSession();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    65
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    66
    void ConstructL();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    67
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    68
    /**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    69
     * Returns a handle to our server.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    70
     *
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    71
     * @since Symbian^4
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    72
     * @param Pointer to our server.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    73
     */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    74
    inline CBTNotifServer* Server() const
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    75
        { return (CBTNotifServer*) CSession2::Server(); }
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    76
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    77
private: // data
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    78
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    79
    BTUNITTESTHOOK
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    80
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    81
    };
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    82
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    83
#endif // BTNOTIFSESSION_H