Browse Source

move EditSources into its own file

Michael Vogt 12 years ago
parent
commit
9e6b13f375
4 changed files with 50 additions and 38 deletions
  1. 1 1
      apt-private/makefile
  2. 45 0
      apt-private/private-sources.cc
  3. 3 0
      apt-private/private-sources.h
  4. 1 37
      cmdline/apt.cc

+ 1 - 1
apt-private/makefile

@@ -17,7 +17,7 @@ MAJOR=0.0
 MINOR=0
 SLIBS=$(PTHREADLIB) -lapt-pkg
 
-PRIVATES=list install download output cachefile cacheset update upgrade cmndline moo search show main utils
+PRIVATES=list install download output cachefile cacheset update upgrade cmndline moo search show main utils sources
 SOURCE += $(foreach private, $(PRIVATES), private-$(private).cc)
 HEADERS += $(foreach private, $(PRIVATES), private-$(private).h)
 

+ 45 - 0
apt-private/private-sources.cc

@@ -0,0 +1,45 @@
+
+#include <apt-pkg/hashes.h>
+#include <apti18n.h>
+
+#include "private-output.h"
+#include "private-sources.h"
+#include "private-utils.h"
+
+// EditSource - EditSourcesList         			        /*{{{*/
+// ---------------------------------------------------------------------
+bool EditSources(CommandLine &CmdL)
+{
+   bool res;
+   pkgSourceList sl;
+   std::string outs;
+
+   // FIXME: suport CmdL.FileList to specify sources.list.d files
+   std::string sourceslist = _config->FindFile("Dir::Etc::sourcelist");
+
+   HashString before;
+   before.FromFile(sourceslist);
+
+   do {
+      EditFileInSensibleEditor(sourceslist);
+      _error->PushToStack();
+      res = sl.Read(sourceslist);
+      if (!res) {
+         strprintf(outs, _("Failed to parse %s. Edit again? "),
+                   sourceslist.c_str());
+         std::cout << outs;
+         res = !YnPrompt(true);
+      }
+      _error->RevertToStack();
+   } while (res == false);
+
+   if (!before.VerifyFile(sourceslist)) {
+      strprintf(
+         outs, _("Your '%s' file changed, please run 'apt-get update'."),
+         sourceslist.c_str());
+      std::cout << outs << std::endl;
+   }
+
+   return true;
+}
+									/*}}}*/

+ 3 - 0
apt-private/private-sources.h

@@ -0,0 +1,3 @@
+#include <apt-pkg/cmndline.h>
+
+bool EditSources(CommandLine &CmdL);

+ 1 - 37
cmdline/apt.cc

@@ -56,45 +56,9 @@
 #include <apt-private/private-show.h>
 #include <apt-private/private-main.h>
 #include <apt-private/private-utils.h>
+#include <apt-private/private-sources.h>
 									/*}}}*/
 
-// EditSource - EditSourcesList         			        /*{{{*/
-// ---------------------------------------------------------------------
-bool EditSources(CommandLine &CmdL)
-{
-   bool res;
-   pkgSourceList sl;
-   std::string outs;
-
-   // FIXME: suport CmdL.FileList to specify sources.list.d files
-   std::string sourceslist = _config->FindFile("Dir::Etc::sourcelist");
-
-   HashString before;
-   before.FromFile(sourceslist);
-
-   do {
-      EditFileInSensibleEditor(sourceslist);
-      _error->PushToStack();
-      res = sl.Read(sourceslist);
-      if (!res) {
-         strprintf(outs, _("Failed to parse %s. Edit again? "),
-                   sourceslist.c_str());
-         std::cout << outs;
-         res = !YnPrompt(true);
-      }
-      _error->RevertToStack();
-   } while (res == false);
-
-   if (!before.VerifyFile(sourceslist)) {
-      strprintf(
-         outs, _("Your '%s' file changed, please run 'apt-get update'."),
-         sourceslist.c_str());
-      std::cout << outs << std::endl;
-   }
-
-   return true;
-}
-									/*}}}*/
 
 
 bool ShowHelp(CommandLine &CmdL)