001 /*
002 * Licensed to the Apache Software Foundation (ASF) under one or more
003 * contributor license agreements. See the NOTICE file distributed with
004 * this work for additional information regarding copyright ownership.
005 * The ASF licenses this file to You under the Apache License, Version 2.0
006 * (the "License"); you may not use this file except in compliance with
007 * the License. You may obtain a copy of the License at
008 *
009 * http://www.apache.org/licenses/LICENSE-2.0
010 *
011 * Unless required by applicable law or agreed to in writing, software
012 * distributed under the License is distributed on an "AS IS" BASIS,
013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014 * See the License for the specific language governing permissions and
015 * limitations under the License.
016 */
017 package dates;
018
019 import java.util.*;
020
021 public class JspCalendar {
022 Calendar calendar = null;
023
024 public JspCalendar() {
025 calendar = Calendar.getInstance();
026 Date trialTime = new Date();
027 calendar.setTime(trialTime);
028 }
029
030 public int getYear() {
031 return calendar.get(Calendar.YEAR);
032 }
033
034 public String getMonth() {
035 int m = getMonthInt();
036 String[] months = new String [] { "January", "February", "March",
037 "April", "May", "June",
038 "July", "August", "September",
039 "October", "November", "December" };
040 if (m > 12)
041 return "Unknown to Man";
042
043 return months[m - 1];
044
045 }
046
047 public String getDay() {
048 int x = getDayOfWeek();
049 String[] days = new String[] {"Sunday", "Monday", "Tuesday", "Wednesday",
050 "Thursday", "Friday", "Saturday"};
051
052 if (x > 7)
053 return "Unknown to Man";
054
055 return days[x - 1];
056
057 }
058
059 public int getMonthInt() {
060 return 1 + calendar.get(Calendar.MONTH);
061 }
062
063 public String getDate() {
064 return getMonthInt() + "/" + getDayOfMonth() + "/" + getYear();
065
066 }
067
068 public String getTime() {
069 return getHour() + ":" + getMinute() + ":" + getSecond();
070 }
071
072 public int getDayOfMonth() {
073 return calendar.get(Calendar.DAY_OF_MONTH);
074 }
075
076 public int getDayOfYear() {
077 return calendar.get(Calendar.DAY_OF_YEAR);
078 }
079
080 public int getWeekOfYear() {
081 return calendar.get(Calendar.WEEK_OF_YEAR);
082 }
083
084 public int getWeekOfMonth() {
085 return calendar.get(Calendar.WEEK_OF_MONTH);
086 }
087
088 public int getDayOfWeek() {
089 return calendar.get(Calendar.DAY_OF_WEEK);
090 }
091
092 public int getHour() {
093 return calendar.get(Calendar.HOUR_OF_DAY);
094 }
095
096 public int getMinute() {
097 return calendar.get(Calendar.MINUTE);
098 }
099
100
101 public int getSecond() {
102 return calendar.get(Calendar.SECOND);
103 }
104
105 public static void main(String args[]) {
106 JspCalendar db = new JspCalendar();
107 p("date: " + db.getDayOfMonth());
108 p("year: " + db.getYear());
109 p("month: " + db.getMonth());
110 p("time: " + db.getTime());
111 p("date: " + db.getDate());
112 p("Day: " + db.getDay());
113 p("DayOfYear: " + db.getDayOfYear());
114 p("WeekOfYear: " + db.getWeekOfYear());
115 p("era: " + db.getEra());
116 p("ampm: " + db.getAMPM());
117 p("DST: " + db.getDSTOffset());
118 p("ZONE Offset: " + db.getZoneOffset());
119 p("TIMEZONE: " + db.getUSTimeZone());
120 }
121
122 private static void p(String x) {
123 System.out.println(x);
124 }
125
126
127 public int getEra() {
128 return calendar.get(Calendar.ERA);
129 }
130
131 public String getUSTimeZone() {
132 String[] zones = new String[] {"Hawaii", "Alaskan", "Pacific",
133 "Mountain", "Central", "Eastern"};
134
135 return zones[10 + getZoneOffset()];
136 }
137
138 public int getZoneOffset() {
139 return calendar.get(Calendar.ZONE_OFFSET)/(60*60*1000);
140 }
141
142
143 public int getDSTOffset() {
144 return calendar.get(Calendar.DST_OFFSET)/(60*60*1000);
145 }
146
147
148 public int getAMPM() {
149 return calendar.get(Calendar.AM_PM);
150 }
151 }
152