diff -r 000000000000 -r 5a93021fdf25 bearermanagement/S60MCPR/inc/s60tiermanagerselector.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/bearermanagement/S60MCPR/inc/s60tiermanagerselector.h Thu Dec 17 08:55:21 2009 +0200 @@ -0,0 +1,65 @@ +/* +* Copyright (c) 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: S60 IP tier manager selector +* +*/ + +/** +@file s60tiermanagerselector.h +S60 IP TM selector. +*/ + +#ifndef S60TIERMANAGERSELECTOR_H +#define S60TIERMANAGERSELECTOR_H + +#include + +// Forward declaration +class ESock::CMetaConnectionProviderBase; + +/** + * TS60ProviderSelectorFactory + */ +class TS60ProviderSelectorFactory + { +public: + static ESock::MProviderSelector* NewSelectorL(const Meta::SMetaData& aSelectionPreferences); + }; + +/** + * CSimpleS60SelectorBase + * Base for simple selectors. + */ +class CSimpleS60SelectorBase : public CBase, public ASimpleSelectorBase + { +public: + explicit CSimpleS60SelectorBase( const Meta::SMetaData& aSelectionPreferences ); + virtual ~CSimpleS60SelectorBase(); + +protected: + ESock::ISelectionNotify iSelectionNotify; //Needed as a member because of the asynch selection +private: + /** + * Implements the selection logic + */ + virtual void SelectL( ESock::ISelectionNotify& aSelectionNotify ); + /** + * Instantiates the MCPR or finds an old one that can be reused. + */ + ESock::CMetaConnectionProviderBase* FindOrCreateProviderL( TUint aAccessPoint ); +private: + TUint32 iDefaultAp; + }; + +#endif // S60IPTIERMANAGERSELECTOR_H