clock/clockmw/clockalarms/src/alarmclient.cpp
changeset 57 bb2d3e476f29
parent 45 b6db4fd4947b
equal deleted inserted replaced
55:2c54b51f39c4 57:bb2d3e476f29
    19 // System includes
    19 // System includes
    20 #include <e32cmn.h>
    20 #include <e32cmn.h>
    21 // User includes
    21 // User includes
    22 #include "alarmclient.h"
    22 #include "alarmclient.h"
    23 #include "alarmlistener.h"
    23 #include "alarmlistener.h"
       
    24 #include "OstTraceDefinitions.h"
       
    25 #ifdef OST_TRACE_COMPILER_IN_USE
       
    26 #include "alarmclientTraces.h"
       
    27 #endif
       
    28 
    24 
    29 
    25 /*!
    30 /*!
    26 	\class AlarmClient
    31 	\class AlarmClient
    27  */
    32  */
    28 
    33 
    31  */
    36  */
    32 AlarmClient::AlarmClient(QObject* parent)
    37 AlarmClient::AlarmClient(QObject* parent)
    33 :QObject(parent),
    38 :QObject(parent),
    34 mListener(0)
    39 mListener(0)
    35 {	
    40 {	
       
    41 	OstTraceFunctionEntry0( ALARMCLIENT_ALARMCLIENT_ENTRY );
    36 	// Connect to the alarm server.
    42 	// Connect to the alarm server.
    37 	User::LeaveIfError(mAlarmSrvSession.Connect());
    43 	User::LeaveIfError(mAlarmSrvSession.Connect());
    38 	// Construct the listener, but do not start it.
    44 	// Construct the listener, but do not start it.
    39 	mListener = new AlarmListener(this, mAlarmSrvSession);
    45 	mListener = new AlarmListener(this, mAlarmSrvSession);
       
    46 OstTraceFunctionExit0( ALARMCLIENT_ALARMCLIENT_EXIT );
    40 }
    47 }
    41 
    48 
    42 /*!
    49 /*!
    43 	Destructor.
    50 	Destructor.
    44  */
    51  */
    45 AlarmClient::~AlarmClient()
    52 AlarmClient::~AlarmClient()
    46 {
    53 {
       
    54 OstTraceFunctionEntry0( DUP1_ALARMCLIENT_ALARMCLIENT_ENTRY );
    47 
    55 
    48 	if (mListener) {
    56 	if (mListener) {
    49 		mListener->stop();
    57 		mListener->stop();
    50 		delete mListener;
    58 		delete mListener;
    51 		mListener = 0;
    59 		mListener = 0;
    52 	}
    60 	}
    53 	mAlarmSrvSession.Close();
    61 	mAlarmSrvSession.Close();
       
    62 OstTraceFunctionExit0( DUP1_ALARMCLIENT_ALARMCLIENT_EXIT );
    54 }
    63 }
    55 
    64 
    56 /*!
    65 /*!
    57 	Returns the list of alarms currently set on the phone.
    66 	Returns the list of alarms currently set on the phone.
    58 
    67 
    59 	\param alarmList Reference to a list of alarms.
    68 	\param alarmList Reference to a list of alarms.
    60  */
    69  */
    61 void AlarmClient::getAlarmList(QList<AlarmInfo>& alarmList)
    70 void AlarmClient::getAlarmList(QList<AlarmInfo>& alarmList)
    62 {
    71 {
       
    72 	OstTraceFunctionEntry0( ALARMCLIENT_GETALARMLIST_ENTRY );
    63 	// This will hold the alarm ids returned from alarm server.
    73 	// This will hold the alarm ids returned from alarm server.
    64 	RArray<TAlarmId> alarmIdArray;
    74 	RArray<TAlarmId> alarmIdArray;
    65 	AlarmInfo alarmInfo;
    75 	AlarmInfo alarmInfo;
    66 	TASShdAlarm tempSharedAlarm;
    76 	TASShdAlarm tempSharedAlarm;
    67 
    77 
   119 			alarmList.append(alarmInfo);
   129 			alarmList.append(alarmInfo);
   120 		}
   130 		}
   121 	}
   131 	}
   122 	// Cleanup.
   132 	// Cleanup.
   123 	alarmIdArray.Close();
   133 	alarmIdArray.Close();
       
   134 OstTraceFunctionExit0( ALARMCLIENT_GETALARMLIST_EXIT );
   124 }
   135 }
   125 
   136 
   126 /*!
   137 /*!
   127 	Sets a new alarm with the alarmserver.
   138 	Sets a new alarm with the alarmserver.
   128  */
   139  */
   129 void AlarmClient::setAlarm(AlarmInfo& alarmInfo)
   140 void AlarmClient::setAlarm(AlarmInfo& alarmInfo)
   130 {
   141 {
       
   142 	OstTraceFunctionEntry0( ALARMCLIENT_SETALARM_ENTRY );
   131 	// Get the current home time
   143 	// Get the current home time
   132 	TTime homeTime;
   144 	TTime homeTime;
   133 	homeTime.HomeTime();
   145 	homeTime.HomeTime();
   134 	TDateTime homeDateTime = homeTime.DateTime();
   146 	TDateTime homeDateTime = homeTime.DateTime();
   135 
   147 
   202 		QDate alarmDate(
   214 		QDate alarmDate(
   203 		nextDueDateTime.Year(),nextDueDateTime.Month()+1,nextDueDateTime.Day()+1);
   215 		nextDueDateTime.Year(),nextDueDateTime.Month()+1,nextDueDateTime.Day()+1);
   204 
   216 
   205 		alarmInfo.alarmDateTime = alarmDate;
   217 		alarmInfo.alarmDateTime = alarmDate;
   206 	}
   218 	}
       
   219 OstTraceFunctionExit0( ALARMCLIENT_SETALARM_EXIT );
   207 }
   220 }
   208 
   221 
   209 void AlarmClient::setAlarmState(TAlarmState state, AlarmState& alarmState)
   222 void AlarmClient::setAlarmState(TAlarmState state, AlarmState& alarmState)
   210 {
   223 {
       
   224 	OstTraceFunctionEntry0( ALARMCLIENT_SETALARMSTATE_ENTRY );
   211 	switch (state) {
   225 	switch (state) {
   212 		case EAlarmStateInPreparation:
   226 		case EAlarmStateInPreparation:
   213 			alarmState = InPreparation;
   227 			alarmState = InPreparation;
   214 			break;
   228 			break;
   215 		case EAlarmStateQueued:
   229 		case EAlarmStateQueued:
   229 			break;
   243 			break;
   230 		default:
   244 		default:
   231 			break;
   245 			break;
   232 	}
   246 	}
   233 
   247 
       
   248 OstTraceFunctionExit0( ALARMCLIENT_SETALARMSTATE_EXIT );
   234 }
   249 }
   235 
   250 
   236 void AlarmClient::setAlarmState(AlarmState state, TAlarmState& alarmState)
   251 void AlarmClient::setAlarmState(AlarmState state, TAlarmState& alarmState)
   237 {
   252 {
       
   253 	OstTraceFunctionEntry0( DUP1_ALARMCLIENT_SETALARMSTATE_ENTRY );
   238 	switch (state) {
   254 	switch (state) {
   239 		case InPreparation:
   255 		case InPreparation:
   240 			alarmState = EAlarmStateInPreparation;
   256 			alarmState = EAlarmStateInPreparation;
   241 			break;
   257 			break;
   242 		case Queued:
   258 		case Queued:
   255 			alarmState = EAlarmStateNotified;
   271 			alarmState = EAlarmStateNotified;
   256 			break;
   272 			break;
   257 		default:
   273 		default:
   258 			break;
   274 			break;
   259 	}
   275 	}
       
   276 OstTraceFunctionExit0( DUP1_ALARMCLIENT_SETALARMSTATE_EXIT );
   260 }
   277 }
   261 
   278 
   262 void AlarmClient::setAlarmRepeatType(
   279 void AlarmClient::setAlarmRepeatType(
   263 		TAlarmRepeatDefinition repeat, AlarmRepeatType& repeatType)
   280 		TAlarmRepeatDefinition repeat, AlarmRepeatType& repeatType)
   264 {
   281 {
       
   282 	OstTraceFunctionEntry0( ALARMCLIENT_SETALARMREPEATTYPE_ENTRY );
   265 	switch (repeat) {
   283 	switch (repeat) {
   266 		case EAlarmRepeatDefintionRepeatOnce:
   284 		case EAlarmRepeatDefintionRepeatOnce:
   267 			repeatType = Once;
   285 			repeatType = Once;
   268 			break;
   286 			break;
   269 		case EAlarmRepeatDefintionRepeatDaily:
   287 		case EAlarmRepeatDefintionRepeatDaily:
   276 			repeatType = Weekly;
   294 			repeatType = Weekly;
   277 			break;
   295 			break;
   278 		default:
   296 		default:
   279 			break;
   297 			break;
   280 	}
   298 	}
       
   299 OstTraceFunctionExit0( ALARMCLIENT_SETALARMREPEATTYPE_EXIT );
   281 }
   300 }
   282 
   301 
   283 void AlarmClient::setAlarmRepeatType(
   302 void AlarmClient::setAlarmRepeatType(
   284 		AlarmRepeatType repeat, TAlarmRepeatDefinition& repeatType)
   303 		AlarmRepeatType repeat, TAlarmRepeatDefinition& repeatType)
   285 {
   304 {
       
   305 	OstTraceFunctionEntry0( DUP1_ALARMCLIENT_SETALARMREPEATTYPE_ENTRY );
   286 	switch (repeat) {
   306 	switch (repeat) {
   287 		case Once:
   307 		case Once:
   288 			repeatType = EAlarmRepeatDefintionRepeatOnce;
   308 			repeatType = EAlarmRepeatDefintionRepeatOnce;
   289 			break;
   309 			break;
   290 		case Daily:
   310 		case Daily:
   297 			repeatType = EAlarmRepeatDefintionRepeatWeekly;
   317 			repeatType = EAlarmRepeatDefintionRepeatWeekly;
   298 			break;
   318 			break;
   299 		default:
   319 		default:
   300 			break;
   320 			break;
   301 	}
   321 	}
       
   322 OstTraceFunctionExit0( DUP1_ALARMCLIENT_SETALARMREPEATTYPE_EXIT );
   302 }
   323 }
   303 
   324 
   304 void AlarmClient::deleteAlarm(int alarmId)
   325 void AlarmClient::deleteAlarm(int alarmId)
   305 {
   326 {
       
   327 	OstTraceFunctionEntry0( ALARMCLIENT_DELETEALARM_ENTRY );
   306 	// Request the alarmserver to delete the alarm.
   328 	// Request the alarmserver to delete the alarm.
   307 	mAlarmSrvSession.AlarmDelete(alarmId);
   329 	mAlarmSrvSession.AlarmDelete(alarmId);
       
   330 OstTraceFunctionExit0( ALARMCLIENT_DELETEALARM_EXIT );
   308 }
   331 }
   309 
   332 
   310 /*!
   333 /*!
   311 	 Delete the snoozed alarm.
   334 	 Delete the snoozed alarm.
   312 	 
   335 	 
   313 	 \param alarmId needs to be deleted and reset again.
   336 	 \param alarmId needs to be deleted and reset again.
   314 	 \return int error value if any.
   337 	 \return int error value if any.
   315  */
   338  */
   316 int AlarmClient::deleteSnoozedAlarm(int alarmId)
   339 int AlarmClient::deleteSnoozedAlarm(int alarmId)
   317 {
   340 {
       
   341 	OstTraceFunctionEntry0( ALARMCLIENT_DELETESNOOZEDALARM_ENTRY );
   318 	AlarmInfo alarmInfo;
   342 	AlarmInfo alarmInfo;
   319 	int retVal(KErrNone);
   343 	int retVal(KErrNone);
   320 	int returnVal = getAlarmInfo(alarmId, alarmInfo);
   344 	int returnVal = getAlarmInfo(alarmId, alarmInfo);
   321 	if (KErrNone != retVal) {
   345 	if (KErrNone != retVal) {
       
   346 		OstTraceFunctionExit0( ALARMCLIENT_DELETESNOOZEDALARM_EXIT );
   322 		return retVal;
   347 		return retVal;
   323 	}
   348 	}
   324 	returnVal = mAlarmSrvSession.AlarmDelete(alarmId);
   349 	returnVal = mAlarmSrvSession.AlarmDelete(alarmId);
   325 	if (KErrNone != retVal) {
   350 	if (KErrNone != retVal) {
       
   351 		OstTraceFunctionExit0( DUP1_ALARMCLIENT_DELETESNOOZEDALARM_EXIT );
   326 		return retVal;
   352 		return retVal;
   327 	}
   353 	}
   328 	alarmInfo.alarmState = InPreparation;
   354 	alarmInfo.alarmState = InPreparation;
   329 	alarmInfo.nextDueTime = alarmInfo.origAlarmTime;
   355 	alarmInfo.nextDueTime = alarmInfo.origAlarmTime;
   330 	setAlarm(alarmInfo);
   356 	setAlarm(alarmInfo);
   331 	
   357 	
       
   358 	OstTraceFunctionExit0( DUP2_ALARMCLIENT_DELETESNOOZEDALARM_EXIT );
   332 	return retVal;
   359 	return retVal;
   333 }
   360 }
   334 
   361 
   335 int AlarmClient::getAlarmInfo(int alarmId, AlarmInfo& alarmInfo)
   362 int AlarmClient::getAlarmInfo(int alarmId, AlarmInfo& alarmInfo)
   336 {
   363 {
       
   364 	OstTraceFunctionEntry0( ALARMCLIENT_GETALARMINFO_ENTRY );
   337 	TASShdAlarm tempSharedAlarm;
   365 	TASShdAlarm tempSharedAlarm;
   338 
   366 
   339 	// Get the requested alarm info from the alarm server.
   367 	// Get the requested alarm info from the alarm server.
   340 	int error = mAlarmSrvSession.GetAlarmDetails(alarmId, tempSharedAlarm);
   368 	int error = mAlarmSrvSession.GetAlarmDetails(alarmId, tempSharedAlarm);
   341 
   369 
   390 			alarmInfo.volumeStatus = AlarmVolumeOn;
   418 			alarmInfo.volumeStatus = AlarmVolumeOn;
   391 		} else {
   419 		} else {
   392 			alarmInfo.volumeStatus = AlarmVolumeOff;
   420 			alarmInfo.volumeStatus = AlarmVolumeOff;
   393 		}
   421 		}
   394 	}
   422 	}
       
   423 	OstTraceFunctionExit0( ALARMCLIENT_GETALARMINFO_EXIT );
   395 	return error;
   424 	return error;
   396 }
   425 }
   397 
   426 
   398 void AlarmClient::toggleAlarmStatus(int alarmId, int alarmStatus)
   427 void AlarmClient::toggleAlarmStatus(int alarmId, int alarmStatus)
   399 {
   428 {
       
   429 OstTraceFunctionEntry0( ALARMCLIENT_TOGGLEALARMSTATUS_ENTRY );
   400 
   430 
   401 	mAlarmSrvSession.SetAlarmStatus(alarmId, (TAlarmStatus)alarmStatus);
   431 	mAlarmSrvSession.SetAlarmStatus(alarmId, (TAlarmStatus)alarmStatus);
   402 
   432 
       
   433 OstTraceFunctionExit0( ALARMCLIENT_TOGGLEALARMSTATUS_EXIT );
   403 }
   434 }
   404 
   435 
   405 void AlarmClient::startListener()
   436 void AlarmClient::startListener()
   406 {
   437 {
       
   438 		OstTraceFunctionEntry0( ALARMCLIENT_STARTLISTENER_ENTRY );
   407 		mListener->start();
   439 		mListener->start();
   408 
   440 
       
   441 OstTraceFunctionExit0( ALARMCLIENT_STARTLISTENER_EXIT );
   409 }
   442 }
   410 
   443 
   411 void AlarmClient::stopListener()
   444 void AlarmClient::stopListener()
   412 {
   445 {
       
   446 	OstTraceFunctionEntry0( ALARMCLIENT_STOPLISTENER_ENTRY );
   413 	mListener->stop();
   447 	mListener->stop();
   414 
   448 
       
   449 OstTraceFunctionExit0( ALARMCLIENT_STOPLISTENER_EXIT );
   415 }
   450 }
   416 
   451 
   417 void AlarmClient::notifyChange(int alarmId)
   452 void AlarmClient::notifyChange(int alarmId)
   418 {
   453 {
       
   454 		OstTraceFunctionEntry0( ALARMCLIENT_NOTIFYCHANGE_ENTRY );
   419 		emit alarmStateChanged(alarmId);
   455 		emit alarmStateChanged(alarmId);
       
   456 OstTraceFunctionExit0( ALARMCLIENT_NOTIFYCHANGE_EXIT );
   420 }
   457 }
   421 
   458 
   422 // End of file	--Don't remove this.
   459 // End of file	--Don't remove this.