24 #define ZYPP_USE_RESOLVER_INTERNALS
48 SolutionAction::SolutionAction()
53 SolutionAction::~SolutionAction()
63 os <<
"TransactionSolutionAction: ";
65 case KEEP: os <<
"Keep " << _item;
break;
66 case INSTALL: os <<
"Install " << _item;
break;
67 case REMOVE: os <<
"Remove " << _item;
break;
68 case UNLOCK: os <<
"Unlock " << _item;
break;
69 case LOCK: os <<
"Lock " << _item;
break;
70 case REMOVE_EXTRA_REQUIRE: os <<
"Remove require " << _capability;
break;
71 case REMOVE_EXTRA_CONFLICT: os <<
"Remove conflict " << _capability;
break;
72 case ADD_SOLVE_QUEUE_ITEM: os <<
"Add SolveQueueItem " << _solverQueueItem;
break;
73 case REMOVE_SOLVE_QUEUE_ITEM: os <<
"Remove SolveQueueItem " << _solverQueueItem;
break;
82 for (SolutionActionList::const_iterator iter = actionlist.begin(); iter != actionlist.end(); ++iter) {
94 os <<
"InjectSolutionAction: ";
96 case WEAK: os <<
"Weak";
break;
97 default: os <<
"Wrong kind";
break;
110 os <<
"SolutionAction<";
111 os <<
"not specified";
127 if (_item.status().isToBeUninstalled())
133 if (_item.status().isToBeInstalled()) {
136 }
else if (_item.status().isInstalled())
143 if (!ret)
ERR <<
"Cannot unlock " << _item << endl;
148 if (!ret)
ERR <<
"Cannot lock " << _item << endl;
150 case REMOVE_EXTRA_REQUIRE:
151 resolver.removeExtraRequire (_capability);
153 case REMOVE_EXTRA_CONFLICT:
154 resolver.removeExtraConflict (_capability);
156 case ADD_SOLVE_QUEUE_ITEM:
157 resolver.addQueueItem(_solverQueueItem);
159 case REMOVE_SOLVE_QUEUE_ITEM:
160 resolver.removeQueueItem(_solverQueueItem);
163 ERR <<
"Wrong TransactionKind" << endl;
175 resolver.addWeak (_item);
178 ERR <<
"No valid InjectSolutionAction kind found" << endl;
std::ostream & dumpOn(std::ostream &str, const zypp::shared_ptr< void > &obj)
ostream & operator<<(ostream &os, const SolutionActionList &actionlist)
Resolver ResolverInternal
Preferred name in API.
IMPL_PTR_TYPE(SATResolver)
std::list< SolutionAction_Ptr > SolutionActionList