1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 package org.apache.struts2.util;
23
24 import java.text.DateFormat;
25 import java.text.ParseException;
26 import java.text.SimpleDateFormat;
27 import java.util.Date;
28
29
30 /***
31 * A bean that can be used to format dates
32 *
33 */
34 public class DateFormatter {
35
36 Date date;
37 DateFormat format;
38
39
40 DateFormat parser;
41
42
43
44 public DateFormatter() {
45 this.parser = new SimpleDateFormat();
46 this.format = new SimpleDateFormat();
47 this.date = new Date();
48 }
49
50
51 public void setDate(String date) {
52 try {
53 this.date = parser.parse(date);
54 } catch (ParseException e) {
55 throw new IllegalArgumentException(e.getMessage());
56 }
57 }
58
59 public void setDate(Date date) {
60 this.date = (date == null) ? null : (Date)date.clone();
61 }
62
63 public void setDate(int date) {
64 setDate(Integer.toString(date));
65 }
66
67 public Date getDate() {
68 return this.date;
69 }
70
71 public void setFormat(String format) {
72 this.format = new SimpleDateFormat(format);
73 }
74
75 public void setFormat(DateFormat format) {
76 this.format = format;
77 }
78
79 public String getFormattedDate() {
80 return format.format(date);
81 }
82
83 public void setParseFormat(String format) {
84 this.parser = new SimpleDateFormat(format);
85 }
86
87 public void setParser(DateFormat parser) {
88 this.parser = parser;
89 }
90
91 public void setTime(long time) {
92 date.setTime(time);
93 }
94 }