Ported zypper (except zypp-checkpatches) to libzypp-1.x.x.
authorMartin Vidner <mvidner@suse.cz>
Sat, 4 Nov 2006 14:17:51 +0000 (14:17 +0000)
committerMartin Vidner <mvidner@suse.cz>
Sat, 4 Nov 2006 14:17:51 +0000 (14:17 +0000)
package/zypper.changes
src/zmart-misc.cc
src/zmart-sources.cc
src/zmart.cc
src/zypp-checkpatches.cc

index 4ed8de8..af99267 100644 (file)
@@ -1,9 +1,9 @@
 -------------------------------------------------------------------
-Sat Nov  4 13:07:50 CET 2006 - mvidner@suse.cz
+Sat Nov  4 15:15:07 CET 2006 - mvidner@suse.cz
 
+- Ported zypper (except zypp-checkpatches) to libzypp-1.x.x.
 - Show patch messages.
-- Callbacks: added compatibility defines for libzypp 1.x.x,
-  fixed more warnings about unused variables.
+- Callbacks: fixed more warnings about unused variables.
 
 -------------------------------------------------------------------
 Fri Nov  3 17:48:09 CET 2006 - mvidner@suse.cz
index 597131a..b14935d 100644 (file)
@@ -21,8 +21,13 @@ extern Settings gSettings;
 void cond_init_target () {
   static bool done = false;
   if (!done) {
+#ifdef LIBZYPP_1xx
+    cerr_v << "Initializing Target (old way)" << endl;
+    God->initTarget("/", true);
+#else
     cerr_v << "Initializing Target" << endl;
     God->initializeTarget("/");
+#endif
     done = true;
   }
 }
@@ -270,8 +275,12 @@ std::string calculate_token()
     token_stream << "[" << src.alias() << "| " << src.url() << src.timestamp() << "]";
     MIL << "Source: " << src.alias() << " from " << src.timestamp() << std::endl;  
   }
-  
+
+#ifdef LIBZYPP_1xx
+  token_stream << "[" << "target" << "| " << Date::now() << "]"; // too bad
+#else
   token_stream << "[" << "target" << "| " << God->target()->timestamp() << "]";
+#endif
   
   //static std::string digest(const std::string& name, std::istream& is
   token = Digest::digest("sha1", token_stream);
index 7e9552f..2fd4aa4 100644 (file)
@@ -84,23 +84,13 @@ void include_source_by_url( const Url &url )
   
 }
 
-/*
-static void print_source_list( const std::list<zypp::source::SourceInfo> &sources )
-{
-  for( std::list<zypp::source::SourceInfo>::const_iterator it = sources.begin() ;
-       it != sources.end() ; ++it )
-  {
-    SourceInfo source = *it;
-    cout << ( source.enabled() ? "[x]" : "[ ]" );
-    cout << ( source.autorefresh() ? "* " : "  " );
-    if ( source.alias() != source.url().asString() )
-      cout << source.alias() << " (" << source.url() << ")" << endl;
-    else
-      cout << source.url() << endl;
-  }
-}*/
+#ifdef LIBZYPP_1xx
+typedef zypp::SourceManager::SourceInfo SourceInfo;
+#else
+using zypp::source::SourceInfo;
+#endif
 
