[Bedework-commit] webapps r1152 - in trunk:
appcommon/src/org/bedework/appcommon
webcommon/src/org/bedework/webcommon
webcommon/src/org/bedework/webcommon/pref
svnadmin at bedework.org
svnadmin at bedework.org
Thu Mar 4 09:41:27 EST 2010
Author: douglm
Date: 2010-03-04 09:41:27 -0500 (Thu, 04 Mar 2010)
New Revision: 1152
Modified:
trunk/appcommon/src/org/bedework/appcommon/DateTimeFormatter.java
trunk/webcommon/src/org/bedework/webcommon/BwAbstractAction.java
trunk/webcommon/src/org/bedework/webcommon/BwActionFormBase.java
trunk/webcommon/src/org/bedework/webcommon/BwRequest.java
trunk/webcommon/src/org/bedework/webcommon/TimeDateComponents.java
trunk/webcommon/src/org/bedework/webcommon/pref/UpdatePrefsAction.java
Log:
Two updates
1. Delay the posting of system events until after commmit. The posted events generally refer to entities which will not be updated/added/deleted until the commit takes place.
2. Turned out that setting the users preferred timezone set the system default timezone as well.
Rename the method to make it clear what's happening. Add a new method to maintain a thread local default timezone id which must be set on entry.
Modified: trunk/appcommon/src/org/bedework/appcommon/DateTimeFormatter.java
===================================================================
--- trunk/appcommon/src/org/bedework/appcommon/DateTimeFormatter.java 2010-03-04 14:38:27 UTC (rev 1151)
+++ trunk/appcommon/src/org/bedework/appcommon/DateTimeFormatter.java 2010-03-04 14:41:27 UTC (rev 1152)
@@ -550,7 +550,7 @@
if (isUtc) {
tzIsLocal = false;
} else {
- tzIsLocal = Timezones.getDefaultTzid().equals(date.getTzid());
+ tzIsLocal = Timezones.getThreadDefaultTzid().equals(date.getTzid());
}
TimeZone tz = null;
Modified: trunk/webcommon/src/org/bedework/webcommon/BwAbstractAction.java
===================================================================
--- trunk/webcommon/src/org/bedework/webcommon/BwAbstractAction.java 2010-03-04 14:38:27 UTC (rev 1151)
+++ trunk/webcommon/src/org/bedework/webcommon/BwAbstractAction.java 2010-03-04 14:41:27 UTC (rev 1152)
@@ -70,6 +70,7 @@
import org.bedework.sysevents.events.SysEvent.SysCode;
import edu.rpi.cmt.calendar.PropertyIndex.PropertyInfoIndex;
+import edu.rpi.cmt.timezones.Timezones;
import edu.rpi.sss.util.DateTimeUtil;
import edu.rpi.sss.util.Util;
import edu.rpi.sss.util.jsp.Request;
@@ -226,6 +227,15 @@
CalSvcI svci = form.fetchSvci();
+ try{
+ String tzid = svci.getPrefsHandler().get().getDefaultTzid();
+
+ if (tzid != null) {
+ Timezones.setThreadDefaultTzid(tzid);
+ }
+ } catch (Throwable t) {
+ }
+
if (form.getDirInfo() == null) {
form.setDirInfo(svci.getDirectories().getDirectoryInfo());
}
Modified: trunk/webcommon/src/org/bedework/webcommon/BwActionFormBase.java
===================================================================
--- trunk/webcommon/src/org/bedework/webcommon/BwActionFormBase.java 2010-03-04 14:38:27 UTC (rev 1151)
+++ trunk/webcommon/src/org/bedework/webcommon/BwActionFormBase.java 2010-03-04 14:41:27 UTC (rev 1152)
@@ -682,7 +682,7 @@
*/
public String getDefaultTzid() {
try {
- return Timezones.getDefaultTzid();
+ return Timezones.getThreadDefaultTzid();
} catch (Throwable t) {
return "Exception: " + t.getLocalizedMessage();
}
Modified: trunk/webcommon/src/org/bedework/webcommon/BwRequest.java
===================================================================
--- trunk/webcommon/src/org/bedework/webcommon/BwRequest.java 2010-03-04 14:38:27 UTC (rev 1151)
+++ trunk/webcommon/src/org/bedework/webcommon/BwRequest.java 2010-03-04 14:41:27 UTC (rev 1152)
@@ -57,9 +57,9 @@
* @param sess
* @param action
*/
- public BwRequest(Request request,
- BwSession sess,
- Action action) {
+ public BwRequest(final Request request,
+ final BwSession sess,
+ final Action action) {
super(request.getRequest(), request.getResponse(), request.getForm(),
action);
this.sess = sess;
@@ -141,7 +141,7 @@
* @return BwFilterDef or null
* @throws Throwable
*/
- public BwFilterDef getFilterDef(boolean debug) throws Throwable {
+ public BwFilterDef getFilterDef(final boolean debug) throws Throwable {
CalSvcI svc = getBwForm().fetchSvci();
String name = getReqPar("filterName");
String fexpr = getReqPar("fexpr");
@@ -180,7 +180,7 @@
* @return Collection of BwDateTime or null
* @throws Throwable
*/
- public Collection<BwDateTime> getRdates(boolean evDateOnly) throws Throwable {
+ public Collection<BwDateTime> getRdates(final boolean evDateOnly) throws Throwable {
return getRExdates(true, evDateOnly);
}
@@ -189,12 +189,12 @@
* @return (possibly empty) Collection of BwDateTime, never null
* @throws Throwable
*/
- public Collection<BwDateTime> getExdates(boolean evDateOnly) throws Throwable {
+ public Collection<BwDateTime> getExdates(final boolean evDateOnly) throws Throwable {
return getRExdates(false, evDateOnly);
}
- private Collection<BwDateTime> getRExdates(boolean rdates,
- boolean evDateOnly) throws Throwable {
+ private Collection<BwDateTime> getRExdates(final boolean rdates,
+ final boolean evDateOnly) throws Throwable {
String reqPar;
String token = "DATE\t";
Collection<BwDateTime> bwdts = new ArrayList<BwDateTime>();
@@ -262,8 +262,8 @@
* @return date/time
* @throws Throwable
*/
- public BwDateTime getDateTime(String dtPar,
- String tzidPar) throws Throwable {
+ public BwDateTime getDateTime(final String dtPar,
+ final String tzidPar) throws Throwable {
String dt = getReqPar(dtPar);
if (dt == null) {
return null;
@@ -271,7 +271,7 @@
String tzid = getReqPar(tzidPar);
if (tzid == null) {
- tzid = Timezones.getDefaultTzid();
+ tzid = Timezones.getThreadDefaultTzid();
}
BwDateTime dtm = new BwDateTime();
@@ -288,7 +288,7 @@
* @return calendar or null for invalid path.
* @throws Throwable
*/
- public BwCalendar getNewCal(boolean required) throws Throwable {
+ public BwCalendar getNewCal(final boolean required) throws Throwable {
CalSvcI svci = getBwForm().fetchSvci();
String newCalPath = getReqPar("newCalPath");
@@ -324,7 +324,7 @@
* @return boolean false if none or errors
* @throws Throwable
*/
- public boolean setEventCalendar(BwEvent ev) throws Throwable {
+ public boolean setEventCalendar(final BwEvent ev) throws Throwable {
BwCalendar cal = getNewCal(false);
if (form.getErrorsEmitted()) {
@@ -375,7 +375,7 @@
* @return BwCalendar or null.
* @throws Throwable
*/
- public BwCalendar getCalendar(boolean required) throws Throwable {
+ public BwCalendar getCalendar(final boolean required) throws Throwable {
return getCalendar("calPath", required);
}
@@ -386,8 +386,8 @@
* @return BwCalendar or null.
* @throws Throwable
*/
- public BwCalendar getCalendar(String reqParName,
- boolean required) throws Throwable {
+ public BwCalendar getCalendar(final String reqParName,
+ final boolean required) throws Throwable {
CalSvcI svci = getBwForm().fetchSvci();
String calPath = getReqPar(reqParName);
Modified: trunk/webcommon/src/org/bedework/webcommon/TimeDateComponents.java
===================================================================
--- trunk/webcommon/src/org/bedework/webcommon/TimeDateComponents.java 2010-03-04 14:38:27 UTC (rev 1151)
+++ trunk/webcommon/src/org/bedework/webcommon/TimeDateComponents.java 2010-03-04 14:41:27 UTC (rev 1152)
@@ -273,7 +273,7 @@
public String getTzid() {
try {
if (tzid == null) {
- tzid = Timezones.getDefaultTzid();
+ tzid = Timezones.getThreadDefaultTzid();
}
} catch (Throwable t) {
fieldInError = "Tzid";
Modified: trunk/webcommon/src/org/bedework/webcommon/pref/UpdatePrefsAction.java
===================================================================
--- trunk/webcommon/src/org/bedework/webcommon/pref/UpdatePrefsAction.java 2010-03-04 14:38:27 UTC (rev 1151)
+++ trunk/webcommon/src/org/bedework/webcommon/pref/UpdatePrefsAction.java 2010-03-04 14:41:27 UTC (rev 1152)
@@ -80,8 +80,9 @@
/* (non-Javadoc)
* @see org.bedework.webcommon.BwAbstractAction#doAction(org.bedework.webcommon.BwRequest, org.bedework.webcommon.BwActionFormBase)
*/
- public int doAction(BwRequest request,
- BwActionFormBase form) throws Throwable {
+ @Override
+ public int doAction(final BwRequest request,
+ final BwActionFormBase form) throws Throwable {
CalSvcI svc = form.fetchSvci();
BwPreferences prefs;
boolean tzChanged = false;
@@ -273,7 +274,7 @@
svc.getPrefsHandler().update(prefs);
if (tzChanged) {
- Timezones.setDefaultTzid(prefs.getDefaultTzid());
+ Timezones.setThreadDefaultTzid(prefs.getDefaultTzid());
}
form.setUserPreferences(prefs);
form.getMsg().emit(ClientMessage.updatedPrefs);
More information about the Bedework-commit
mailing list