Ignore:
Timestamp:
04/03/07 12:23:23 (17 years ago)
Author:
bellier
Message:

JB:

  • new format of data in mod.def
  • new version of model to read the data
File:
1 edited

Legend:

Unmodified
Added
Removed
  • modipsl/trunk/util/model

    r21 r24  
    6363  do 
    6464    [[ -n "${v0}" && "${v0}" = '#-C-' ]] && \ 
    65      { ((qi=qi+1)); m_x[${qi}]=${v1}; } 
     65     { 
     66      i_m=-1; 
     67      qa=0; while (( ${qa} < ${#m_x[@]} )) 
     68       do 
     69         ((qa=qa+1)); 
     70         [[ -n "${v1}" && "${v1}" = ${m_x[${qa}]} ]] && \ 
     71          { i_m=${qa}; break; }; 
     72       done 
     73      (( ${i_m} < 0 )) && { ((qi=qi+1)); m_x[${qi}]=${v1}; }; 
     74     } 
    6675  done <${F_DEF} 
    6776unset v0 v1 v2; 
     
    9099    unset v0 v1 v2 v3; 
    91100    #- Extract the model informations 
    92     while read v0 v1 v2 
     101    qi=0; 
     102    while read v0 v1 v2 v3 v4 v5 v6 
    93103      do 
    94104        [[ -n "${v1}" && "${v1}" = "${m_n}" ]] && \ 
     
    96106          #- model manager email address 
    97107          [[ "${v0}" = '#-M-' ]] && { m_m=${v2}; continue; } 
    98           #- model components 
     108          #- elements for the model component 
    99109          [[ "${v0}" = '#-C-' ]] && \ 
    100110           { 
    101             qi=0; 
    102             for i in ${v2}; do ((qi=qi+1)); m_c[${qi}]=${i}; done; 
    103             continue; 
    104            } 
    105           #- model tags 
    106           [[ "${v0}" = '#-T-' ]] && \ 
    107            { 
    108             qi=0; 
    109             for i in ${v2} 
    110              do 
    111               ((qi=qi+1)); 
    112               [[ ${no_tag} = 'false' ]] && \ 
    113                { m_t[${qi}]=${i}; }     || \ 
    114                { m_t[${qi}]='?'; } 
    115              done 
    116             continue; 
    117            } 
    118           #- model repository information indexes 
    119           [[ "${v0}" = '#-I-' ]] && \ 
    120            { 
    121             qi=0; 
    122             for i in ${v2} 
    123              do 
    124                ((qi=qi+1)); 
    125                m_p[${qi}]=${r_p[${i}]}; 
    126                [[ ${m_p[${qi}]} = svn || ${m_p[${qi}]} = cvs ]] || \ 
    127                 { 
    128                  echo 'System '"${m_p[${qi}]}"' not supported' 1>&2; 
    129                  exit 3; 
    130                 } 
    131                m_s[${qi}]=${r_s[${i}]}; 
    132                [[ -z "${m_s[${qi}]}" ]] && \ 
    133                 { 
    134                  echo 'Server '${i}'  not found for '${m_n}; 
    135                  exit 3; 
    136                 } 
    137              done 
    138             continue; 
    139            } 
    140           #- model installation directories 
    141           [[ "${v0}" = '#-D-' ]] && \ 
    142            { 
    143             qi=0; 
    144             for i in ${v2}; 
    145              do 
    146               ((qi=qi+1)); 
    147               m_d[${qi}]=${i}; 
    148               [[ -z "${m_l[${qi}]}" ]] && { m_l[${qi}]="modeles"; } 
    149              done 
    150             continue; 
    151            } 
    152           #- model working local directories 
    153           [[ "${v0}" = '#-L-' ]] && \ 
    154            { 
    155             qi=0; 
    156             for i in ${v2}; 
    157              do 
    158               ((qi=qi+1)); 
    159               m_l[${qi}]=${i}; 
    160              done 
    161             continue; 
     111            ((qi=qi+1)); 
     112            [[ -z "${v2}" ]] && \ 
     113             { 
     114              echo 'Component not found for '${m_n}; 
     115              exit 3; 
     116             } 
     117            m_c[${qi}]=${v2}; 
     118            [[ -z "${v3}" ]] && \ 
     119             { 
     120              echo 'Tag not found for component '${v2}' of '${m_n}; 
     121              exit 3; 
     122             } 
     123            [[ ${no_tag} = 'false' ]] && \ 
     124             { m_t[${qi}]=${v3}; }    || \ 
     125             { m_t[${qi}]='?'; } 
     126            [[ -z "${v4}" ]] && \ 
     127             { 
     128              echo 'Repository index not found for '${m_n}; 
     129              exit 3; 
     130             } 
     131            m_p[${qi}]=${r_p[${v4}]}; 
     132            [[ ${m_p[${qi}]} = svn || ${m_p[${qi}]} = cvs ]] || \ 
     133             { 
     134              echo 'Control system '"${m_p[${qi}]}"' not supported' 1>&2; 
     135              exit 3; 
     136             } 
     137            m_s[${qi}]=${r_s[${v4}]}; 
     138            [[ -z "${m_s[${qi}]}" ]] && \ 
     139             { 
     140              echo 'Server '${v4}'  not found for '${m_n}; 
     141              exit 3; 
     142             } 
     143            m_d[${qi}]=${v5}; 
     144            [[ -z "${m_d[${qi}]}" ]] && { m_d[${qi}]="."; } 
     145            m_l[${qi}]=${v6}; 
     146            [[ -z "${m_l[${qi}]}" ]] && { m_l[${qi}]="modeles"; } 
    162147           } 
    163148         } 
    164149      done <${F_DEF} 
    165     unset v0 v1 v2 
     150    unset v0 v1 v2 v3 v4 v5 v6 
    166151    #- Validate the model informations 
    167152    #- model manager email address 
     
    171156    [[ ${#m_c[@]} = 0 ]] && \ 
    172157     { echo 'Components not found for '${m_n}; exit 3; } 
    173     #- model tags 
    174     [[ ${#m_t[@]} = 0 ]] && \ 
    175      { echo 'Tags not found for '${m_n}; exit 3; } 
    176     #- model repository information indexes 
    177     [[ ${#m_p[@]} = 0 || ${#m_s[@]} = 0 ]] && \ 
    178      { echo 'Indexes not found for '${m_n}; exit 3; } 
    179     #- model installation directories 
    180     [[ ${#m_d[@]} = 0 ]] && \ 
    181       { echo 'Target Directories not found for '${m_n}; exit 3; } 
    182     #- model working local directories 
    183     # N/A 
    184158  } 
    185159#- 
Note: See TracChangeset for help on using the changeset viewer.