Thread: need to update TimestampUtils code
Hi,
Can someone help me to update this small block of code (see BEGIN and END block) in the TimestampUtils class or tell me the direction to do it? The code allow the util to parse the timezone in both format hhmm or hh:mm.
// Possibly read timezone.
sep = charAt(s, start);
if (sep == '-' || sep == '+') {
int tzsign = (sep == '-') ? -1 : 1;
int tzhr, tzmin;
end = firstNonDigit(s, start+1); // Skip +/-
//CHANGES BEGIN
//if 4 digits together
if (end - (start+1) > 2) {
//get first 2 digits as tzhr
tzhr = number(s,start+1,start+1+2);
// get the rest of digits as tzmin
tzmin= number(s,start+1+2, end);
start=end;
} else {
//CHANGES END
tzhr = number(s, start+1, end);
start = end;
sep = charAt(s, start);
if (sep == ':') {
end = firstNonDigit(s, start+1); // Skip ':'
tzmin = number(s, start+1, end);
start = end;
} else {
tzmin = 0;
}
}
// Setting offset does not seem to work correctly in all
// cases.. So get a fresh calendar for a synthetic timezone
// instead
result.tz = getCalendar(tzsign, tzhr, tzmin);
start = skipWhitespace(s, start); // Skip trailing whitespace
}
thanks
Leon Do
Lucent Technologies
Mobility Software Engineer
Hi,
Can someone help me to update this small block of code (see BEGIN and END block) in the TimestampUtils class or tell me the direction to do it? The code allow the util to parse the timezone in both format hhmm or hh:mm.
// Possibly read timezone.
sep = charAt(s, start);
if (sep == '-' || sep == '+') {
int tzsign = (sep == '-') ? -1 : 1;
int tzhr, tzmin;
end = firstNonDigit(s, start+1); // Skip +/-
//CHANGES BEGIN
//if 4 digits together
if (end - (start+1) > 2) {
//get first 2 digits as tzhr
tzhr = number(s,start+1,start+1+2);
// get the rest of digits as tzmin
tzmin= number(s,start+1+2, end);
start=end;
} else {
//CHANGES END
tzhr = number(s, start+1, end);
start = end;
sep = charAt(s, start);
if (sep == ':') {
end = firstNonDigit(s, start+1); // Skip ':'
tzmin = number(s, start+1, end);
start = end;
} else {
tzmin = 0;
}
}
// Setting offset does not seem to work correctly in all
// cases.. So get a fresh calendar for a synthetic timezone
// instead
result.tz = getCalendar(tzsign, tzhr, tzmin);
start = skipWhitespace(s, start); // Skip trailing whitespace
}
thanks
Leon Do
Lucent Technologies
Mobility Software Engineer
On Thu, 4 Jan 2007, Dave Cramer wrote: > Does the server ever send us hhmm without a colon ? > > Or what is the use case for this. There was previous discussion of this in November and for the purposes of updatable ResultSets it is important that we can parse what we generate. The solution Oliver suggested (which makes more sense to me than this) is to adjust our timestamp generation code to always include a colon. Kris Jurka
From: Dave Cramer [mailto:pg@fastcrypt.com]
Sent: Thursday, January 04, 2007 4:26 PM
To: Do, Leon (Leon)
Cc: pgsql-jdbc@postgresql.org
Subject: Re: [JDBC] need to update TimestampUtils code
Does the server ever send us hhmm without a colon ?
Leon-No, but it is a valid ISO8601 format
Or what is the use case for this.Leon-I have some other uses of the class not just the interface between the server and client. Having supporting both formats will be useful a lot.
Either way you need to send us a context diffLeon-attached are the modified file and the diff.txt file. I don’t know that is what you are looking for.
thanks
Leon Do