Example #1
0
status_t TaskMerge::MergeIn(BObjectList<Task> *newTaskList)
{
	status_t	err			= B_OK;
	int32		i			= 0;
	Task		*tmpTask	= NULL;
	Task		*foundTask	= NULL;
	Task		*mergedTask	= NULL;
	//run throught all of the newTaskList ... 
	for (i=0;newTaskList->CountItems();i++){
		tmpTask = newTaskList->ItemAt(i);
		foundTask=GetTask(BString(tmpTask->ID()));
		if (foundTask!=NULL){
			mergedTask = MergeTasks(tmpTask, foundTask);
			UpdateTask(tmpTask->ID(),mergedTask);
		}
		else{
			//add it to all other Syncers as Add..
			taskList->AddItem(tmpTask);
		}
	}
	return err;
}
Example #2
0
Task* TaskFS::GetTask(BString forID)
{
	Task	*tmpTask	= NULL;
	int32	i			= 0;
	bool	found		= false;
	//grab a up to date List of Items
	GetTasks();
	while (i<tasks->CountItems() && found!=true)
	{
		tmpTask=tasks->ItemAt(i);
		found = tmpTask->ID() == forID;
		i++;
	}
	
	if (found == true)
		return tmpTask;
	else
		return NULL;
}