Changeset 751
- Timestamp:
- 07/12/06 00:41:17
- Files:
-
- trunk/calendar3/build.xml (modified) (2 diffs)
- trunk/calendar3/calFacade/src/org/bedework/calfacade/BwDateTime.java (modified) (3 diffs)
- trunk/calendar3/caldav/src/edu/rpi/cct/uwcal/caldav/IcalTrans.java (deleted)
- trunk/calendar3/caldav/src/edu/rpi/cct/uwcal/caldav/TestCalDav.java (deleted)
- trunk/calendar3/caldavClientApi/build.xml (modified) (1 diff)
- trunk/calendar3/caldavClientApi/src/org/bedework/caldav/client/api/BwIcalTrans.java (added)
- trunk/calendar3/caldavDomino/build.xml (modified) (2 diffs)
- trunk/calendar3/caldavDomino/src/edu/rpi/cct/bedework/caldav/DominoSysIntfImpl.java (modified) (13 diffs)
- trunk/calendar3/caldavGoogle/build.xml (modified) (1 diff)
- trunk/calendar3/caldavGoogle/src/edu/rpi/cct/bedework/caldav/GoogleSysIntfImpl.java (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/calendar3/build.xml
r724 r751 94 94 depends="bld.locale,bld.common,bld.access,bld.davdefs,bld.calfacade, 95 95 bld.calenv,bld.ical,bld.core, 96 bld.http, bld.caldavclientapi,96 bld.http, 97 97 bld.calsvci,bld.mail,bld.logging, 98 98 bld.calsvc,bld.appcommon,bld.uportal, 99 99 bld.webadmin,bld.webclient,bld.synchml, 100 bld.caldav,bld.caldavGoogle,bld.caldavTest, 100 bld.caldav,bld.caldavclientapi, 101 bld.caldavGoogle,bld.caldavDomino,bld.caldavTest, 101 102 bld.timers,build.tools, 102 103 bld.dumprestore, … … 403 404 </target> 404 405 406 <target name="bld.caldavDomino" 407 depends="bld.caldav" 408 description="Build calendar caldav Domino interface" 409 if="org.bedework.build.caldav.domino"> 410 <ant antfile="${org.bedework.caldavdomino.base}/build.xml" inheritrefs="true" 411 target="build" /> 412 </target> 413 405 414 <target name="bld.caldavGoogle" 406 415 depends="bld.caldav" trunk/calendar3/calFacade/src/org/bedework/calfacade/BwDateTime.java
r746 r751 183 183 * 184 184 * @return String date 185 * @throws CalFacadeException 186 */ 187 public String getDate() throws CalFacadeException { 185 */ 186 public String getDate() { 188 187 return date; 189 188 } … … 496 495 BwDateTime dt2 = (BwDateTime)o2; 497 496 498 try { 499 return dt1.getDate().compareTo(dt2.getDate()); 500 } catch (CalFacadeException cfe) { 501 throw new RuntimeException(cfe); 502 } 497 return dt1.getDate().compareTo(dt2.getDate()); 503 498 } 504 499 … … 563 558 564 559 return CalFacadeUtil.eqObjval(getDtval(), that.getDtval()); 560 } 561 562 public Object clone() { 563 BwDateTime ndt = new BwDateTime(); 564 565 ndt.setDateType(getDateType()); 566 ndt.setTzid(getTzid()); 567 ndt.setDtval(getDtval()); 568 ndt.setDate(getDate()); 569 570 return ndt; 565 571 } 566 572 trunk/calendar3/caldavClientApi/build.xml
r741 r751 50 50 <pathelement location="${org.bedework.ical.jar}"/> 51 51 <pathelement location="${org.bedework.calfacadeshared.jar}"/> 52 <pathelement location="${org.bedework.calsvci.jar}"/> 53 <pathelement location="${org.bedework.calsvc.jar}"/> 52 54 </path> 53 55 trunk/calendar3/caldavDomino/build.xml
r746 r751 41 41 <path id="compile.classpath"> 42 42 <pathelement location="${servlet.jar}"/> 43 <pathelement location="${httpclient.jar}"/> 43 44 <pathelement location="${ical4j.jar}"/> 44 45 <pathelement location="${log4j.jar}"/> … … 50 51 <pathelement location="${org.bedework.common.jar}"/> 51 52 <pathelement location="${org.bedework.calfacadeshared.jar}"/> 52 <pathelement location="${org.bedework.calsvci.jar}"/>53 <pathelement location="${org.bedework.calsvc.jar}"/>54 53 <pathelement location="${org.bedework.caldav.jar}"/> 54 <pathelement location="${org.bedework.caldavClientApi.jar}"/> 55 55 <pathelement location="${org.bedework.davdefs.jar}"/> 56 56 <pathelement location="${org.bedework.ical.jar}"/> trunk/calendar3/caldavDomino/src/edu/rpi/cct/bedework/caldav/DominoSysIntfImpl.java
r748 r751 54 54 package edu.rpi.cct.bedework.caldav; 55 55 56 import org.bedework.caldav.client.api.BwIcalTrans; 56 57 import org.bedework.caldav.client.api.CaldavClientIo; 57 58 import org.bedework.caldav.client.api.CaldavReq; … … 65 66 import org.bedework.calfacade.ifs.CalTimezones; 66 67 67 import edu.rpi.cct.uwcal.caldav.IcalTrans;68 68 import edu.rpi.cct.uwcal.caldav.SysIntf; 69 69 import edu.rpi.cct.webdav.servlet.shared.WebdavException; … … 71 71 72 72 import net.fortuna.ical4j.model.Calendar; 73 import net.fortuna.ical4j.model.DateTime; 73 74 import net.fortuna.ical4j.model.Period; 74 75 import net.fortuna.ical4j.model.TimeZone; … … 77 78 import org.apache.log4j.Logger; 78 79 80 import java.io.InputStreamReader; 79 81 import java.io.Reader; 80 82 import java.io.Serializable; 81 83 import java.net.URI; 82 import java.net.URL;83 84 import java.net.URLDecoder; 84 85 import java.util.Arrays; … … 87 88 import java.util.Iterator; 88 89 import java.util.List; 90 import java.util.TreeSet; 89 91 90 92 import javax.servlet.http.HttpServletRequest; … … 163 165 private transient Logger log; 164 166 165 /* Prefix for our properties */ 166 private String envPrefix; 167 168 private String account; 169 170 private IcalTrans trans; 167 private BwIcalTrans trans; 171 168 172 169 public void init(HttpServletRequest req, … … 175 172 boolean debug) throws WebdavIntfException { 176 173 try { 177 this.envPrefix = envPrefix;178 this.account = account;179 174 this.debug = debug; 180 175 181 trans = new IcalTrans(debug);176 trans = new BwIcalTrans(envPrefix, debug); 182 177 } catch (Throwable t) { 183 178 throw new WebdavIntfException(t); … … 244 239 CaldavResp resp = send(req, di); 245 240 246 return null; 241 Collection fbs = getTrans().getFreeBusy( 242 new InputStreamReader(resp.getContentStream())); 243 244 /* Domino returns free time - invert to get busy time 245 * First we'll order all the periods in the result. 246 */ 247 248 TreeSet periods = new TreeSet(); 249 Iterator fbit = fbs.iterator(); 250 while (fbit.hasNext()) { 251 Object o = fbit.next(); 252 253 if (o instanceof BwFreeBusy) { 254 BwFreeBusy fb = (BwFreeBusy)o; 255 256 Iterator fbpit = fb.iterateTimes(); 257 while (fbpit.hasNext()) { 258 BwFreeBusyComponent fbcomp = (BwFreeBusyComponent)fbpit.next(); 259 260 if (fbcomp.getType() != BwFreeBusyComponent.typeFree) { 261 throw WebdavIntfException.serverError(); 262 } 263 264 Iterator perit = fbcomp.iteratePeriods(); 265 while (perit.hasNext()) { 266 periods.add(perit.next()); 267 } 268 } 269 } 270 } 271 272 BwFreeBusy fb = new BwFreeBusy(); 273 274 fb.setStart(start); 275 fb.setEnd(end); 276 277 BwFreeBusyComponent fbcomp = new BwFreeBusyComponent(); 278 279 fb.addTime(fbcomp); 280 281 fbcomp.setType(BwFreeBusyComponent.typeBusy); 282 283 /* Fill in the gaps between the free periods with busy time. */ 284 285 DateTime bstart = (DateTime)start.makeDate(); 286 287 Iterator pit = periods.iterator(); 288 while (pit.hasNext()) { 289 Period p = (Period)pit.next(); 290 291 Period busyp = new Period(bstart, p.getStart()); 292 fbcomp.addPeriod(busyp); 293 294 bstart = p.getEnd(); 295 } 296 297 return fb; 247 298 } catch (WebdavIntfException wie) { 248 299 throw wie; … … 335 386 * ==================================================================== */ 336 387 337 private IcalTrans getTrans() throws WebdavIntfException {388 private BwIcalTrans getTrans() throws WebdavIntfException { 338 389 try { 339 390 trans.open(); … … 353 404 // from 20060716T120000Z make 2006-07-16T12:00:00Z 354 405 // 0 4 6 1 3 355 sb.append( sb.substring(0, 4));406 sb.append(utcdt.substring(0, 4)); 356 407 sb.append("-"); 357 sb.append( sb.substring(4, 6));408 sb.append(utcdt.substring(4, 6)); 358 409 sb.append("-"); 359 sb.append( sb.substring(6, 11));410 sb.append(utcdt.substring(6, 11)); 360 411 sb.append(":"); 361 sb.append( sb.substring(11, 13));412 sb.append(utcdt.substring(11, 13)); 362 413 sb.append(":"); 363 sb.append( sb.substring(13));414 sb.append(utcdt.substring(13)); 364 415 365 416 return sb.toString(); … … 369 420 } 370 421 422 /* 371 423 private net.fortuna.ical4j.model.DateTime makeIcalDateTime(String val) 372 424 throws WebdavIntfException { … … 380 432 } 381 433 } 434 */ 382 435 383 436 private List splitUri(String uri, boolean decoded) throws WebdavIntfException { … … 433 486 * @param r 434 487 * @param di 435 * @param url436 488 * @return CaldavResp 437 489 * @throws Throwable trunk/calendar3/caldavGoogle/build.xml
r723 r751 52 52 <pathelement location="${org.bedework.common.jar}"/> 53 53 <pathelement location="${org.bedework.calfacadeshared.jar}"/> 54 <pathelement location="${org.bedework.calsvci.jar}"/>55 <pathelement location="${org.bedework.calsvc.jar}"/>56 54 <pathelement location="${org.bedework.caldav.jar}"/> 55 <pathelement location="${org.bedework.caldavClientApi.jar}"/> 57 56 <pathelement location="${org.bedework.davdefs.jar}"/> 58 57 <pathelement location="${org.bedework.ical.jar}"/> trunk/calendar3/caldavGoogle/src/edu/rpi/cct/bedework/caldav/GoogleSysIntfImpl.java
r748 r751 54 54 package edu.rpi.cct.bedework.caldav; 55 55 56 import org.bedework.caldav.client.api.BwIcalTrans; 56 57 import org.bedework.calfacade.BwCalendar; 57 58 import org.bedework.calfacade.BwDateTime; … … 62 63 import org.bedework.calfacade.ifs.CalTimezones; 63 64 64 import edu.rpi.cct.uwcal.caldav.IcalTrans;65 65 import edu.rpi.cct.uwcal.caldav.SysIntf; 66 66 import edu.rpi.cct.webdav.servlet.shared.WebdavException; … … 102 102 private transient Logger log; 103 103 104 /* Prefix for our properties */ 105 private String envPrefix; 106 107 private String account; 108 109 private IcalTrans trans; 104 private BwIcalTrans trans; 110 105 111 106 public void init(HttpServletRequest req, … … 114 109 boolean debug) throws WebdavIntfException { 115 110 try { 116 this.envPrefix = envPrefix;117 this.account = account;118 111 this.debug = debug; 119 112 120 trans = new IcalTrans(debug);113 trans = new BwIcalTrans(envPrefix, debug); 121 114 } catch (Throwable t) { 122 115 throw new WebdavIntfException(t); … … 374 367 * ==================================================================== */ 375 368 376 private IcalTrans getTrans() throws WebdavIntfException {369 private BwIcalTrans getTrans() throws WebdavIntfException { 377 370 try { 378 371 trans.open();
