]> gitweb @ CieloNegro.org - task-reporter.git/blob - src/main/scala/jp/ymir/taskReporter/core/ReportSet.scala
wip
[task-reporter.git] / src / main / scala / jp / ymir / taskReporter / core / ReportSet.scala
1 package jp.ymir.taskReporter.core
2 import java.io._
3 import java.util.Calendar
4 import jp.ymir.taskReporter.core._
5 import scala.collection.immutable._
6 import scala.io._
7
8 class ReportSet(private var _file: Option[File]) {
9   private var _dirty = false
10   private var _reports : SortedMap[Calendar, Report] = TreeMap()
11
12   if (!_file.isEmpty) {
13     val src = Source.fromFile(_file.get, "UTF-8")
14     for (line <- src.getLines) {
15       if (!line.isEmpty) {
16         val task = new Task(line)
17         if (_reports.isDefinedAt(task.date)) {
18           _reports(task.date) += task
19         }
20         else {
21           val report = new Report(task.date)
22           report += task
23           _reports = _reports + (report.date -> report)
24         }
25       }
26     }
27   }
28
29   def file = _file
30   def file_=(f: Option[File]) { _file = f }
31
32   def dirty = _dirty
33
34   def save {
35     // FIXME
36     _dirty = false
37   }
38 }