-static void print_source_list(const std::list<zypp::source::SourceInfo> &sources )
+static void print_source_list(const std::list<SourceInfo> &sources )
 {
   Table tbl;
   TableHeader th;
@@ -111,7 +101,7 @@ static void print_source_list(const std::list<zypp::source::SourceInfo> &sources
   tbl << th;
 
   int i = 1;
-  for( std::list<zypp::source::SourceInfo>::const_iterator it = sources.begin() ;
+  for( std::list<SourceInfo>::const_iterator it = sources.begin() ;
        it != sources.end() ; ++it, ++i )
   {
     SourceInfo source = *it;
@@ -122,18 +112,33 @@ static void print_source_list(const std::list<zypp::source::SourceInfo> &sources
     // this is probably the closest possible compatibility arrangement
     if (gSettings.is_rug_compatible)
     {
+#ifdef LIBZYPP_1xx
+      tr << "Active";
+#else
       tr << (source.enabled() ? "Active" : "Disabled");
+#endif
     }
     // zypper status (enabled, autorefresh)
     else
     {
+#ifdef LIBZYPP_1xx
+      tr << "Yes";
+      tr << (source.autorefresh ? "Yes" : "No");
+#else
       tr << (source.enabled() ? "Yes" : "No");
       tr << (source.autorefresh() ? "Yes" : "No");
+#endif
     }
 
+#ifdef LIBZYPP_1xx
+    tr << source.type;
+    tr << source.alias;
+    tr << source.url.asString();
+#else
     tr << source.type();
     tr << source.alias();
     tr << source.url().asString();
+#endif
     tbl << tr;
   }
   cout << tbl;
@@ -141,14 +146,17 @@ static void print_source_list(const std::list<zypp::source::SourceInfo> &sources
 
 void list_system_sources()
 {
-  zypp::storage::PersistentStorage store;
-  
-  std::list<zypp::source::SourceInfo> sources;
+  std::list<SourceInfo> sources;
   
   try
   {
+#ifdef LIBZYPP_1xx
+    sources = SourceManager::sourceManager()->knownSourceInfos ("/");
+#else
+    zypp::storage::PersistentStorage store;
     store.init( "/" );
     sources = store.storedSources();
+#endif
   }
   catch ( const Exception &e )
   {
@@ -438,8 +446,11 @@ void rename_source( const std::string& anystring, const std::string& newalias )
 
 void refresh_sources()
 {
+#ifdef LIBZYPP_1xx
+  cerr << "Sorry, not implemented yet for libzypp-1.x.x" << endl;
+#else
   zypp::storage::PersistentStorage store;
-  std::list<zypp::source::SourceInfo> sources;
+  std::list<SourceInfo> sources;
 
   try
   {
@@ -452,7 +463,7 @@ void refresh_sources()
     exit(-1); 
   }
 
-  for(std::list<zypp::source::SourceInfo>::const_iterator it = sources.begin();
+  for(std::list<SourceInfo>::const_iterator it = sources.begin();
        it != sources.end() ; ++it)
   {
     try
@@ -474,6 +485,7 @@ void refresh_sources()
   }
 
   cout << _("All sytem sources have been refreshed.") << endl;
+#endif
 }
 
 MediaWrapper::MediaWrapper (const string& filename_or_url) {
index bd96abf..d1987af 100644 (file)
@@ -224,8 +224,12 @@ int main(int argc, char **argv)
     cout << "Warning! No sources. Operating only over the installed resolvables. You will not be able to install stuff" << endl;
   } 
   
+#ifdef LIBZYPP_1xx
   // dont add rpms
+  God->initTarget("/", true);
+#else
   God->initializeTarget("/");
+#endif
   
   std::string token = calculate_token();
   
index 1dce47f..c512a25 100644 (file)
@@ -83,6 +83,12 @@ namespace utils
 
 }
 
+#ifdef LIBZYPP_1xx
+typedef zypp::SourceManager::SourceInfo SourceInfo;
+#else
+using zypp::source::SourceInfo;
+#endif
+
 int main(int argc, char **argv)
 {
   const char *logfile = getenv("ZYPP_LOGFILE");
@@ -122,20 +128,33 @@ int main(int argc, char **argv)
   KeyRingCallbacks keyring_callbacks;
   DigestCallbacks digest_callbacks;
   
+#ifdef LIBZYPP_1xx
   // dont add rpms
+  God->initTarget("/", true);
+#else
   God->initializeTarget("/");
+#endif
   
   std::string token;
   stringstream token_stream;
   
+#ifdef LIBZYPP_1xx
+  token_stream << "[" << "target" << "| " << Date::now() << "]"; // too bad
+#else
   token_stream << "[" << "target" << "| " << God->target()->timestamp() << "]";
-  
-  std::list<source::SourceInfo> new_sources = manager->knownSourceInfos("/");
+#endif
+
+  std::list<SourceInfo> new_sources = manager->knownSourceInfos("/");
   MIL << "Found " << new_sources.size()  << " sources." << endl;
 
-  for ( std::list<source::SourceInfo>::iterator it = new_sources.begin(); it != new_sources.end(); ++it)
+  for ( std::list<SourceInfo>::iterator it = new_sources.begin(); it != new_sources.end(); ++it)
   {
+#ifdef LIBZYPP_1xx
+    Url url = it->url;
+#else
     Url url = it->url();
+#endif
+
     std::string scheme( url.getScheme());
 
     if ( (scheme == "cd" || scheme == "dvd") )
@@ -146,23 +165,27 @@ int main(int argc, char **argv)
     
     if ( ! it->enabled() )
     {
-      MIL << "Skipping disabled source: url:[" << it->url().asString() << "] product_dir:[" << it->path() << "] alias:[" << it->alias() << "] cache_dir:[" << it->cacheDir() << "] auto_refresh:[ " << it->autorefresh() << "]" << endl;
+      MIL << "Skipping disabled source: url:[" << url.asString() << "] product_dir:[" << it->path() << "] alias:[" << it->alias() << "] cache_dir:[" << it->cacheDir() << "] auto_refresh:[ " << it->autorefresh() << "]" << endl;
       continue;
     }
 
     // Note: Url(it->url).asString() to hide password in logs
-    MIL << "Creating source: url:[" << it->url().asString() << "] product_dir:[" << it->path() << "] alias:[" << it->alias() << "] cache_dir:[" << it->cacheDir() << "] auto_refresh:[ " << it->autorefresh() << "]" << endl;
+    MIL << "Creating source: url:[" << url.asString() << "] product_dir:[" << it->path() << "] alias:[" << it->alias() << "] cache_dir:[" << it->cacheDir() << "] auto_refresh:[ " << it->autorefresh() << "]" << endl;
     
     try
     {
-      Source_Ref src = SourceFactory().createFrom(it->type(), it->url(), it->path(), it->alias(), it->cacheDir(), false, it->autorefresh());
+      Source_Ref src = SourceFactory().createFrom(it->type(), url, it->path(), it->alias(), it->cacheDir(), false, it->autorefresh());
       src.refresh();
       token_stream << "[" << src.alias() << "| " << src.url() << src.timestamp() << "]";
     
       MIL << "Source: " << src.alias() << " from " << src.timestamp() << std::endl;
     
       // skip sources without patches sources for now
-      if ( src.hasResolvablesOfKind( ResTraits<zypp::Patch>::kind ) )
+      bool has_patches = true;
+#ifndef LIBZYPP_1xx
+      has_patches = src.hasResolvablesOfKind( ResTraits<zypp::Patch>::kind );
+#endif
+      if ( has_patches )
       {
         MIL << "Including source " << src.url() << std::endl;
         gData.sources.push_back(src);