This is the set of tasks that need to be done to convert from old to new {quote:ClassAds}. Code changes for this {quote:ToDo} list should be associated with ticket #619. -There are two lists. The first list contains items that can be done without affecting Condor current usage of old {quote:ClassAds}. This mainly consists of adding compatibility functions to new {quote:ClassAds} that emulate the API of old {quote:ClassAds}. The second list contains items that will break Condor's usage of old {quote:ClassAds}. These are mainly changing callsites for old {ClassAd} methods that can't be easily emulated through a compatibility function. This second list should be performed within a short time period once we're ready to 'pull the trigger' on converting to new {quote:ClassAds}. -{subsection: Pre-Flag Day Tasks} +{subsection: Pre-Transition Tasks} *: Check in Varghese's {quote:ClassAdList} class that works with new {quote:ClassAds}. *DONE* @@ -68,12 +67,7 @@ *:: stringListIMember() *:: stringListRegexpMember() - -{subsection: Flag Day Tasks} - -*: Change most or all references to {quote:ClassAd} and {quote:AttrList} with {quote:CompatClassAd} *[4 hours]*. - -*: Swap in Varghese's new {quote:ClassAdList} class *[?]*. +*: Arrange header and make files so that switching between old and new {quote:ClassAds} can be done with the flip of a switch. *[1 day]*. *: Fix up the one or two callsites in matchmaker.cpp that move an ad from one {quote:ClassAdList} to another *[4 hours]*. @@ -91,7 +85,7 @@ *:: AttrList::put() *:: AttrList::initFromStream() -{subsection: Post-Flag Day Tasks} +{subsection: Post-Transition Tasks} *: As time permits, rewrite callsites to make {quote:CompatClassAd} unnecessary. The modified callsites can either use native new {quote:ClassAd} methods or newly-written free-standing functions. *:: Replace all usage of attribute {quote:CurrentTime} with {quote:ClassAd} function time(). This can start before the flag day.