]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/edsp/edspsystem.cc
handle Dir::Bin::Solvers as a list of directories and find the
[apt.git] / apt-pkg / edsp / edspsystem.cc
index 579ffc65616ea75fe0b6df21f3b3a29555e0b1e9..ac0bb8beb877d5462b47b8567113597fcc838c21 100644 (file)
@@ -2,7 +2,7 @@
 // Description                                                         /*{{{*/
 /* ######################################################################
 
-   This system provides the abstraction to use the universe file as the
+   This system provides the abstraction to use the scenario file as the
    only source of package information to be able to feed the created file
    back to APT for its own consumption (eat your own dogfood).
 
@@ -86,8 +86,10 @@ bool edspSystem::ArchiveSupported(const char *Type)
 // System::Score - Determine if we should use the edsp system          /*{{{*/
 signed edspSystem::Score(Configuration const &Cnf)
 {
-   if (FileExists(Cnf.FindFile("Dir::State::universe","")) == true)
-       return 1000;
+   if (Cnf.Find("edsp::scenario", "") == "stdin")
+      return 1000;
+   if (FileExists(Cnf.FindFile("edsp::scenario","")) == true)
+      return 1000;
    return -1000;
 }
                                                                        /*}}}*/
@@ -95,7 +97,12 @@ signed edspSystem::Score(Configuration const &Cnf)
 bool edspSystem::AddStatusFiles(vector<pkgIndexFile *> &List)
 {
    if (StatusFile == 0)
-      StatusFile = new edspIndex(_config->FindFile("Dir::State::universe"));
+   {
+      if (_config->Find("edsp::scenario", "") == "stdin")
+        StatusFile = new edspIndex("stdin");
+      else
+        StatusFile = new edspIndex(_config->FindFile("edsp::scenario"));
+   }
    List.push_back(StatusFile);
    return true;
 }