Imported Upstream version 15.19.0
[platform/upstream/libzypp.git] / zypp / solver / detail / SolverQueueItemUpdate.cc
index e82357b..482c766 100644 (file)
  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
  * 02111-1307, USA.
  */
+extern "C"
+{
+#include <solv/solver.h>
+}
+
+#define ZYPP_USE_RESOLVER_INTERNALS
 
 #include "zypp/base/Logger.h"
 #include "zypp/solver/detail/SolverQueueItemUpdate.h"
 
 /////////////////////////////////////////////////////////////////////////
-namespace zypp 
+namespace zypp
 { ///////////////////////////////////////////////////////////////////////
   ///////////////////////////////////////////////////////////////////////
   namespace solver
@@ -63,16 +69,16 @@ SolverQueueItemUpdate::~SolverQueueItemUpdate()
 
 //---------------------------------------------------------------------------
 
-bool SolverQueueItemUpdate::addRule (Queue & q, Pool *SATPool)
+bool SolverQueueItemUpdate::addRule (sat::detail::CQueue & q)
 {
-    Id id = _item.satSolvable().id();
+    ::Id id = _item.satSolvable().id();
     if (id == ID_NULL) {
        ERR << "Update explicit: " << _item << " not found" << endl;
        return false;
     }
     MIL << "Update explicit " << _item << " with the SAT-Pool ID: " << id << endl;
-    queue_push( &(q), SOLVER_INSTALL_SOLVABLE_UPDATE );
-    queue_push( &(q), id );    
+    queue_push( &(q), SOLVER_UPDATE | SOLVER_SOLVABLE );
+    queue_push( &(q), id );
     return true;
 }
 
@@ -93,7 +99,7 @@ SolverQueueItemUpdate::cmp (SolverQueueItem_constPtr item) const
     if (cmp != 0)
         return cmp;
     SolverQueueItemUpdate_constPtr update = dynamic_pointer_cast<const SolverQueueItemUpdate>(item);
-    return compareByNVRA (_item.resolvable(), update->_item.resolvable());
+    return compareByNVRA (_item, update->_item);
 }