Java tutorial
/* Copyright (C) 2013 NTT DATA Corporation This program is free software; you can redistribute it and/or Modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. */ package com.clustercontrol.calendar.dialog; import java.text.ParseException; import java.util.Date; import java.util.List; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.eclipse.jface.dialogs.MessageDialog; import org.eclipse.swt.SWT; import org.eclipse.swt.events.ModifyEvent; import org.eclipse.swt.events.ModifyListener; import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Combo; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Group; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Text; import com.clustercontrol.bean.DataRangeConstant; import com.clustercontrol.bean.DayOfWeekConstant; import com.clustercontrol.bean.RequiredFieldColorConstant; import com.clustercontrol.calendar.bean.DayOfWeekInMonthConstant; import com.clustercontrol.calendar.bean.MonthConstant; import com.clustercontrol.calendar.util.CalendarEndpointWrapper; import com.clustercontrol.composite.action.NumberKeyListener; import com.clustercontrol.composite.action.StringVerifyListener; import com.clustercontrol.dialog.CommonDialog; import com.clustercontrol.dialog.ValidateResult; import com.clustercontrol.util.HinemosMessage; import com.clustercontrol.util.Messages; import com.clustercontrol.util.TimeStringConverter; import com.clustercontrol.util.WidgetTestUtil; import com.clustercontrol.ws.calendar.CalendarDetailInfo; import com.clustercontrol.ws.calendar.CalendarPatternInfo; import com.clustercontrol.ws.calendar.InvalidRole_Exception; /** * ?<BR> * * @version 4.1.0 * @since 4.1.0 */ public class CalendarDetailDialog extends CommonDialog { // ----- instance ----- // // private static Log m_log = LogFactory.getLog(CalendarDetailDialog.class); /* ----- ----- */ /** * ??? * ?????????????? * ?????????? */ private final int DIALOG_WIDTH = 8; /** ??? */ private CalendarDetailInfo inputData = null; /** ???? */ private ValidateResult m_validateResult = null; // ----- ? ----- // private Shell shell = null; private Group calDetailYearGroup = null; // private Group calDetailMonthGroup = null; // private Group calDetailDateGroup = null;// private Group calDetailAfterDateGroup = null; //x private Group calDetailTimeGroup = null; // private Group calDetailOptGroup = null; //? private Group calDetailSubstituteGroup = null; // ? /****/ // private Button calDetailEveryYearRadio = null; private Button calDetailSpecifyYearRadio = null; // private Button calDetailAllDayRadio = null; private Button calDetailDayOfWeekRadio = null; private Button calDetailDateRadio = null; private Button calDetailCalPatternRadio = null; ///? private Button calDetailOptOnRadio = null; private Button calDetailOptOffRadio = null; // ? private Button calDetailSubstituteCheck = null; private Text calDetailSubstituteTime = null; private Text calDetailSubstituteLimit = null; /****/ private Combo calDetailMonthCombo = null; private Combo calDetailDayOfWeekCombo = null; private Combo calDetailDayOfWeekInMonthCombo = null; private Combo calDetailDayGroup = null; private Combo calDetailCalPatternCombo = null; /****/ // private Text calDetailDescriptionText = null; // private Text calDetailYearText = null; //????? ??x private Text calDetailDaysLaterText = null; // - private Text calDetailTimeFromText = null; // - private Text calDetailTimeToText = null; // ID private String ownerRoleId = null; /** ??? */ private String managerName = null; // private Map<String, String> calPatternMap = null; /** * * @return */ public CalendarDetailInfo getInputData() { return this.inputData; } // ----- ----- // /** * ????? * * @param parent * ? * @param managerName ??? * @param ownerRoleId ID */ public CalendarDetailDialog(Shell parent, String managerName, String ownerRoleId) { super(parent); this.managerName = managerName; this.ownerRoleId = ownerRoleId; } /** * ???? * * @param parent ? * @param managerName ??? * @param identifier ??? * @param ownerRoleId ID */ public CalendarDetailDialog(Shell parent, String managerName, int order, String ownerRoleId) { super(parent); this.managerName = managerName; this.ownerRoleId = ownerRoleId; } /** * ????? * * @param parent * ? * @param managerName ??? * @param detailInfo * @param ownerRoleId ID */ public CalendarDetailDialog(Shell parent, String managerName, CalendarDetailInfo detailInfo, String ownerRoleId) { super(parent); this.managerName = managerName; this.inputData = detailInfo; this.ownerRoleId = ownerRoleId; } // ----- instance ----- // /** * ???? * * @param parent * ? */ @Override protected void customizeDialog(Composite parent) { shell = this.getShell(); // //[?] shell.setText(Messages.getString("dialog.calendar.detail.create.modify")); // GridData gridData = new GridData(); GridLayout layout = new GridLayout(1, true); layout.marginWidth = 10; layout.marginHeight = 10; layout.numColumns = DIALOG_WIDTH; parent.setLayout(layout); /* * */ // Label label = new Label(parent, SWT.LEFT); WidgetTestUtil.setTestId(this, null, label); gridData = new GridData(); gridData.horizontalSpan = 3; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; label.setLayoutData(gridData); label.setText(" " + Messages.getString("description")); // calDetailDescriptionText = new Text(parent, SWT.BORDER); WidgetTestUtil.setTestId(this, "description", calDetailDescriptionText); gridData = new GridData(); gridData.horizontalSpan = 4; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; calDetailDescriptionText.setLayoutData(gridData); calDetailDescriptionText.addVerifyListener(new StringVerifyListener(DataRangeConstant.VARCHAR_256)); calDetailDescriptionText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent arg0) { update(); } }); /* * ? */ calDetailYearGroup = new Group(parent, SWT.NONE); WidgetTestUtil.setTestId(this, "year", calDetailYearGroup); layout = new GridLayout(1, true); layout.marginWidth = 5; layout.marginHeight = 5; layout.numColumns = 8; calDetailYearGroup.setLayout(layout); gridData = new GridData(); gridData.horizontalSpan = DIALOG_WIDTH; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; calDetailYearGroup.setLayoutData(gridData); // calDetailYearGroup.setText(Messages.getString("year")); /* * */ //? this.calDetailEveryYearRadio = new Button(calDetailYearGroup, SWT.RADIO); WidgetTestUtil.setTestId(this, "year", calDetailEveryYearRadio); // this.calDetailEveryYearRadio.setText(Messages.getString("calendar.detail.every.year")); GridData gridYearRadio = new GridData(); gridYearRadio.horizontalSpan = 8; gridYearRadio.horizontalAlignment = GridData.FILL; gridYearRadio.grabExcessHorizontalSpace = true; this.calDetailEveryYearRadio.setLayoutData(gridYearRadio); this.calDetailEveryYearRadio.setSelection(true); // ? this.calDetailEveryYearRadio.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { update(); } }); //? this.calDetailSpecifyYearRadio = new Button(calDetailYearGroup, SWT.RADIO); WidgetTestUtil.setTestId(this, "specifyyear", calDetailSpecifyYearRadio); // this.calDetailSpecifyYearRadio.setText(Messages.getString("calendar.detail.specify.year")); gridYearRadio = new GridData(); gridYearRadio.horizontalSpan = 3; gridYearRadio.horizontalAlignment = GridData.FILL; gridYearRadio.grabExcessHorizontalSpace = true; this.calDetailSpecifyYearRadio.setLayoutData(gridYearRadio); // ? this.calDetailSpecifyYearRadio.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { update(); } }); // calDetailYearText = new Text(calDetailYearGroup, SWT.BORDER); WidgetTestUtil.setTestId(this, "year", calDetailYearText); gridData = new GridData(); gridData.horizontalSpan = 2; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; calDetailYearText.setLayoutData(gridData); calDetailYearText.setTextLimit(4); calDetailYearText.addKeyListener(new NumberKeyListener()); calDetailYearText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent arg0) { if ("-".equals(calDetailYearText.getText())) { calDetailYearText.setText(""); } update(); } }); // label = new Label(calDetailYearGroup, SWT.LEFT); WidgetTestUtil.setTestId(this, null, label); gridData = new GridData(); gridData.horizontalSpan = 1; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; label.setLayoutData(gridData); label.setText(Messages.getString("year")); /* * ? */ calDetailMonthGroup = new Group(parent, SWT.NONE); WidgetTestUtil.setTestId(this, "month", calDetailMonthGroup); layout = new GridLayout(1, true); layout.marginWidth = 5; layout.marginHeight = 5; layout.numColumns = 8; calDetailMonthGroup.setLayout(layout); gridData = new GridData(); gridData.horizontalSpan = DIALOG_WIDTH; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; calDetailMonthGroup.setLayoutData(gridData); // calDetailMonthGroup.setText(Messages.getString("month")); /* * */ // Label lblCalID = new Label(calDetailMonthGroup, SWT.LEFT); WidgetTestUtil.setTestId(this, "calid", lblCalID); gridData = new GridData(); gridData.horizontalSpan = 3; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; lblCalID.setLayoutData(gridData); lblCalID.setText(Messages.getString("month")); // this.calDetailMonthCombo = new Combo(calDetailMonthGroup, SWT.RIGHT | SWT.BORDER | SWT.READ_ONLY); WidgetTestUtil.setTestId(this, "month", calDetailMonthCombo); gridData = new GridData(); gridData.horizontalSpan = 2; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; this.calDetailMonthCombo.setLayoutData(gridData); //?112??? for (int i = 0; i < 13; i++) { this.calDetailMonthCombo.add(MonthConstant.typeToString(i)); } //??? this.calDetailMonthCombo.setText(MonthConstant.typeToString(0)); /* * ? * */ calDetailDateGroup = new Group(parent, SWT.NONE); WidgetTestUtil.setTestId(this, "date", calDetailDateGroup); layout = new GridLayout(1, true); layout.marginWidth = 5; layout.marginHeight = 5; layout.numColumns = 8; calDetailDateGroup.setLayout(layout); gridData = new GridData(); gridData.horizontalSpan = DIALOG_WIDTH; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; calDetailDateGroup.setLayoutData(gridData); calDetailDateGroup.setText(Messages.getString("monthday")); //????? this.calDetailAllDayRadio = new Button(calDetailDateGroup, SWT.RADIO); WidgetTestUtil.setTestId(this, "allday", calDetailAllDayRadio); //???? this.calDetailAllDayRadio.setText(Messages.getString("calendar.detail.everyday")); GridData gridDataRadio = new GridData(); gridDataRadio.horizontalSpan = 3; gridDataRadio.horizontalAlignment = GridData.FILL; gridDataRadio.grabExcessHorizontalSpace = true; this.calDetailAllDayRadio.setLayoutData(gridDataRadio); this.calDetailAllDayRadio.setSelection(true); // ? this.calDetailAllDayRadio.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { update(); } }); // label = new Label(calDetailDateGroup, SWT.NONE); WidgetTestUtil.setTestId(this, "blank", label); gridData = new GridData(); gridData.horizontalSpan = 5; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; label.setLayoutData(gridData); //? this.calDetailDayOfWeekRadio = new Button(calDetailDateGroup, SWT.RADIO); WidgetTestUtil.setTestId(this, "dayofweek", calDetailDayOfWeekRadio); this.calDetailDayOfWeekRadio.setText(Messages.getString("weekday")); gridDataRadio = new GridData(); gridDataRadio.horizontalSpan = 3; gridDataRadio.horizontalAlignment = GridData.FILL; gridDataRadio.grabExcessHorizontalSpace = true; this.calDetailDayOfWeekRadio.setLayoutData(gridDataRadio); // ? this.calDetailDayOfWeekRadio.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { update(); } }); //x?? this.calDetailDayOfWeekInMonthCombo = new Combo(calDetailDateGroup, SWT.RIGHT | SWT.BORDER | SWT.READ_ONLY); WidgetTestUtil.setTestId(this, "dayofweekinmonth", calDetailDayOfWeekInMonthCombo); gridData = new GridData(); gridData.horizontalSpan = 2; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; this.calDetailDayOfWeekInMonthCombo.setLayoutData(gridData); //?15???? String dayOfWeekInMonth[] = new String[6]; for (int i = 0; i < dayOfWeekInMonth.length; i++) { dayOfWeekInMonth[i] = DayOfWeekInMonthConstant.typeToString(i); this.calDetailDayOfWeekInMonthCombo.add(dayOfWeekInMonth[i]); } this.calDetailDayOfWeekInMonthCombo.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { update(); } }); //?? this.calDetailDayOfWeekCombo = new Combo(calDetailDateGroup, SWT.RIGHT | SWT.BORDER | SWT.READ_ONLY); WidgetTestUtil.setTestId(this, "dayofweek", calDetailDayOfWeekCombo); gridData = new GridData(); gridData.horizontalSpan = 2; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; this.calDetailDayOfWeekCombo.setLayoutData(gridData); //????? String dayOfWeek[] = new String[7]; for (int i = 0; i < dayOfWeek.length; i++) { dayOfWeek[i] = DayOfWeekConstant.typeToString(i + 1); this.calDetailDayOfWeekCombo.add(dayOfWeek[i]); } this.calDetailDayOfWeekCombo.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { update(); } }); // label = new Label(calDetailDateGroup, SWT.NONE); WidgetTestUtil.setTestId(this, "blank", label); gridData = new GridData(); gridData.horizontalSpan = 1; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; label.setLayoutData(gridData); //?? this.calDetailDateRadio = new Button(calDetailDateGroup, SWT.RADIO); WidgetTestUtil.setTestId(this, "date", calDetailDateRadio); this.calDetailDateRadio.setText(Messages.getString("monthday")); gridDataRadio = new GridData(); gridDataRadio.horizontalSpan = 3; gridDataRadio.horizontalAlignment = GridData.FILL; gridDataRadio.grabExcessHorizontalSpace = true; this.calDetailDateRadio.setLayoutData(gridDataRadio); // ? this.calDetailDateRadio.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { update(); } }); //??? this.calDetailDayGroup = new Combo(calDetailDateGroup, SWT.RIGHT | SWT.READ_ONLY); WidgetTestUtil.setTestId(this, "day", calDetailDayGroup); gridData = new GridData(); gridData.horizontalSpan = 2; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; this.calDetailDayGroup.setLayoutData(gridData); //131 String date[] = new String[31]; // date[0] = ""; // this.cmbDays.add(date[0]); for (int i = 0; i < date.length; i++) { date[i] = (i + 1) + ""; this.calDetailDayGroup.add(date[i]); } this.calDetailDayGroup.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { update(); } }); // Label day = new Label(calDetailDateGroup, SWT.LEFT); WidgetTestUtil.setTestId(this, "day", day); gridData = new GridData(); gridData.horizontalSpan = 2; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; day.setLayoutData(gridData); day.setText(Messages.getString("monthday")); // label = new Label(calDetailDateGroup, SWT.NONE); WidgetTestUtil.setTestId(this, "blank", label); gridData = new GridData(); gridData.horizontalSpan = 1; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; label.setLayoutData(gridData); //??? this.calDetailCalPatternRadio = new Button(calDetailDateGroup, SWT.RADIO); WidgetTestUtil.setTestId(this, "calpattern", calDetailCalPatternRadio); this.calDetailCalPatternRadio.setText(Messages.getString("calendar.pattern")); gridDataRadio = new GridData(); gridDataRadio.horizontalSpan = 3; gridDataRadio.horizontalAlignment = GridData.FILL; gridDataRadio.grabExcessHorizontalSpace = true; this.calDetailCalPatternRadio.setLayoutData(gridDataRadio); // ? this.calDetailCalPatternRadio.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { update(); } }); //??? this.calDetailCalPatternCombo = new Combo(calDetailDateGroup, SWT.RIGHT | SWT.BORDER | SWT.READ_ONLY); WidgetTestUtil.setTestId(this, "calpattern", calDetailCalPatternCombo); gridData = new GridData(); gridData.horizontalSpan = 4; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; gridData.widthHint = 150; this.calDetailCalPatternCombo.setLayoutData(gridData); this.calDetailCalPatternCombo.add(""); this.calPatternMap = new ConcurrentHashMap<>(); for (CalendarPatternInfo str : getCalendarPatternList(this.managerName, this.ownerRoleId)) { this.calDetailCalPatternCombo.add(str.getCalPatternName()); calPatternMap.put(str.getCalPatternId(), str.getCalPatternName()); } this.calDetailCalPatternCombo.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { update(); } }); //? calDetailAfterDateGroup = new Group(parent, SWT.NONE); WidgetTestUtil.setTestId(this, "afterdate", calDetailAfterDateGroup); layout = new GridLayout(1, true); layout.marginWidth = 5; layout.marginHeight = 5; layout.numColumns = 8; calDetailAfterDateGroup.setLayout(layout); gridData = new GridData(); gridData.horizontalSpan = DIALOG_WIDTH; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; calDetailAfterDateGroup.setLayoutData(gridData); calDetailAfterDateGroup.setText(Messages.getString("calendar.detail.before.after")); // ??x label = new Label(calDetailAfterDateGroup, SWT.NONE); WidgetTestUtil.setTestId(this, "afterdategroup", label); gridData = new GridData(); gridData.horizontalSpan = 3; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; label.setLayoutData(gridData); //? label.setText(Messages.getString("calendar.detail.after.1") + ""); // calDetailDaysLaterText = new Text(calDetailAfterDateGroup, SWT.BORDER | SWT.RIGHT); WidgetTestUtil.setTestId(this, "dayslater", calDetailDaysLaterText); gridData = new GridData(); gridData.horizontalSpan = 2; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; calDetailDaysLaterText.setLayoutData(gridData); calDetailDaysLaterText.setTextLimit(8); calDetailDaysLaterText.setText("0"); calDetailDaysLaterText.setToolTipText(Messages.getString("calendar.detail.notes") + ""); calDetailDaysLaterText.addKeyListener(new NumberKeyListener()); calDetailDaysLaterText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent arg0) { update(); } }); // ??x label = new Label(calDetailAfterDateGroup, SWT.NONE); WidgetTestUtil.setTestId(this, "afterdategroup", label); gridData = new GridData(); gridData.horizontalSpan = 1; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; label.setLayoutData(gridData); //" label.setText(Messages.getString("calendar.detail.after.2") + ""); // ? calDetailSubstituteGroup = new Group(parent, SWT.NONE); WidgetTestUtil.setTestId(this, "substitute", calDetailSubstituteGroup); layout = new GridLayout(1, true); layout.marginWidth = 5; layout.marginHeight = 5; layout.numColumns = 8; calDetailSubstituteGroup.setLayout(layout); gridData = new GridData(); gridData.horizontalSpan = DIALOG_WIDTH; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; calDetailSubstituteGroup.setLayoutData(gridData); calDetailSubstituteGroup.setText(Messages.getString("calendar.detail.substitute")); // ? calDetailSubstituteCheck = new Button(calDetailSubstituteGroup, SWT.CHECK); WidgetTestUtil.setTestId(this, "substituteCheck", calDetailSubstituteCheck); calDetailSubstituteCheck.setText(Messages.getString("calendar.detail.substitute.check")); gridData = new GridData(); gridData.horizontalSpan = 8; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; calDetailSubstituteCheck.setLayoutData(gridData); calDetailSubstituteCheck.setSelection(false); calDetailSubstituteCheck.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { update(); } }); //? label = new Label(calDetailSubstituteGroup, SWT.NONE); gridData = new GridData(); gridData.horizontalSpan = 3; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; label.setLayoutData(gridData); label.setText(Messages.getString("calendar.detail.substitute.time")); //?? calDetailSubstituteTime = new Text(calDetailSubstituteGroup, SWT.BORDER | SWT.LEFT); WidgetTestUtil.setTestId(this, "substituteTime", calDetailSubstituteTime); gridData = new GridData(); gridData.horizontalSpan = 2; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; calDetailSubstituteTime.setEnabled(false); calDetailSubstituteTime.setLayoutData(gridData); calDetailSubstituteTime.setTextLimit(5); // 24h*366day=8784??5? calDetailSubstituteTime.setText("24"); calDetailSubstituteTime.addKeyListener(new NumberKeyListener()); calDetailSubstituteTime.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent arg0) { update(); } }); // label = new Label(calDetailSubstituteGroup, SWT.NONE); WidgetTestUtil.setTestId(this, "substituteTimePeriod", label); gridData = new GridData(); gridData.horizontalSpan = 1; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; label.setLayoutData(gridData); // label.setText(Messages.getString("time.period") + ""); //?? label = new Label(calDetailSubstituteGroup, SWT.NONE); gridData = new GridData(); gridData.horizontalSpan = 3; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; label.setLayoutData(gridData); label.setText(Messages.getString("calendar.detail.substitute.limit")); //?? calDetailSubstituteLimit = new Text(calDetailSubstituteGroup, SWT.BORDER | SWT.LEFT); WidgetTestUtil.setTestId(this, "transferupper", calDetailSubstituteLimit); gridData = new GridData(); gridData.horizontalSpan = 4; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; calDetailSubstituteLimit.setEnabled(false); calDetailSubstituteLimit.setLayoutData(gridData); calDetailSubstituteLimit.setTextLimit(2); calDetailSubstituteLimit.setText("10"); calDetailSubstituteLimit.addKeyListener(new NumberKeyListener()); calDetailSubstituteLimit.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent arg0) { update(); } }); /* * */ calDetailTimeGroup = new Group(parent, SWT.NONE); WidgetTestUtil.setTestId(this, "time", calDetailTimeGroup); layout = new GridLayout(1, true); layout.marginWidth = 5; layout.marginHeight = 5; layout.numColumns = 8; calDetailTimeGroup.setLayout(layout); gridData = new GridData(); gridData.horizontalSpan = DIALOG_WIDTH; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; calDetailTimeGroup.setLayoutData(gridData); calDetailTimeGroup.setText(Messages.getString("time.period")); // // label = new Label(calDetailTimeGroup, SWT.NONE); WidgetTestUtil.setTestId(this, "calDetailTimeGroup", calDetailTimeGroup); gridData = new GridData(); gridData.horizontalSpan = 3; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; label.setLayoutData(gridData); label.setText(Messages.getString("start") + Messages.getString("timestamp") + ""); // calDetailTimeFromText = new Text(calDetailTimeGroup, SWT.BORDER | SWT.LEFT); WidgetTestUtil.setTestId(this, "timefrom", calDetailTimeFromText); gridData = new GridData(); gridData.horizontalSpan = 4; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; calDetailTimeFromText.setLayoutData(gridData); calDetailTimeFromText.setTextLimit(9); calDetailTimeFromText.setText("00:00:00"); calDetailTimeFromText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent arg0) { update(); } }); // label = new Label(calDetailTimeGroup, SWT.NONE); WidgetTestUtil.setTestId(this, "blank", label); gridData = new GridData(); gridData.horizontalSpan = 1; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; label.setLayoutData(gridData); // label = new Label(calDetailTimeGroup, SWT.NONE); WidgetTestUtil.setTestId(this, "endtimestamp", label); gridData = new GridData(); gridData.horizontalSpan = 3; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; label.setLayoutData(gridData); label.setText(Messages.getString("end") + Messages.getString("timestamp") + ""); // calDetailTimeToText = new Text(calDetailTimeGroup, SWT.BORDER | SWT.LEFT); WidgetTestUtil.setTestId(this, "timeto", calDetailTimeToText); gridData = new GridData(); gridData.horizontalSpan = 4; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; calDetailTimeToText.setLayoutData(gridData); calDetailTimeToText.setTextLimit(9); calDetailTimeToText.setText("24:00:00"); calDetailTimeToText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent arg0) { update(); } }); /* * ? */ calDetailOptGroup = new Group(parent, SWT.NONE); WidgetTestUtil.setTestId(this, "opt", calDetailOptGroup); layout = new GridLayout(1, true); layout.marginWidth = 5; layout.marginHeight = 5; layout.numColumns = 6; calDetailOptGroup.setLayout(layout); gridData = new GridData(); gridData.horizontalSpan = DIALOG_WIDTH; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; calDetailOptGroup.setLayoutData(gridData); calDetailOptGroup.setText(Messages.getString("calendar.detail.operation.3")); // this.calDetailOptOnRadio = new Button(calDetailOptGroup, SWT.RADIO); WidgetTestUtil.setTestId(this, "opton", calDetailOptOnRadio); this.calDetailOptOnRadio.setText(Messages.getString("calendar.detail.operation.1")); this.calDetailOptOnRadio.setSelection(true); gridDataRadio = new GridData(); gridDataRadio.horizontalSpan = 2; gridDataRadio.horizontalAlignment = GridData.FILL; gridDataRadio.grabExcessHorizontalSpace = true; this.calDetailOptOnRadio.setLayoutData(gridDataRadio); this.calDetailOptOnRadio.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { update(); } }); //? this.calDetailOptOffRadio = new Button(calDetailOptGroup, SWT.RADIO); WidgetTestUtil.setTestId(this, "offradio", calDetailOptOffRadio); this.calDetailOptOffRadio.setText(Messages.getString("calendar.detail.operation.2")); gridDataRadio = new GridData(); gridDataRadio.horizontalSpan = 2; gridDataRadio.horizontalAlignment = GridData.FILL; gridDataRadio.grabExcessHorizontalSpace = true; this.calDetailOptOffRadio.setLayoutData(gridDataRadio); this.calDetailOptOffRadio.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { update(); } }); shell.pack(); // ?? Display calDetailDisplay = shell.getDisplay(); shell.setLocation((calDetailDisplay.getBounds().width - shell.getSize().x) / 2, (calDetailDisplay.getBounds().height - shell.getSize().y) / 2); // ? this.update(); this.reflectCalendar(); } /** * ? * */ public void update() { // //?? if (calDetailEveryYearRadio.getSelection()) { calDetailYearText.setEnabled(false); } else {//?? calDetailYearText.setEnabled(true); } //?????? if (calDetailAllDayRadio.getSelection()) { calDetailDayOfWeekInMonthCombo.setEnabled(false); calDetailDayOfWeekCombo.setEnabled(false); calDetailDayGroup.setEnabled(false); calDetailDaysLaterText.setEnabled(false); } else { calDetailDayOfWeekInMonthCombo.setEnabled(true); calDetailDayOfWeekCombo.setEnabled(true); calDetailDayGroup.setEnabled(true); calDetailCalPatternCombo.setEnabled(true); calDetailDaysLaterText.setEnabled(true); } //?? if (calDetailDayOfWeekRadio.getSelection()) { calDetailDayOfWeekInMonthCombo.setEnabled(true); calDetailDayOfWeekCombo.setEnabled(true); calDetailDayGroup.setEnabled(false); calDetailCalPatternCombo.setEnabled(false); } else { calDetailDayOfWeekInMonthCombo.setEnabled(false); calDetailDayOfWeekCombo.setEnabled(false); } //?? if (calDetailDateRadio.getSelection()) { calDetailDayOfWeekInMonthCombo.setEnabled(false); calDetailDayOfWeekCombo.setEnabled(false); calDetailDayGroup.setEnabled(true); calDetailCalPatternCombo.setEnabled(false); } else { calDetailDayGroup.setEnabled(false); } //?? if (calDetailCalPatternRadio.getSelection()) { calDetailDayOfWeekInMonthCombo.setEnabled(false); calDetailDayOfWeekCombo.setEnabled(false); calDetailDayGroup.setEnabled(false); calDetailCalPatternCombo.setEnabled(true); } else { calDetailCalPatternCombo.setEnabled(false); } // if (calDetailYearText.getEnabled() && ("").equals(calDetailYearText.getText())) { calDetailYearText.setBackground(RequiredFieldColorConstant.COLOR_REQUIRED); } else { calDetailYearText.setBackground(RequiredFieldColorConstant.COLOR_UNREQUIRED); } // x if (calDetailDayOfWeekInMonthCombo.getEnabled() && ("").equals(calDetailDayOfWeekInMonthCombo.getText())) { calDetailDayOfWeekInMonthCombo.setBackground(RequiredFieldColorConstant.COLOR_REQUIRED); } else { calDetailDayOfWeekInMonthCombo.setBackground(RequiredFieldColorConstant.COLOR_UNREQUIRED); } // if (calDetailDayOfWeekCombo.getEnabled() && ("").equals(calDetailDayOfWeekCombo.getText())) { calDetailDayOfWeekCombo.setBackground(RequiredFieldColorConstant.COLOR_REQUIRED); } else { calDetailDayOfWeekCombo.setBackground(RequiredFieldColorConstant.COLOR_UNREQUIRED); } // if (calDetailDayGroup.getEnabled() && ("").equals(calDetailDayGroup.getText())) { calDetailDayGroup.setBackground(RequiredFieldColorConstant.COLOR_REQUIRED); } else { calDetailDayGroup.setBackground(RequiredFieldColorConstant.COLOR_UNREQUIRED); } // if (calDetailCalPatternCombo.getEnabled() && ("").equals(calDetailCalPatternCombo.getText())) { calDetailCalPatternCombo.setBackground(RequiredFieldColorConstant.COLOR_REQUIRED); } else { calDetailCalPatternCombo.setBackground(RequiredFieldColorConstant.COLOR_UNREQUIRED); } // if (("").equals(calDetailTimeFromText.getText())) { calDetailTimeFromText.setBackground(RequiredFieldColorConstant.COLOR_REQUIRED); } else { calDetailTimeFromText.setBackground(RequiredFieldColorConstant.COLOR_UNREQUIRED); } // if (("").equals(calDetailTimeToText.getText())) { calDetailTimeToText.setBackground(RequiredFieldColorConstant.COLOR_REQUIRED); } else { calDetailTimeToText.setBackground(RequiredFieldColorConstant.COLOR_UNREQUIRED); } // ? if (calDetailOptOnRadio.getSelection() && !calDetailOptOffRadio.getSelection()) { calDetailSubstituteCheck.setEnabled(true); // ?? if (calDetailSubstituteCheck.getSelection()) { calDetailSubstituteTime.setEnabled(true); calDetailSubstituteLimit.setEnabled(true); } else { calDetailSubstituteTime.setEnabled(false); calDetailSubstituteLimit.setEnabled(false); } } if (calDetailOptOffRadio.getSelection() && !calDetailOptOnRadio.getSelection()) { calDetailSubstituteCheck.setEnabled(false); calDetailSubstituteTime.setEnabled(false); calDetailSubstituteLimit.setEnabled(false); } // ? if (("").equals(calDetailSubstituteTime.getText())) { calDetailSubstituteTime.setBackground(RequiredFieldColorConstant.COLOR_REQUIRED); } else { calDetailSubstituteTime.setBackground(RequiredFieldColorConstant.COLOR_UNREQUIRED); } // ?? if (("").equals(calDetailSubstituteLimit.getText())) { calDetailSubstituteLimit.setBackground(RequiredFieldColorConstant.COLOR_REQUIRED); } else { calDetailSubstituteLimit.setBackground(RequiredFieldColorConstant.COLOR_UNREQUIRED); } } /** * ?????? * * @return ?? * * @see */ private CalendarDetailInfo createCalendarInfo() { /** */ Long timeFrom = null; /** */ Long timeTo = null; inputData = new CalendarDetailInfo(); /* * */ if (calDetailDescriptionText.getText().length() > 0) { this.inputData.setDescription(calDetailDescriptionText.getText()); } /* * ? */ if (calDetailEveryYearRadio.getSelection()) { //0 ? this.inputData.setYear(0); } else { if (calDetailYearText.getText() != null && calDetailYearText.getText().length() > 0) { try { this.inputData.setYear(Integer.parseInt(calDetailYearText.getText())); } catch (NumberFormatException e) { String[] args = { "[ " + Messages.getString("year") + " ]" }; this.setValidateResult(Messages.getString("message.hinemos.1"), Messages.getString("message.calendar.51", args)); return null; } } else { String[] args = { "[ " + Messages.getString("year") + " ]" }; this.setValidateResult(Messages.getString("message.hinemos.1"), Messages.getString("message.calendar.15", args)); return null; } } /* * ? */ if (calDetailMonthCombo.getText() != null && calDetailMonthCombo.getText().length() > 0) { this.inputData.setMonth(MonthConstant.stringToType(calDetailMonthCombo.getText())); } else { String[] args = { "[ " + Messages.getString("month") + " ]" }; this.setValidateResult(Messages.getString("message.hinemos.1"), Messages.getString("message.calendar.15", args)); return null; } /* * ? * * ? * 0 : ?? * 1 : * 2 : * 3 : ??? */ //???? if (calDetailAllDayRadio.getSelection()) { this.inputData.setDayType(0); } // else if (calDetailDayOfWeekRadio.getSelection()) { //x if (calDetailDayOfWeekInMonthCombo.getText() != null && calDetailDayOfWeekInMonthCombo.getText().length() > 0) { this.inputData.setDayOfWeekInMonth( DayOfWeekInMonthConstant.stringToType(calDetailDayOfWeekInMonthCombo.getText())); } else { String[] args = { "[ " + Messages.getString("calendar.detail.xth") + " ]" }; this.setValidateResult(Messages.getString("message.hinemos.1"), Messages.getString("message.calendar.15", args)); return null; } // if (calDetailDayOfWeekCombo.getText() != null && calDetailDayOfWeekCombo.getText().length() > 0) { this.inputData.setDayOfWeek(DayOfWeekConstant.stringToType(calDetailDayOfWeekCombo.getText())); } else { String[] args = { "[ " + Messages.getString("weekday") + " ]" }; this.setValidateResult(Messages.getString("message.hinemos.1"), Messages.getString("message.calendar.15", args)); return null; } this.inputData.setDayType(1); } // else if (calDetailDateRadio.getSelection()) { // if (calDetailDayGroup.getText() != null && calDetailDayGroup.getText().length() > 0) { this.inputData.setDate(Integer.parseInt(calDetailDayGroup.getText())); } else { String[] args = { "[ " + Messages.getString("monthday") + " ]" }; this.setValidateResult(Messages.getString("message.hinemos.1"), Messages.getString("message.calendar.15", args)); return null; } this.inputData.setDayType(2); } // else if (calDetailCalPatternRadio.getSelection()) { // if (calDetailCalPatternCombo.getText() != null && calDetailCalPatternCombo.getText().length() > 0) { this.inputData.setCalPatternId(getCalPatternId(calDetailCalPatternCombo.getText())); } else { String[] args = { "[ " + Messages.getString("calendar.pattern") + " ]" }; this.setValidateResult(Messages.getString("message.hinemos.1"), Messages.getString("message.calendar.15", args)); return null; } this.inputData.setDayType(3); } //????????????????...????? else { String[] args = { "[ " + Messages.getString("calendar.detail.date.type") + " ]" }; this.setValidateResult(Messages.getString("message.hinemos.1"), Messages.getString("message.calendar.15", args)); return null; } //? if (calDetailDaysLaterText.getText().length() > 0) { int daysLater = 0; try { daysLater = Integer.parseInt(calDetailDaysLaterText.getText()); } catch (Exception e) { String[] args = { "[ " + Messages.getString("calendar.detail.before.after") + " ]" }; this.setValidateResult(Messages.getString("message.hinemos.1"), Messages.getString("message.calendar.53", args)); return null; } if (-32768 > daysLater || daysLater > 32767) { String[] args = { Messages.getString("calendar.detail.before.after"), "-32768", "32767" }; this.setValidateResult(Messages.getString("message.hinemos.1"), Messages.getString("message.calendar.52", args)); return null; } this.inputData.setAfterday(daysLater); } // ? // ???????? Integer substituteDateInt = 0; int SUBSTITUTE_DATE_INT_MAX = 24 * 366; // 24h*366day(1year) int SUBSTITUTE_DATE_INT_MIN = SUBSTITUTE_DATE_INT_MAX * -1; String checkParam = ""; try { this.inputData.setSubstituteFlg(calDetailSubstituteCheck.getSelection()); // ??ON????????????? checkParam = Messages.getString("calendar.detail.substitute.time"); substituteDateInt = Integer.parseInt(calDetailSubstituteTime.getText()); if (substituteDateInt == 0 || substituteDateInt < SUBSTITUTE_DATE_INT_MIN || substituteDateInt > SUBSTITUTE_DATE_INT_MAX) { String[] args = { Messages.getString("calendar.detail.substitute.time"), "0", String.valueOf(SUBSTITUTE_DATE_INT_MIN), String.valueOf(SUBSTITUTE_DATE_INT_MAX) }; this.setValidateResult(Messages.getString("message.hinemos.1"), Messages.getString("message.calendar.54", args)); return null; } checkParam = Messages.getString("calendar.detail.substitute.limit"); int limit = Integer.parseInt(calDetailSubstituteLimit.getText()); if (limit < 1 || limit > 99) { String[] args = { Messages.getString("calendar.detail.substitute.limit"), "1", "99" }; this.setValidateResult(Messages.getString("message.hinemos.1"), Messages.getString("message.calendar.52", args)); return null; } this.inputData.setSubstituteTime(substituteDateInt); this.inputData.setSubstituteLimit(Integer.valueOf(calDetailSubstituteLimit.getText())); } catch (Exception e) { String[] args = { checkParam }; this.setValidateResult(Messages.getString("message.hinemos.1"), Messages.getString("message.calendar.15", args)); return null; } //? Date dateTimeFrom = null; Date dateTimeTo = null; try { //0??24(??48)??? dateTimeFrom = TimeStringConverter.parseTime(calDetailTimeFromText.getText()); dateTimeTo = TimeStringConverter.parseTime(calDetailTimeToText.getText()); timeFrom = dateTimeFrom.getTime(); timeTo = dateTimeTo.getTime(); if (timeFrom >= timeTo) { String[] args = { "[ " + Messages.getString("end") + Messages.getString("time") + " ]", "[ " + Messages.getString("start") + Messages.getString("time") + " ]" }; this.setValidateResult(Messages.getString("message.hinemos.1"), Messages.getString("message.calendar.31", args)); return null; } else { this.inputData.setTimeFrom(timeFrom); this.inputData.setTimeTo(timeTo); } } catch (ParseException e) { //HH:mm:ss????????????????? String tmp = ""; if (dateTimeFrom == null) { tmp = "start"; } else { tmp = "end"; } this.setValidateResult(Messages.getString("message.hinemos.1"), (Messages.getString(tmp) + Messages.getString("message.hinemos.6"))); //e.printStackTrace(); return null; } ///?? if (calDetailOptOnRadio.getSelection()) { this.inputData.setOperateFlg(true); } else { this.inputData.setOperateFlg(false); } return inputData; } /** * ?????? * * @param calInfo * ???? */ private void reflectCalendar() { // ? CalendarDetailInfo detailInfo = null; if (this.inputData != null) { // ???? detailInfo = this.inputData; //????getSelection() firstElement?? } else { // ??? detailInfo = new CalendarDetailInfo(); } //? if (detailInfo != null) { // if (detailInfo.getDescription() != null) { this.calDetailDescriptionText.setText(detailInfo.getDescription()); } // if (detailInfo.getYear() != null) { if (detailInfo.getYear() == 0) { this.calDetailEveryYearRadio.setSelection(true); this.calDetailSpecifyYearRadio.setSelection(false); } else { this.calDetailSpecifyYearRadio.setSelection(true); this.calDetailEveryYearRadio.setSelection(false); this.calDetailYearText.setText(String.valueOf(detailInfo.getYear())); } } // if (detailInfo.getMonth() != null) { this.calDetailMonthCombo.setText(MonthConstant.typeToString(detailInfo.getMonth())); } // if (detailInfo.getDayType() != null) { //???? if (detailInfo.getDayType() == 0) { this.calDetailAllDayRadio.setSelection(true); this.calDetailDayOfWeekRadio.setSelection(false); this.calDetailDateRadio.setSelection(false); this.calDetailCalPatternRadio.setSelection(false); } // else if (detailInfo.getDayType() == 1) { this.calDetailAllDayRadio.setSelection(false); this.calDetailDayOfWeekRadio.setSelection(true); this.calDetailDateRadio.setSelection(false); this.calDetailCalPatternRadio.setSelection(false); } // else if (detailInfo.getDayType() == 2) { this.calDetailAllDayRadio.setSelection(false); this.calDetailDayOfWeekRadio.setSelection(false); this.calDetailDateRadio.setSelection(true); this.calDetailCalPatternRadio.setSelection(false); } //??? else if (detailInfo.getDayType() == 3) { this.calDetailAllDayRadio.setSelection(false); this.calDetailDayOfWeekRadio.setSelection(false); this.calDetailDateRadio.setSelection(false); this.calDetailCalPatternRadio.setSelection(true); } else { //FIXME ? m_log.error("Error Of DayType[" + detailInfo.getDayType() + "]"); } //x if (detailInfo.getDayOfWeekInMonth() != null) { //????? String str = DayOfWeekInMonthConstant.typeToString(detailInfo.getDayOfWeekInMonth()); this.calDetailDayOfWeekInMonthCombo.setText(str); } // if (detailInfo.getDayOfWeek() != null) { String str = DayOfWeekConstant.typeToString(detailInfo.getDayOfWeek()); this.calDetailDayOfWeekCombo.setText(str); } // if (detailInfo.getDate() != null) { this.calDetailDayGroup.setText(String.valueOf(detailInfo.getDate())); } // if (detailInfo.getCalPatternId() != null) { this.calDetailCalPatternCombo.setText(calPatternMap.get(detailInfo.getCalPatternId())); } //??x if (detailInfo.getAfterday() != null) { this.calDetailDaysLaterText.setText(String.valueOf(detailInfo.getAfterday())); } } // ? if (detailInfo.isSubstituteFlg() != null) { this.calDetailSubstituteCheck.setSelection(detailInfo.isSubstituteFlg()); this.calDetailSubstituteTime.setText(String.valueOf(detailInfo.getSubstituteTime())); this.calDetailSubstituteLimit.setText(String.valueOf(detailInfo.getSubstituteLimit())); } /** * * ? * 24:00:00??00:00:00?? * ????????? */ //?0??24(??48)????? // ? // 48:0050:0002:00?????48? // 24:0026:0002:00?????24? // 00:00??? // 0?? // ??23:45?-00:15?? // ??22:00?-26:00?? if (detailInfo.getTimeFrom() != null) { this.calDetailTimeFromText .setText(TimeStringConverter.formatTime(new Date(detailInfo.getTimeFrom()))); } if (detailInfo.getTimeTo() != null) { this.calDetailTimeToText.setText(TimeStringConverter.formatTime(new Date(detailInfo.getTimeTo()))); } ///?? if (detailInfo.isOperateFlg() != null) { if (detailInfo.isOperateFlg()) { calDetailOptOnRadio.setSelection(true); calDetailOptOffRadio.setSelection(false); } else { calDetailOptOnRadio.setSelection(false); calDetailOptOffRadio.setSelection(true); } } } // ID????? this.update(); } /** * CalendarDetailInfoList???? * * @return true?false * * @see com.clustercontrol.dialog.CommonDialog#action() */ @Override protected boolean action() { createCalendarInfo(); return true; } /** * ???? * * @return ? * * @see com.clustercontrol.dialog.CommonDialog#validate() */ @Override protected ValidateResult validate() { // ? this.inputData = this.createCalendarInfo(); if (this.inputData != null) { return super.validate(); } else { return m_validateResult; } } /** * ????? * * @param id ID * @param message */ protected void setValidateResult(String id, String message) { this.m_validateResult = new ValidateResult(); this.m_validateResult.setValid(false); this.m_validateResult.setID(id); this.m_validateResult.setMessage(message); } /** * ???? * * @return ? */ @Override protected String getOkButtonText() { return Messages.getString("ok"); } /** * ???? * * @return ? */ @Override protected String getCancelButtonText() { return Messages.getString("cancel"); } /** * * ????? * * @param managerName ??? * @param ownerRoleId ID * @return */ private List<CalendarPatternInfo> getCalendarPatternList(String managerNane, String ownerRoleId) { // List<CalendarPatternInfo> calPatternList = null; //? try { CalendarEndpointWrapper wrapper = CalendarEndpointWrapper.getWrapper(managerNane); calPatternList = wrapper.getCalendarPatternList(ownerRoleId); } catch (InvalidRole_Exception e) { // ??? MessageDialog.openInformation(null, Messages.getString("message"), Messages.getString("message.accesscontrol.16")); } catch (Exception e) { // ? m_log.warn("update(), " + HinemosMessage.replace(e.getMessage()), e); MessageDialog.openError(null, Messages.getString("failed"), Messages.getString("message.hinemos.failure.unexpected") + ", " + HinemosMessage.replace(e.getMessage())); return null; } return calPatternList; } /** * ?ID? * @param name ?? * @return ID */ private String getCalPatternId(String name) { if (calPatternMap.containsValue(name)) { for (Map.Entry<String, String> entry : calPatternMap.entrySet()) { if (entry.getValue().equals(name)) { return entry.getKey(); } } } return ""; } }