12 #ifndef ZYPP_RESSTATUS_H
13 #define ZYPP_RESSTATUS_H
25 class UserLockQueryManip;
195 {
return ! fieldValueIs<WeakField>(
NO_WEAK ); }
198 {
return fieldValueAssign<WeakField>(
NO_WEAK ); }
220 {
return fieldValueIs<ValidateField>(
SATISFIED ); }
223 {
return fieldValueIs<ValidateField>(
BROKEN ); }
226 {
return fieldValueIs<ValidateField>(
NONRELEVANT ); }
232 {
return fieldValueIs<StateField>(
INSTALLED ); }
235 {
return fieldValueIs<StateField>(
UNINSTALLED ); }
256 {
return fieldValueIs<TransactField>(
LOCKED ); }
265 {
return fieldValueIs<TransactField>(
KEEP_STATE ); }
268 {
return fieldValueIs<TransactField>(
TRANSACT ); }
282 {
return fieldValueIs<TransactByField>(
SOLVER ); }
285 {
return fieldValueIs<TransactByField>(
APPL_LOW ); }
288 {
return fieldValueIs<TransactByField>(
APPL_HIGH ); }
291 {
return fieldValueIs<TransactByField>(
USER ); }
298 if ( isLessThan<TransactByField>( causer ) ) {
299 fieldValueAssign<TransactByField>( causer );
357 return setLock(
true, causer_r );
385 if (
isLocked() && isLessThan<TransactByField>( causer_r ) )
386 fieldValueAssign<TransactByField>( causer_r );
398 fieldValueAssign<TransactField>(
LOCKED );
399 fieldValueAssign<TransactByField>( causer_r );
402 if ( isGreaterThan<TransactByField>( causer_r ) )
404 fieldValueAssign<TransactField>(
KEEP_STATE );
405 fieldValueAssign<TransactByField>(
SOLVER );
414 bool ret =
setLock( to_r, causer_r );
430 if (
transacts() && isLessThan<TransactByField>( causer_r ) )
431 fieldValueAssign<TransactByField>( causer_r );
433 fieldValueAssign<TransactDetailField>(
NO_DETAIL );
437 if ( ! fieldValueIs<TransactField>(
KEEP_STATE )
438 && isGreaterThan<TransactByField>( causer_r ) ) {
444 fieldValueAssign<TransactField>(
TRANSACT );
448 fieldValueAssign<TransactField>(
KEEP_STATE );
450 fieldValueAssign<TransactDetailField>(
NO_DETAIL );
451 fieldValueAssign<TransactByField>( causer_r );
468 if ( fieldValueIs<TransactField>(
KEEP_STATE )
469 && isLessThan<TransactByField>( causer_r ) )
470 fieldValueAssign<TransactByField>( causer_r );
480 if ( fieldValueIs<TransactField>(
KEEP_STATE ) )
481 fieldValueAssign<TransactByField>(
SOLVER );
497 if ( fieldValueIs<TransactField>(
KEEP_STATE )
499 && isGreaterThan<TransactByField>( causerLimit_r ) )
583 fieldValueAssign<TransactDetailField>(
SOFT_REMOVE);
596 return fieldValueIs<TransactDetailField> (
SOFT_INSTALL);
600 return fieldValueIs<TransactDetailField> (
SOFT_REMOVE);
604 fieldValueAssign<TransactDetailField>(flag?
SOFT_INSTALL:0);
609 fieldValueAssign<TransactDetailField>(flag?
SOFT_REMOVE:0);
621 fieldValueAssign<ValidateField>(
SATISFIED);
627 fieldValueAssign<ValidateField>(
BROKEN);
669 template<
class TField>
675 template<
class TField>
681 template<
class TField>
685 template<
class TField>
710 {
return ! (lhs == rhs); }
740 #endif // ZYPP_RESSTATUS_H
bool setSoftInstall(bool flag)
bool setTransactByValue(TransactByValue causer)
StatusBackup(ResStatus &status_r)
bit::BitField< FieldType > BitFieldType
bool staysUninstalled() const
friend std::ostream & operator<<(std::ostream &str, const ResStatus &obj)
TransactValue getTransactValue() const
bool isToBeUninstalledDueToUpgrade() const
ResStatus::BitFieldType _bitfield
bool isToBeUninstalled() const
bool setSoftUninstall(bool flag)
bool test(TInt rhs)
Test whether all bits of rhs are set.
bool isNonRelevant() const
bool isToBeInstalledSoft() const
bit::Range< FieldType, LicenceConfirmedField::end, 4 > WeakField
bool isToBeUninstalledSoft() const
static const ResStatus toBeInstalled
bool wasUninstalled() const
friend bool operator==(const ResStatus &lhs, const ResStatus &rhs)
bool isUninstalled() const
bool isGreaterThan(FieldType val_r)
compare two values.
void setOrphaned(bool toVal_r=true)
Detail for no transact, i.e.
ValidateValue validate() const
Manipulator for ResStatus::UserLockQueryField.
bool maySetLock(bool to_r, TransactByValue causer_r)
bool resetTransact(TransactByValue causer_r)
Not the same as setTransact( false ).
bit::Range< FieldType, WeakField::end, 1 > UserLockQueryField
void setLicenceConfirmed(bool toVal_r=true)
bool setToBeUninstalledDueToUpgrade(TransactByValue causer)
bool onSystem() const
True if would be on system after commit.
static const ResStatus toBeUninstalledDueToUpgrade
bool setSoftLock(TransactByValue causer_r)
bool maySetToBeInstalled(TransactByValue causer)
bool isLessThan(FieldType val_r)
bool setSoftTransact(bool toTansact_r, TransactByValue causer_r, TransactByValue causerLimit_r)
Soft toggle between TRANSACT and KEEP_STATE.
BitFieldType bitfield() const
Debug helper returning the bitfield.
std::ostream & operator<<(std::ostream &str, const Exception &obj)
bit::Range< FieldType, TransactField::end, 2 > TransactByField
bit::Range< FieldType, ValidateField::end, 2 > TransactField
bool setTransactValue(TransactValue newVal_r, TransactByValue causer_r)
Set TransactValue.
bool maySetTransact(bool val_r, TransactByValue causer)
bool maySetTransactValue(TransactValue newVal_r, TransactByValue causer_r)
bit::Range< FieldType, TransactDetailField::end, 1 > LicenceConfirmedField
static const ResStatus toBeUninstalledDueToObsolete
bit::Range< FieldType, StateField::end, 2 > ValidateField
bit::Range< FieldType, 0, 1 > StateField
bool isUserLocked() const
bool setLock(bool toLock_r, TransactByValue causer_r)
Apply a lock (prevent transaction).
bool isByApplHigh() const
bool maySetToBeUninstalledSoft()
bool isLicenceConfirmed() const
bool setToBeUninstalled(TransactByValue causer)
bool setTransact(bool toTansact_r, TransactByValue causer_r)
Toggle between TRANSACT and KEEP_STATE.
bool isUndetermined() const
void setUserLockQueryMatch(bool match_r)
bool maySetSoftTransact(bool val_r, TransactByValue causer, TransactByValue causerLimit_r)
TInt value() const
Return the value.
bit::Range< FieldType, TransactByField::end, 2 > TransactDetailField
void setRecommended(bool toVal_r=true)
bool fieldValueIs(FieldType val_r) const
Return whether the corresponding Field has value val_r.
bool isToBeInstalled() const
bool setStatus(ResStatus newStatus_r)
bool wasInstalled() const
BitField & assign(TInt rhs)
Assign Range in rhs to this.
bool maySetSoftTransact(bool val_r, TransactByValue causer)
bool setToBeUninstalledSoft()
bool maySetToBeUninstalled(TransactByValue causer)
bool isToBeUninstalledDueToObsolete() const
bool setToBeInstalled(TransactByValue causer)
bool setSoftTransact(bool toTansact_r, TransactByValue causer_r)
bool isSoftLocked() const
bool isEqual(TInt rhs) const
Test for equal value within a Range.
void fieldValueAssign(FieldType val_r)
Set the corresponding Field to value val_r.
bool setToBeInstalledSoft()
void setUnneeded(bool toVal_r=true)
BitField & set(TInt rhs, bool doset_r)
Set or unset bits of rhs.
bool isToBeInstalledNotSoft() const
Range of bits starting at bit _begin with length _size.
static const ResStatus toBeUninstalled
bool setToBeUninstalledDueToObsolete()
bool offSystem() const
True if would be off system after commit.
bool isUserLockQueryMatch() const
TransactByValue getTransactByValue() const
bool staysInstalled() const
bool isRecommended() const
void setSuggested(bool toVal_r=true)
bool operator!=(const ResStatus &lhs, const ResStatus &rhs)