IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jul 15, 2008, 10:30:59 AM (18 years ago)
Author:
eugene
Message:

completely deprecate config->where; make all command-line handling consistent; move nearly all sql into share/*.sql; ensure consistency between args supplied and used

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippTools/src/magictoolConfig.c

    r18526 r18561  
    4949    // -definebyquery
    5050    psMetadata *queueArgs = psMetadataAlloc();
     51    psMetadataAddStr(queueArgs, PS_LIST_TAIL, "-workdir",     0, "define workdir (required)", NULL);
     52    psMetadataAddStr(queueArgs, PS_LIST_TAIL, "-label",       0, "define label", NULL);
     53    psMetadataAddStr(queueArgs, PS_LIST_TAIL, "-dvodb",       0, "define dvodb", NULL);
     54    psMetadataAddTime(queueArgs, PS_LIST_TAIL, "-registered", 0, "time detrend run was registered", now);
    5155
    5256    // -definerun
    5357    psMetadata *definerunArgs = psMetadataAlloc();
    54     psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-workdir", 0,
    55             "define workdir (required)", NULL);
    56     psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-label", 0,
    57             "define label", NULL);
    58     psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-dvodb", 0,
    59             "define dvodb", NULL);
    60     psMetadataAddTime(definerunArgs, PS_LIST_TAIL, "-registered",  0,
    61             "time detrend run was registered", now);
    62     psMetadataAddBool(definerunArgs, PS_LIST_TAIL, "-simple",  0,
    63             "use the simple output format", false);
     58    psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-workdir", 0,            "define workdir (required)", NULL);
     59    psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-label", 0,            "define label", NULL);
     60    psMetadataAddStr(definerunArgs, PS_LIST_TAIL, "-dvodb", 0,            "define dvodb", NULL);
     61    psMetadataAddTime(definerunArgs, PS_LIST_TAIL, "-registered",  0,            "time detrend run was registered", now);
     62    psMetadataAddBool(definerunArgs, PS_LIST_TAIL, "-simple",  0,            "use the simple output format", false);
    6463
    6564    // -updaterun
    6665    psMetadata *updaterunArgs = psMetadataAlloc();
    67     psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-magic_id", 0,
    68             "define warptool ID (required)", NULL);
    69     psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-state", 0,
    70             "set state (required)", NULL);
    71 #if 0
    72     psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-workdir", 0,
    73             "define workdir (required)", NULL);
    74     psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-registered",  0,
    75             "time detrend run was registered", now);
    76 #endif
     66    psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-magic_id", 0,            "define warptool ID (required)", NULL);
     67    psMetadataAddStr(updaterunArgs, PS_LIST_TAIL, "-state", 0,            "set state (required)", NULL);
    7768
    7869    // -addinputskyfile
    7970    psMetadata *addinputskyfileArgs = psMetadataAlloc();
    80     psMetadataAddStr(addinputskyfileArgs, PS_LIST_TAIL, "-magic_id", 0,
    81             "define magictool ID (required)", NULL);
    82     psMetadataAddStr(addinputskyfileArgs, PS_LIST_TAIL, "-diff_id", 0,
    83             "define difftool ID (required)", NULL);
    84     psMetadataAddStr(addinputskyfileArgs, PS_LIST_TAIL, "-node",  0,
    85             "define symbolic node name (required)", NULL);
     71    psMetadataAddStr(addinputskyfileArgs, PS_LIST_TAIL, "-magic_id", 0,            "define magictool ID (required)", NULL);
     72    psMetadataAddStr(addinputskyfileArgs, PS_LIST_TAIL, "-diff_id", 0,            "define difftool ID (required)", NULL);
     73    psMetadataAddStr(addinputskyfileArgs, PS_LIST_TAIL, "-node",  0,            "define symbolic node name (required)", NULL);
    8674
    8775    // -inputskyfile
    8876    psMetadata *inputskyfileArgs = psMetadataAlloc();
    89     psMetadataAddStr(inputskyfileArgs, PS_LIST_TAIL, "-magic_id", 0,
    90             "search by magictool ID", NULL);
    91     psMetadataAddStr(inputskyfileArgs, PS_LIST_TAIL, "-diff_id", 0,
    92             "search by difftool ID", NULL);
    93     psMetadataAddStr(inputskyfileArgs, PS_LIST_TAIL, "-node",  0,
    94             "search by symbolic node name", NULL);
    95     psMetadataAddU64(inputskyfileArgs, PS_LIST_TAIL, "-limit",  0,
    96             "limit result set to N items", 0);
    97     psMetadataAddBool(inputskyfileArgs, PS_LIST_TAIL, "-simple",  0,
    98             "use the simple output format", false);
     77    psMetadataAddStr(inputskyfileArgs, PS_LIST_TAIL, "-magic_id", 0,            "search by magictool ID", NULL);
     78    psMetadataAddStr(inputskyfileArgs, PS_LIST_TAIL, "-diff_id", 0,            "search by difftool ID", NULL);
     79    psMetadataAddStr(inputskyfileArgs, PS_LIST_TAIL, "-node",  0,            "search by symbolic node name", NULL);
     80    psMetadataAddU64(inputskyfileArgs, PS_LIST_TAIL, "-limit",  0,            "limit result set to N items", 0);
     81    psMetadataAddBool(inputskyfileArgs, PS_LIST_TAIL, "-simple",  0,            "use the simple output format", false);
    9982
    10083    // -totree
     
    10689    // -inputtree
    10790    psMetadata *inputtreeArgs = psMetadataAlloc();
    108     psMetadataAddStr(inputtreeArgs, PS_LIST_TAIL, "-magic_id", 0,
    109             "define magictool ID (required)", NULL);
    110     psMetadataAddStr(inputtreeArgs, PS_LIST_TAIL, "-dep_file", 0,
    111             "order of operations dep. file (required)", NULL);
     91    psMetadataAddStr(inputtreeArgs, PS_LIST_TAIL, "-magic_id", 0,            "define magictool ID (required)", NULL);
     92    psMetadataAddStr(inputtreeArgs, PS_LIST_TAIL, "-dep_file", 0,            "order of operations dep. file (required)", NULL);
    11293    psMetadataAddS16(inputtreeArgs, PS_LIST_TAIL, "-code",  0, "set fault code", 0);
    11394
    11495    // -inputs
    11596    psMetadata *inputsArgs = psMetadataAlloc();
    116     psMetadataAddStr(inputsArgs, PS_LIST_TAIL, "-magic_id", 0,
    117             "search by magictool ID", NULL);
    118     psMetadataAddStr(inputsArgs, PS_LIST_TAIL, "-node",  0,
    119             "search by symbolic node name", NULL);
    120     psMetadataAddU64(inputsArgs, PS_LIST_TAIL, "-limit",  0,
    121             "limit result set to N items", 0);
    122     psMetadataAddBool(inputsArgs, PS_LIST_TAIL, "-simple",  0,
    123             "use the simple output format", false);
     97    psMetadataAddStr(inputsArgs, PS_LIST_TAIL, "-magic_id", 0,            "search by magictool ID", NULL);
     98    psMetadataAddStr(inputsArgs, PS_LIST_TAIL, "-node",  0,            "search by symbolic node name", NULL);
     99    psMetadataAddU64(inputsArgs, PS_LIST_TAIL, "-limit",  0,            "limit result set to N items", 0);
     100    psMetadataAddBool(inputsArgs, PS_LIST_TAIL, "-simple",  0,            "use the simple output format", false);
    124101
    125102    // -tooprocess
    126103    psMetadata *toprocessArgs = psMetadataAlloc();
    127     psMetadataAddStr(toprocessArgs, PS_LIST_TAIL, "-magic_id", 0,
    128             "search by magic ID", NULL);
    129     psMetadataAddU64(toprocessArgs, PS_LIST_TAIL, "-limit",  0,
    130             "limit result set to N items", 0);
    131     psMetadataAddBool(toprocessArgs, PS_LIST_TAIL, "-simple",  0,
    132             "use the simple output format", false);
     104    psMetadataAddStr(toprocessArgs, PS_LIST_TAIL, "-magic_id", 0,            "search by magic ID", NULL);
     105    psMetadataAddU64(toprocessArgs, PS_LIST_TAIL, "-limit",  0,            "limit result set to N items", 0);
     106    psMetadataAddBool(toprocessArgs, PS_LIST_TAIL, "-simple",  0,            "use the simple output format", false);
    133107
    134108    // -addresult
    135109    psMetadata *addresultArgs = psMetadataAlloc();
    136     psMetadataAddStr(addresultArgs, PS_LIST_TAIL, "-magic_id", 0,
    137             "define magictool ID (required)", NULL);
    138     psMetadataAddStr(addresultArgs, PS_LIST_TAIL, "-node",  0,
    139             "define symbolic node name (required)", NULL);
    140     psMetadataAddStr(addresultArgs, PS_LIST_TAIL, "-uri",  0,
    141             "define URI", NULL);
     110    psMetadataAddStr(addresultArgs, PS_LIST_TAIL, "-magic_id", 0,            "define magictool ID (required)", NULL);
     111    psMetadataAddStr(addresultArgs, PS_LIST_TAIL, "-node",  0,            "define symbolic node name (required)", NULL);
     112    psMetadataAddStr(addresultArgs, PS_LIST_TAIL, "-uri",  0,            "define URI (required)", NULL);
    142113    psMetadataAddS16(addresultArgs, PS_LIST_TAIL, "-code",  0, "set fault code", 0);
    143114
    144115    // -tomask
    145116    psMetadata *tomaskArgs = psMetadataAlloc();
    146     psMetadataAddU64(tomaskArgs, PS_LIST_TAIL, "-limit",  0,
    147             "limit result set to N items", 0);
    148     psMetadataAddBool(tomaskArgs, PS_LIST_TAIL, "-simple",  0,
    149             "use the simple output format", false);
     117    psMetadataAddU64(tomaskArgs, PS_LIST_TAIL, "-limit",  0,            "limit result set to N items", 0);
     118    psMetadataAddBool(tomaskArgs, PS_LIST_TAIL, "-simple",  0,            "use the simple output format", false);
    150119
    151120    // -addmask
    152121    psMetadata *addmaskArgs = psMetadataAlloc();
    153     psMetadataAddStr(addmaskArgs, PS_LIST_TAIL, "-magic_id", 0,
    154             "define magictool ID (required)", NULL);
     122    psMetadataAddStr(addmaskArgs, PS_LIST_TAIL, "-magic_id", 0,          "define magictool ID (required)", NULL);
    155123    psMetadataAddStr(addmaskArgs, PS_LIST_TAIL, "-uri",  0, "define URI", NULL);
    156124    psMetadataAddS32(addmaskArgs, PS_LIST_TAIL, "-streaks",  0, "define number of streaks", 0);
    157125    psMetadataAddS16(addmaskArgs, PS_LIST_TAIL, "-code",  0, "set fault code", 0);
     126
     127# if (0)
     128    // -toskyfilemask
     129    psMetadata *toskyfilemaskArgs = psMetadataAlloc();
     130    psMetadataAddStr(toskyfilemaskArgs, PS_LIST_TAIL, "-magic_id", 0,            "search by magic ID", NULL);
     131    psMetadataAddU64(toskyfilemaskArgs, PS_LIST_TAIL, "-limit",  0,            "limit result set to N items", 0);
     132    psMetadataAddBool(toskyfilemaskArgs, PS_LIST_TAIL, "-simple",  0,            "use the simple output format", false);
     133
     134    // -addskyfilemask
     135    psMetadata *addskyfilemaskArgs = psMetadataAlloc();
     136    psMetadataAddStr(addskyfilemaskArgs, PS_LIST_TAIL, "-magic_id", 0,            "define magictool ID (required)", NULL);
     137    psMetadataAddStr(addskyfilemaskArgs, PS_LIST_TAIL, "-diff_id",  0,            "define difftool ID (required)", NULL);
     138    psMetadataAddStr(addskyfilemaskArgs, PS_LIST_TAIL, "-uri",  0,            "define URI (required)", NULL);
     139# endif
    158140
    159141    // -mask
     
    193175    psFree(modes);
    194176
    195     // setup search criterion
    196 #define addWhereStr(name) \
    197 { \
    198     psString str = NULL; \
    199     bool status = false; \
    200     if ((str = psMetadataLookupStr(&status, config->args, "-" #name))) { \
    201         if (!psMetadataAddStr(config->where, PS_LIST_TAIL, #name, 0, "==", str)) {\
    202             psError(PS_ERR_UNKNOWN, false, "failed to add item " #name); \
    203             psFree(config); \
    204             return NULL; \
    205         } \
    206     } \
    207 }
    208 
    209 #define addWhereS32(name) \
    210 { \
    211     psS32 s32 = 0; \
    212     bool status = false; \
    213     if ((s32= psMetadataLookupS32(&status, config->args, "-" #name))) { \
    214         if (!psMetadataAddS32(config->where, PS_LIST_TAIL, #name, 0, "==", s32)) { \
    215             psError(PS_ERR_UNKNOWN, false, "failed to add item " #name); \
    216             psFree(config); \
    217             return NULL; \
    218         } \
    219     } \
    220 }
    221 
    222 
    223     // generate SQL where clause
    224     config->where = psMetadataAlloc();
    225 
    226 {
    227     psString str = NULL;
    228     bool status = false;
    229     if ((str = psMetadataLookupStr(&status, config->args, "-magic_id"))) {
    230         if (!psMetadataAddS64(config->where, PS_LIST_TAIL, "magic_id", 0, "==", (psS64)atoll(str))) {
    231             psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id");
    232             psFree(config);
    233             return NULL;
    234         }
    235     }
    236 }
    237     addWhereStr(skycell_id);
    238     addWhereStr(tess_id);
    239     addWhereStr(exp_id);
    240     addWhereStr(node);
    241 
    242     // convert '-code' to 'fault'
    243     {
    244         psS16 fault = 0;
    245         bool status = false;
    246         if ((fault = psMetadataLookupS16(&status, config->args, "-code"))) {
    247             if (!psMetadataAddS16(config->where, PS_LIST_TAIL, "fault", 0, "==", fault)) {
    248                 psError(PS_ERR_UNKNOWN, false, "failed to add item fault");
    249                 psFree(config);
    250                 return NULL;
    251             }
    252         }
    253     }
    254 
    255     if (config->where->list->n < 1) {
    256         psFree(config->where);
    257         config->where = NULL;
    258     }
    259 
    260177    // define Database handle, if used
    261178    // do this last so we don't setup a connection before CLI options are
Note: See TracChangeset for help on using the changeset viewer.