Changeset 166 for Mulberry/branches/v4.1d1/Sources_Common/Calendar_Store/Protocols/CCalendarProtocol.cpp
- Timestamp:
- 07/04/08 14:34:07 (5 months ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
Mulberry/branches/v4.1d1/Sources_Common/Calendar_Store/Protocols/CCalendarProtocol.cpp
r160 r166 821 821 // up to date. 822 822 } 823 else if (IsWebCalendar()) 824 { 825 SubscribeFullCalendar(node, cal); 826 } 823 827 else 824 828 { … … 895 899 else 896 900 SyncFullFromServer(node, cal); 901 Broadcast_Message(eBroadcast_RefreshNode, (void*)&node); 897 902 } 898 903 … … 1266 1271 } 1267 1272 1268 void CCalendarProtocol::ReadFullCalendar(const CCalendarStoreNode& node, iCal::CICalendar& cal )1273 void CCalendarProtocol::ReadFullCalendar(const CCalendarStoreNode& node, iCal::CICalendar& cal, bool if_changed) 1269 1274 { 1270 1275 // Don't do on server if cache is primary 1271 1276 if (mCacheIsPrimary) 1272 mCacheClient->_ReadFullCalendar(node, cal );1277 mCacheClient->_ReadFullCalendar(node, cal, if_changed); 1273 1278 else 1274 mClient->_ReadFullCalendar(node, cal); 1279 mClient->_ReadFullCalendar(node, cal, if_changed); 1280 Broadcast_Message(eBroadcast_RefreshNode, (void*)&node); 1275 1281 } 1276 1282 … … 1301 1307 { 1302 1308 // Always read from the main server 1303 mClient->_ReadFullCalendar(node, cal); 1309 bool if_changed = !cal.GetETag().empty(); 1310 mClient->_ReadFullCalendar(node, cal, if_changed); 1304 1311 1305 1312 // Always keep disconnected cache in sync with server … … 1335 1342 // Always fall back to writing entire calendar 1336 1343 WriteFullCalendar(node, cal); 1344 Broadcast_Message(eBroadcast_RefreshNode, (void*)&node); 1337 1345 return; 1338 1346 } … … 1353 1361 node.SyncNow(); 1354 1362 } 1363 1364 Broadcast_Message(eBroadcast_RefreshNode, (void*)&node); 1355 1365 } 1356 1366 … … 1362 1372 // Always fall back to writing entire calendar 1363 1373 WriteFullCalendar(node, cal); 1374 Broadcast_Message(eBroadcast_RefreshNode, (void*)&node); 1364 1375 return; 1365 1376 } … … 1380 1391 node.SyncNow(); 1381 1392 } 1393 1394 Broadcast_Message(eBroadcast_RefreshNode, (void*)&node); 1382 1395 } 1383 1396 … … 1389 1402 // Always fall back to writing entire calendar 1390 1403 WriteFullCalendar(node, cal); 1404 Broadcast_Message(eBroadcast_RefreshNode, (void*)&node); 1391 1405 return; 1392 1406 } … … 1407 1421 node.SyncNow(); 1408 1422 } 1423 1424 Broadcast_Message(eBroadcast_RefreshNode, (void*)&node); 1409 1425 } 1410 1426 … … 1416 1432 // Always fall back to writing entire calendar 1417 1433 WriteFullCalendar(node, cal); 1434 Broadcast_Message(eBroadcast_RefreshNode, (void*)&node); 1418 1435 return; 1419 1436 } … … 1434 1451 node.SyncNow(); 1435 1452 } 1453 1454 Broadcast_Message(eBroadcast_RefreshNode, (void*)&node); 1436 1455 } 1437 1456 … … 1458 1477 DumpCalendars(); 1459 1478 } 1479 1480 Broadcast_Message(eBroadcast_RefreshNode, (void*)&node); 1460 1481 } 1461 1482