--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/imstutils/imconversationview/tsrc/imcvuiengine_test/src/s_cch.cpp Wed Sep 01 12:33:36 2010 +0100
@@ -0,0 +1,413 @@
+/*
+* 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: s_cch.cpp
+*
+*/
+
+// EXTERNAL INCLUDES
+
+#include <cch.h>
+#include <cchtypes.h>
+#include <spentry.h>
+#include <spsettings.h>
+#include <spproperty.h>
+#include "s_cch.h"
+
+CCchService* myService = NULL;
+
+
+
+TInt CreateSpEntryL( TInt aServiceId )
+ {
+ CSPSettings* myCSPSettings = CSPSettings::NewL();
+ CSPEntry* entry = CSPEntry::NewLC();
+ entry->SetServiceId( aServiceId );
+ User::LeaveIfError( entry->SetServiceName( KTestServiceName ) );
+ CSPProperty* property = NULL;
+ // set voip enabled property
+ property = CSPProperty::NewLC();
+ property->SetName( ESubPropertyVoIPEnabled );
+ property->SetValue( EOn );
+ entry->AddPropertyL( *property );
+ CleanupStack::PopAndDestroy( property );
+
+ // set presence settings id property
+ property = CSPProperty::NewLC();
+ property->SetName( ESubPropertyPresenceSettingsId );
+ property->SetValue( 1 );
+ entry->AddPropertyL( *property );
+ CleanupStack::PopAndDestroy( property );
+
+ // set im settings id property
+ property = CSPProperty::NewLC();
+ property->SetName( ESubPropertyIMSettingsId );
+ property->SetValue( 1 );
+ entry->AddPropertyL( *property );
+ CleanupStack::PopAndDestroy( property );
+
+ // set Presence FW PSC plugin UID
+ property = CSPProperty::NewLC();
+ property->SetName( EPropertyPCSPluginId );
+ property->SetValue( 0x20007B6D );
+ entry->AddPropertyL( *property );
+ CleanupStack::PopAndDestroy( property );
+
+ property = CSPProperty::NewLC();
+ property->SetName( EPropertyContactViewPluginId );
+ property->SetValue( KMECOIMPLEMENTATIONUID );
+ entry->AddPropertyL( *property );
+ CleanupStack::PopAndDestroy( property );
+
+
+ myCSPSettings->AddEntryL( *entry );
+ TInt createdServiceId = entry->GetServiceId();
+ CleanupStack::PopAndDestroy( entry );
+
+ return createdServiceId;
+ }
+
+
+/*************** Stubs ****************/
+CCchService* CCch::GetService( TInt /*aServiceId*/ )
+ {
+ if( !myService )
+ {
+ myService = new ( ELeave ) MyCchService();
+ return myService;
+ }
+ return myService;
+ }
+/*************** Stubs ****************/
+
+CCch::CCch()
+ {
+
+ }
+
+CCch::~CCch()
+ {
+ if(myService)
+ {
+ myService = NULL;
+ }
+
+ }
+// ---------------------------------------------------------------------------
+// CCch::NewL
+// Two-phased constructor.
+// ---------------------------------------------------------------------------
+//
+CCch* CCch::NewL( )
+ {
+ CCch* self = CCch::NewLC( );
+ CleanupStack::Pop( self );
+ return self;
+ }
+// ---------------------------------------------------------------------------
+// CCch::ConstructL
+// Symbian 2nd phase constructor can leave.
+// ---------------------------------------------------------------------------
+//
+void CCch::ConstructL()
+ {
+ //iImplementation = CCchImpl::NewL( this );
+
+ }
+// ---------------------------------------------------------------------------
+// CCch::NewLC
+// Two-phased constructor.
+// ---------------------------------------------------------------------------
+//
+CCch* CCch::NewLC( )
+ {
+ CCch* self = new (ELeave) CCch( );
+ CleanupStack::PushL( self );
+ self->ConstructL();
+ return self;
+ }
+
+// ---------------------------------------------------------------------------
+// CCchUIHandler::GetServiceIds
+// ---------------------------------------------------------------------------
+//
+TInt CCch::GetServiceIds( RArray<TInt>& aIds ) const
+{
+
+}
+
+// ---------------------------------------------------------------------------
+// CCchUIHandler::GetServiceIds
+// ---------------------------------------------------------------------------
+//
+TInt CCch::GetServices( TCCHSubserviceType aType,
+ RPointerArray<CCchService>& aServices )
+ {
+
+ }
+
+// ---------------------------------------------------------------------------
+// CCchUIHandler::ConnectivityDialogsAllowed
+// ---------------------------------------------------------------------------
+//
+TBool CCch::ConnectivityDialogsAllowed() const
+{
+
+}
+
+// ---------------------------------------------------------------------------
+// CCchUIHandler::SetConnectivityDialogsAllowed
+// ---------------------------------------------------------------------------
+//
+void CCch::SetConnectivityDialogsAllowed(
+ TBool aConnectivityDialogsAllowed )
+ {
+ }
+// ========================== OTHER EXPORTED FUNCTIONS =========================
+// --------------------------------------------------------------------------
+// TCchServiceStatus::TCchServiceStatus
+// --------------------------------------------------------------------------
+//
+TCchServiceStatus::TCchServiceStatus()
+: iState( ECCHUninitialized )
+, iError( KErrNone )
+ {
+ }
+
+// --------------------------------------------------------------------------
+// TCchServiceStatus::State
+// --------------------------------------------------------------------------
+//
+TCCHSubserviceState TCchServiceStatus::State() const
+{
+return iState;
+}
+
+// --------------------------------------------------------------------------
+// TCchServiceStatus::Error
+// --------------------------------------------------------------------------
+//
+TInt TCchServiceStatus::Error() const
+{
+return iError;
+}
+
+// --------------------------------------------------------------------------
+// TCchServiceStatus::SetState
+// --------------------------------------------------------------------------
+//
+void TCchServiceStatus::SetState( TCCHSubserviceState aState )
+ {
+ iState = aState;
+ }
+
+// --------------------------------------------------------------------------
+// TCchServiceStatus::SetError
+// --------------------------------------------------------------------------
+//
+void TCchServiceStatus::SetError( TInt aError )
+ {
+ iError = aError;
+ }
+// End of File
+
+/************* End of Stubs ************/
+
+
+
+TInt MyCchService::Enable( TCCHSubserviceType aType )
+ {
+ return KErrNone;
+ }
+
+/**
+ * Launches service disable. See MCchServiceObserver for status changes.
+ *
+ * @param aType Type of service
+ * @return Symbian error
+ */
+TInt MyCchService::Disable( TCCHSubserviceType /*aType*/ ){ return KErrNone; }
+
+/**
+ * Returns the current service state
+ *
+ * @param aType Type of service
+ * @param aStatus Status of the service, return value
+ * @return Symbian error code
+ */
+TInt MyCchService::GetStatus( TCCHSubserviceType aType,
+ TCchServiceStatus& aStatus ) const
+
+ {
+ if ( (ECCHIMSub == aType) )
+ {
+ aStatus.SetState(ECCHEnabled);
+ aStatus.SetError(KErrNone);
+ return KErrNone;
+ }
+
+ return KErrNotFound ;
+
+ }
+
+/**
+ * Returns the connection parameters
+ *
+ * @param aType Type of service
+ * @param aParameter Connection parameter of the service
+ * @param aValue Value of the parameter
+ * @return Symbian error code
+ */
+TInt MyCchService::GetConnectionParameter( TCCHSubserviceType /*aType*/,
+ TCchConnectionParameter /*aParameter*/, TInt& /*aValue*/ ) const{ return KErrNone;}
+
+/**
+ * Returns the connection parameters
+ *
+ * @param aType Type of service
+ * @param aParameter Connection parameter of the service
+ * @param aValue Value of the parameter
+ * @return Symbian error code
+ */
+TInt MyCchService::GetConnectionParameter( TCCHSubserviceType /*aType*/,
+ TCchConnectionParameter aParameter, RBuf& aValue ) const
+
+ {
+ if (aParameter == ECchUsername)
+ {
+ TBuf<512> username;
+ username = KTestUserName;
+ aValue.Copy(username);
+ return KErrNone;
+ }
+
+ return KErrNotFound;
+ }
+
+/**
+ * Sets the connection parameters
+ *
+ * @param aType The type of service
+ * @param aParameter Connection parameter of the service
+ * @param aValue Value of the parameter
+ * @return Symbian error code
+ */
+TInt MyCchService::SetConnectionParameter( TCCHSubserviceType /*aType*/,
+ TCchConnectionParameter /*aParameter*/, TInt /*aValue*/ )
+
+ {
+ return KErrNone;
+ }
+
+/**
+ * Sets the connection parameters
+ *
+ * @param aType The type of service
+ * @param aParameter Connection parameter of the service
+ * @param aValue Value of the parameter
+ * @return Symbian error code
+ */
+TInt MyCchService::SetConnectionParameter( TCCHSubserviceType /*aType*/,
+ TCchConnectionParameter /*aParameter*/, const TDesC& /*aValue*/ )
+ {
+ return KErrNone;
+ }
+
+/**
+ * Reserves the service for exclusive usage
+ *
+ * @param aType Type of service
+ * @return Symbian error code
+ */
+TInt MyCchService::Reserve( TCCHSubserviceType /*aType*/ ){ return KErrNone; }
+
+/**
+ * Frees the service of exclusive usage
+ *
+ * @param aType Type of service
+ * @return Symbian error code
+ */
+TInt MyCchService::Free( TCCHSubserviceType /*aType*/ ){ return KErrNone; }
+
+/**
+ * Is the service reserved
+ *
+ * @param aType Type of service
+ * @param aReserved True if the service is reserved
+ * @return Symbian error code
+ */
+TInt MyCchService::IsReserved( TCCHSubserviceType /*aType*/, TBool& /*aReserved*/ ) const{ return KErrNone; }
+
+/**
+ * Returns the service id
+ *
+ * @return The id of the service
+ */
+TInt MyCchService::ServiceId() const{ return KErrNone; }
+
+/**
+ * @deprecated Do not use this anymore, change to AddObserver!
+ *
+ * Adds observer for listening service events
+ *
+ * @param aObserver Event observing class
+ */
+void MyCchService::SetObserver( MCchServiceStatusObserver& aObserver )
+ {
+ iObserver = &aObserver;
+ }
+
+/**
+ * @deprecated Do not use this anymore, change to
+ * RemoveObserver method with paramater
+ *
+ * Removes the observer of service events
+ */
+void MyCchService::RemoveObserver( )
+ {
+ iObserver = NULL;
+ }
+
+
+/**
+ * Adds observer for listening service events
+ *
+ * @param aObserver Event observing class
+ * @return KErrAlreadyExist Observer already added
+ * KErrNone Observer was added
+ */
+TInt MyCchService::AddObserver( MCchServiceStatusObserver& /*aObserver*/ ){ return KErrNone; }
+
+/**
+ * Removes the observer of service events
+ *
+ * @param aObserver Event observing class
+ * @return KErrNotFound Observer was not found
+ * KErrNone Observer was removed
+ */
+TInt MyCchService::RemoveObserver( MCchServiceStatusObserver& /*aObserver*/ ){ return KErrNone; }
+
+/**
+ * Checks if the type is supported
+ *
+ * @param aType Type of service
+ * @param aSupported True if the service type is supported
+ * @return Symbian error code
+ */
+TInt MyCchService::IsSupported( TCCHSubserviceType /*aType*/, TBool& /*aSupported*/ ) const{ return KErrNone; }
+
+
+//end of file
+
+
+