org.chorem.jtimer.data
Class TimerDataManager

java.lang.Object
  extended by org.chorem.jtimer.data.TimerDataManager

public class TimerDataManager
extends Object

Gere les donnees. Des objets peuvent s'enregistrer pour etre notifies des changements de donnees.

Version:
$Revision: 2850 $ Last update : $Date: 2008-06-19 10:17:31 +0200 (jeu., 19 juin 2008)$ By : $Author: echatellier $
Author:
chatellier

Field Summary
protected  Collection<DataEventListener> dataEventListeners
          For change notification
protected  List<TimerProject> projectList
          Project list.
protected  Collection<VetoableDataEventListener> vetoableDataEventListeners
          For change notification
 
Constructor Summary
TimerDataManager()
          Constructor.
 
Method Summary
 void addAllProjects(Collection<TimerProject> projects)
          Add many projects.
 void addAnnotation(TimerTask task, Date date, String annotation)
          Add annotation on task for specified calendar, and send event.
 void addDataEventListener(DataEventListener listener)
          Add listener.
 void addProject(TimerProject project)
          Add single project.
 void addTask(TimerTask parent, TimerTask task)
          Add single task.
 void addVetoableDataEventListener(VetoableDataEventListener listener)
          Add vetoable listener.
 void changeProjectCloseState(TimerProject project)
          Close project.
 void changeTaskCloseState(TimerTask task)
          Close task.
 void changeTaskTime(TimerTask task, Date date, long value)
          Change time for the given date.
 void deleteProject(TimerProject project)
          Delete project.
 void deleteTask(TimerTask task)
          Delete task.
 void editProject(TimerProject project, String newProjectName)
          Edit project.
 void editTask(TimerTask task, String newTaskName)
          Edit task.
 List<TimerProject> getProjectsList()
          Get projects list.
 void mergeTasks(TimerTask destinationTask, List<TimerTask> otherTasks)
          Merge tasks.
protected  void mergeTwoTasks(TimerTask destinationTask, TimerTask otherTask)
          Merge two task together.
 void modifyAlert(TimerTask task)
          Notify alert modification.
 void moveTask(TimerTask destination, Collection<TimerTask> tasksToMove)
          Move task.
 void removeDataEventListener(DataEventListener listener)
          Remove listener.
 void removeVetoableDataEventListener(VetoableDataEventListener listener)
          Remove vetoable listener.
 void startTask(TimerTask task)
          Start task.
 void stopTask(TimerTask task)
          Stop task.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

projectList

protected List<TimerProject> projectList
Project list.


dataEventListeners

protected Collection<DataEventListener> dataEventListeners
For change notification


vetoableDataEventListeners

protected Collection<VetoableDataEventListener> vetoableDataEventListeners
For change notification

Constructor Detail

TimerDataManager

public TimerDataManager()
Constructor.

Method Detail

addDataEventListener

public void addDataEventListener(DataEventListener listener)
Add listener.

Parameters:
listener - listener

removeDataEventListener

public void removeDataEventListener(DataEventListener listener)
Remove listener.

Parameters:
listener - listener

addVetoableDataEventListener

public void addVetoableDataEventListener(VetoableDataEventListener listener)
Add vetoable listener.

Parameters:
listener - listener

removeVetoableDataEventListener

public void removeVetoableDataEventListener(VetoableDataEventListener listener)
Remove vetoable listener.

Parameters:
listener - listener

addProject

public void addProject(TimerProject project)
Add single project.

Parameters:
project - a project

addTask

public void addTask(TimerTask parent,
                    TimerTask task)
Add single task.

Parameters:
parent - parent task
task - task to add

addAllProjects

public void addAllProjects(Collection<TimerProject> projects)
Add many projects.

Parameters:
projects - project collection

getProjectsList

public List<TimerProject> getProjectsList()
Get projects list. synchronized to prevent manipulation during save.

Returns:
list of projects

changeTaskTime

public void changeTaskTime(TimerTask task,
                           Date date,
                           long value)
Change time for the given date.

Parameters:
task - the task to change time
date - date to change time
value - new time in ms

startTask

public void startTask(TimerTask task)
Start task.

Parameters:
task - task to start

stopTask

public void stopTask(TimerTask task)
Stop task.

Parameters:
task - task to stop

deleteTask

public void deleteTask(TimerTask task)
Delete task.

Parameters:
task - task to delete

deleteProject

public void deleteProject(TimerProject project)
Delete project.

Parameters:
project - project to delete

changeProjectCloseState

public void changeProjectCloseState(TimerProject project)
Close project.

Parameters:
project - project to close

changeTaskCloseState

public void changeTaskCloseState(TimerTask task)
Close task.

Parameters:
task - task to close

editProject

public void editProject(TimerProject project,
                        String newProjectName)
Edit project.

Parameters:
project - project to edit
newProjectName - new project name

editTask

public void editTask(TimerTask task,
                     String newTaskName)
Edit task.

Parameters:
task - task to edit
newTaskName - new task name

moveTask

public void moveTask(TimerTask destination,
                     Collection<TimerTask> tasksToMove)
Move task.

Parameters:
destination - task to move to
tasksToMove - tasks to move

mergeTasks

public void mergeTasks(TimerTask destinationTask,
                       List<TimerTask> otherTasks)
Merge tasks.

Parameters:
destinationTask - task where task will be merged
otherTasks - task to merge in first task

mergeTwoTasks

protected void mergeTwoTasks(TimerTask destinationTask,
                             TimerTask otherTask)
Merge two task together.

Parameters:
destinationTask - task where task will be merged
otherTask - task to merge in first task

addAnnotation

public void addAnnotation(TimerTask task,
                          Date date,
                          String annotation)
Add annotation on task for specified calendar, and send event.

Parameters:
task - task
date - day of annotation
annotation - annotation

modifyAlert

public void modifyAlert(TimerTask task)
Notify alert modification.

Parameters:
task - task where alert has been modified


Copyright © 2007-2012 CodeLutin. All Rights Reserved.