com.jidesoft.grouper.date.DateWeekOfMonthGrouper Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jide-oss Show documentation
Show all versions of jide-oss Show documentation
JIDE Common Layer (Professional Swing Components)
package com.jidesoft.grouper.date;
import com.jidesoft.grouper.GroupResources;
import com.jidesoft.grouper.GrouperContext;
import java.util.Calendar;
import java.util.Locale;
public class DateWeekOfMonthGrouper extends DateGrouper {
public static GrouperContext CONTEXT = new GrouperContext("DateWeekOfMonth");
private static Object[] _groups = null;
public static Object[] getAvailableGroups() {
if (_groups == null) {
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, 2010);
cal.set(Calendar.MONTH, 0);
cal.set(Calendar.DAY_OF_MONTH, 1);
_groups = new Object[6]; // maximum 6 weeks in a month
for (int i = 0; i < _groups.length; i++) {
_groups[i] = getCalendarField(cal, Calendar.WEEK_OF_MONTH);
cal.roll(Calendar.WEEK_OF_MONTH, 1);
}
}
return _groups;
}
public Object getValue(Object value) {
Object field = getCalendarField(value, Calendar.WEEK_OF_MONTH);
if (field instanceof Integer && (Integer) field > 0 && (Integer) field <= getAvailableGroups().length) {
return getAvailableGroups()[((Integer) field) - 1];
}
else {
return null;
}
}
public String getName() {
return GroupResources.getResourceBundle(Locale.getDefault()).getString("Date.weekOfMonth");
}
// public static void main(String[] args) {
// ObjectGrouper grouper = new DateWeekOfMonthGrouper();
// Calendar calendar = Calendar.getInstance();
// for (int i = 0; i < 40; i++) {
// System.out.println(grouper.getValue(calendar));
// calendar.roll(Calendar.DAY_OF_YEAR, 7);
// }
// }
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy