@Override
    public int compare(WorkoutValueObjectGwt o1, WorkoutValueObjectGwt o2) {
      if (o1 == o2) {
        return 0;
      }

      if (o1 != null) {
        return (o2 != null) ? -1 * o1.getDate().compareTo(o2.getDate()) : -1;
      }

      return -1;
    }
    private void onLoadWorkoutsSuccess(WorkoutSummaryValueObjectGwt _summary) {
      m_workoutSummary = _summary;

      m_workouts.clear();

      for (WorkoutValueObjectGwt workout : _summary.getRecentWorkouts()) {
        workout.setDate(GwtDateUtil.getLocalDate(workout.getDate()));
        m_workouts.add(workout);
      }

      Collections.sort(m_workouts, m_workoutSorter);

      m_handlerManager.fireEvent(new DataChangedEvent(ChangedData.Workout, DataAction.Load));
    }