Changeset 11ed08d in tol


Ignore:
Timestamp:
Nov 29, 2012, 11:51:03 AM (14 years ago)
Author:
Víctor de Buen <vdebuen@…>
Branches:
1941-docker-image-to-test, devel, master
Children:
4640d1a
Parents:
bfc7e45
Message:

Now TOL can write old OIS formats to ensure backward compatibility with a window of recent TOL versions

git-svn-id: ​https://www.tol-project.org/svn/tolp/trunk@5428 be4846ae-f051-483a-831f-b64e7d08527f

Location:
tol/OIS
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • tol/OIS/ois.cpp

    rbfc7e45 r11ed08d  
    4343#endif
    4444BText BOis::oisCurrentVersion_ = OIS_VERSION;
     45BText BOis::oisWriteVersion_   = OIS_VERSION;
    4546BText BOis::oisDefRoot_        = "";
    4647int BOis::def_CLv_ = 9;
  • tol/OIS/oisapitol.cpp

    rbfc7e45 r11ed08d  
    4444
    4545//--------------------------------------------------------------------
     46  static BText& GetOisWriteVersion()
     47//--------------------------------------------------------------------
     48{
     49  static BText txt;
     50  txt = BOis::WriteVersion();
     51  return(txt);
     52};
     53
     54
     55//--------------------------------------------------------------------
    4656  static BText& GetOisDefBSE()
    4757//--------------------------------------------------------------------
    … …  
    6878  if(addressStr_) { return(false); }
    6979  oisCurrentVersion_ = OIS_VERSION;
     80  oisWriteVersion_ = "02.16";
    7081
    7182  Std(I2("OIS: implemented version: ",
    … …  
    113124          I2("OIS version identifier",
    114125             "Identificador de la versión de OIS")
     126  );
     127  BParamText* OIS_def_WriteVersion_ = new BParamText
     128  (
     129    "Ois.WriteVersion",
     130    oisWriteVersion_,
     131    I2("This is useful to write OIS of older versions.",
     132       "Es útil para escribir OIS de versiones viejas.")
    115133  );
    116134  BParamText* OIS_DefRoot_ = new BParamText
    … …  
    192210       "Para cambiar el valor úsese la función Ois.PutDefaultSerialEngine")
    193211  );
    194   OIS_def_BSE_->PutConstant();
    195212
    196213  BParamText* OIS_def_BAE_ = new BParamText
    … …  
    703720  if(ok)
    704721  {
    705     if(ois.control_.oisEngine_.oisVersion_<BOis::CurrentVersion())
     722    if(ois.control_.oisEngine_.oisVersion_<BOis::WriteVersion())
    706723    {
    707724      Warning(I2(BText("OIS: version '")<ois.control_.oisEngine_.oisVersion_+
    708725                 "' of \n  "+ois.Path()+"\n" 
    709                  " is previous than currently implemented "<<BOis::CurrentVersion(),
     726                 " is previous than minimum currently used "<<BOis::WriteVersion(),
    710727                 BText("OIS: La versión ")<<ois.control_.oisEngine_.oisVersion_+
    711728                 " de \n  "+ois.Path()+"\n" 
    712                  " es anterior a la actualmente implementada '"<<BOis::CurrentVersion()+"'"));
     729                 " es anterior a la mínima actualmente usada '"<<BOis::WriteVersion()+"'"));
    713730    }
    714731    if(ois.control_.oisEngine_.oisVersion_>BOis::CurrentVersion())
    … …  
    716733      Error(I2(BText("OIS: version '")>ois.control_.oisEngine_.oisVersion_+
    717734               "' of \n  "+ois.Path()+"\n" 
    718                " is later than currently implemented "<<BOis::CurrentVersion(),
     735               " is later than maximum currently used "<<BOis::CurrentVersion(),
    719736               BText("OIS: La versión ")<<ois.control_.oisEngine_.oisVersion_+
    720737               " de \n  "+ois.Path()+"\n" 
    721                " es posterior a la actualmente implementada '"<<BOis::CurrentVersion()+"'"));
     738               " es posterior a la máxima actualmente usada '"<<BOis::CurrentVersion()+"'"));
    722739      ok=false;
    723740    }
  • tol/OIS/oiscreator.cpp

    rbfc7e45 r11ed08d  
    152152  control_.oisEngine_.curDir_       = BDir::GetCurrent();
    153153  control_.oisEngine_.release_      = DteNow();
    154   control_.oisEngine_.oisVersion_   = oisCurrentVersion_;
     154  control_.oisEngine_.oisVersion_   = oisWriteVersion_;
    155155 
    156156  control_.machine_.hostName_       = BSys::HostName();
  • tol/OIS/oisxml.cpp

    rbfc7e45 r11ed08d  
    3131BTraceInit("oisxml.cpp");
    3232
    33 
    3433//--------------------------------------------------------------------
    3534// OIS writing XML functions
    … …  
    6867  header_->Print("<tolRelease>%s</tolRelease>\n",                 control_.tolEngine_.tolRelease_.String());
    6968  header_->Print("<tolUserLang>%s</tolUserLang>\n",               control_.tolEngine_.tolUserLang_.String());
    70   header_->Print("<globalRequiredPackages>\n");
    71   const BRequiredPackage& grp = BNameBlock::GlobalRequiredPackages();
    72   int grp_n = grp.CountRequiredPackage();
    73   header_->Print("<entries>%ld</entries>\n",grp_n);
    74   for(n=1; n<=grp_n; n++)
    75   {
    76     header_->Print("<package_%ld>%s</package_%ld>\n",
    77                    n, grp.GetRequiredPackageVersion(n-1).String(), n);
    78   }
    79   header_->Print("</globalRequiredPackages>\n");
     69  if(oisWriteVersion_>="02.17")
     70  {
     71    header_->Print("<globalRequiredPackages>\n");
     72    const BRequiredPackage& grp = BNameBlock::GlobalRequiredPackages();
     73    int grp_n = grp.CountRequiredPackage();
     74    header_->Print("<entries>%ld</entries>\n",grp_n);
     75    for(n=1; n<=grp_n; n++)
     76    {
     77      header_->Print("<package_%ld>%s</package_%ld>\n",
     78                     n, grp.GetRequiredPackageVersion(n-1).String(), n);
     79    }
     80    header_->Print("</globalRequiredPackages>\n");
     81  }
    8082  header_->Print("</tolEngine>\n");
    8183
    … …  
    539541  XMLEnsure(XMLGetNextTagValue(tag_, value_, "entries")); sscanf(value_,"%d",&m); tolSources_.AllocBuffer(m);
    540542  obsoleteSource_ = false;
    541   if(control_.oisEngine_.oisVersion_!=OIS_VERSION)
     543  if(control_.oisEngine_.oisVersion_<oisWriteVersion_)
    542544  {
    543545    obsoleteSource_ = true;
  • tol/OIS/tol_ois.h

    rbfc7e45 r11ed08d  
    555555  static BText oisCurrentVersion_;
    556556
     557//Default OIS write version method
     558  static BText oisWriteVersion_;
     559
    557560//Current OIS default root path
    558561  static BText oisDefRoot_;
    … …  
    560563//Default OIS archive method
    561564  static BText oisDefArchive_;
     565
    562566
    563567//Default date format
    … …  
    646650  static BArchiveEngine       ArchiveEngine      (const BText& txt);
    647651  static const BText& CurrentVersion() { return(oisCurrentVersion_); }
     652  static const BText& WriteVersion() { return(oisWriteVersion_); }
     653
    648654  static BText AutoPath(const BText& path);
    649655  static BText PlainPath    (const BText& path);
Note: See TracChangeset for help on using the changeset viewer.