libzypp  11.13.5
zypp::Patch Class Reference

Class representing a patch. More...

#include <Patch.h>

Inheritance diagram for zypp::Patch:

List of all members.

Classes

class  ReferenceIterator
 Query class for Patch issue references like bugzilla and security issues the patch is supposed to fix. More...

Public Types

enum  Category {
  CAT_OTHER, CAT_YAST, CAT_SECURITY, CAT_RECOMMENDED,
  CAT_OPTIONAL, CAT_DOCUMENT
}
enum  InteractiveFlag { NoFlags = 0x0000, Reboot = 0x0001, Message = 0x0002, License = 0x0004 }
 Flags defining if and why this patch is interactive. More...
enum  SeverityFlag {
  SEV_NONE = 0, SEV_OTHER = 1, SEV_LOW = 1<<1, SEV_MODERATE = 1<<2,
  SEV_IMPORTANT = 1<<3, SEV_CRITICAL = 1<<4
}
 Possible severity levels for (security) patches. More...
typedef Patch Self
typedef ResTraits< SelfTraitsType
typedef TraitsType::PtrType Ptr
typedef TraitsType::constPtrType constPtr
typedef sat::SolvableSet Contents
- Public Types inherited from zypp::ResObject
- Public Types inherited from zypp::Resolvable
typedef TraitsType::KindType Kind

Public Member Functions

 ZYPP_DECLARE_FLAGS (InteractiveFlags, InteractiveFlag)
 ZYPP_DECLARE_FLAGS (SeverityFlags, SeverityFlag)
Date timestamp () const
 Issue date time.
std::string category () const
 Patch category (recommended, security,...)
Category categoryEnum () const
 Patch category as enum of wellknown categories.
std::string severity () const
 Severity string as specified in metadata.
SeverityFlag severityFlag () const
 Severity string mapped to an enum.
bool rebootSuggested () const
 Does the system need to reboot to finish the update process?
bool restartSuggested () const
 Does the patch affect the package manager itself? restart is suggested then.
bool reloginSuggested () const
 Does the patch needs the user to relogin to take effect? relogin is suggested then.
std::string message (const Locale &lang_r=Locale()) const
 Information or warning to be displayed to the user.
InteractiveFlags interactiveFlags () const
 Get the InteractiveFlags of this Patch.
bool interactiveWhenIgnoring (InteractiveFlags flags_r=NoFlags) const
 Is the patch still interactive when ignoring this flags?
bool interactive () const
 Is the patch installation interactive? (does it need user input?)
Contents contents () const
 The collection of packages associated with this patch.
ReferenceIterator referencesBegin () const
 Get an iterator to the beginning of the patch references.
ReferenceIterator referencesEnd () const
 Get an iterator to the end of the patch references.
- Public Member Functions inherited from zypp::ResObject
template<class _Res >
ResTraits< _Res >::constPtrType asKind () const
 Convert this into a Ptr of a certain Kind.
template<class _Res >
ResTraits< _Res >::PtrType asKind ()
std::string summary (const Locale &lang_r=Locale()) const
 Short text describing the resolvable.
std::string description (const Locale &lang_r=Locale()) const
 Long text describing the resolvable.
std::string insnotify (const Locale &lang_r=Locale()) const
 Installation Notification.
std::string delnotify (const Locale &lang_r=Locale()) const
 De-Installation Notification.
std::string licenseToConfirm (const Locale &lang_r=Locale()) const
 License or agreement to accept.
Vendor vendor () const
 Vendor.
std::string distribution () const
 The distribution string.
std::string cpeId () const
 The Common Platform Enumeration name for this product.
ByteCount installSize () const
 Installed size.
ByteCount downloadSize () const
 Size of the rpm package.
Repository repository () const
RepoInfo repoInfo () const
 RepoInfo associated with the repository providing this resolvable.
unsigned mediaNr () const
 Media number where the resolvable is located 0 if no media access is required.
Date buildtime () const
 build time of the resolvable
Date installtime () const
 Installation time 0 if the resolvable is not installed.
const DiskUsagediskusage () const
 Disk usage per directory A common attribute, although mostly packages require noticeable disk space.
bool supportsLocales () const
bool supportsLocale (const Locale &locale_r) const
bool supportsLocale (const LocaleSet &locales_r) const
 Whether this Solvable supports at least one of the specified locales.
bool supportsRequestedLocales () const
LocaleSet getSupportedLocales () const
- Public Member Functions inherited from zypp::Resolvable
bool isSystem () const
 Whether this represents an installed solvable.
bool onSystemByUser () const
 Whether this is known to be installed on behalf of a user request.
IdString ident () const
 The identifier.
ResKind kind () const
bool isKind (const ResKind &kind_r) const
 Test whether a Solvable is of a certain ResKind.
template<class _Res >
bool isKind () const
std::string name () const
Edition edition () const
Arch arch () const
bool multiversionInstall () const
 Whether different versions of this package can be installed at the same time.
const sat::SolvablesatSolvable () const
 Access the corresponding ::Solvable.
PoolItem poolItem () const
 Access the corresponding PoolItem.
Capabilities dep (Dep which_r) const
 Select by Dep.
Capabilities operator[] (Dep which_r) const
Capabilities provides () const
Capabilities requires () const
Capabilities conflicts () const
Capabilities obsoletes () const
Capabilities recommends () const
Capabilities suggests () const
Capabilities enhances () const
Capabilities supplements () const
Capabilities prerequires () const
CapabilitySet providesNamespace (const std::string &namespace_r) const
 Return the namespaced provides 'namespace([value])[ op edition]' of this Solvable.
CapabilitySet valuesOfNamespace (const std::string &namespace_r) const
 Return 'value[ op edition]' for namespaced provides 'namespace(value)[ op edition]'.
- Public Member Functions inherited from zypp::base::ReferenceCounted
 ReferenceCounted ()
 Default ctor.
 ReferenceCounted (const ReferenceCounted &rhs)
 Copy ctor.
virtual ~ReferenceCounted ()
 Dtor.
ReferenceCountedoperator= (const ReferenceCounted &)
 Assignment.
unsigned refCount () const
 Return reference counter value.
void ref () const
 Add a reference.
void unref () const
 Release a reference.

Protected Member Functions

 Patch (const sat::Solvable &solvable_r)
 Ctor.
virtual ~Patch ()
 Dtor.
- Protected Member Functions inherited from zypp::ResObject
 ResObject (const sat::Solvable &solvable_r)
 Ctor.
virtual ~ResObject ()
 Dtor.
virtual std::ostream & dumpOn (std::ostream &str) const
 Helper for stream output.
- Protected Member Functions inherited from zypp::Resolvable
 Resolvable (const sat::Solvable &solvable_r)
 Ctor.
virtual ~Resolvable ()
 Dtor.
- Protected Member Functions inherited from zypp::sat::Solvable
 Solvable ()
 Default ctor creates noSolvable.
 Solvable (IdType id_r)
 PoolImpl ctor.
template<class _Iterator >
bool isKind (_Iterator begin, _Iterator end)
std::string asString () const
 String representation "ident-edition.arch" or "noSolvable".
bool identical (Solvable rhs) const
 Test whether two Solvables have the same content.
bool sameNVRA (Solvable rhs) const
 Test for same name-version-release.arch.
Solvable nextInPool () const
 Return next Solvable in Pool (or noSolvable).
Solvable nextInRepo () const
 Return next Solvable in Repo (or noSolvable).
::_Solvable * get () const
 Expert backdoor.
IdType id () const
 Expert backdoor.
std::string lookupStrAttribute (const SolvAttr &attr) const
 returns the string attribute value for attr or an empty string if it does not exists.
std::string lookupStrAttribute (const SolvAttr &attr, const Locale &lang_r) const
unsigned long long lookupNumAttribute (const SolvAttr &attr) const
 returns the numeric attribute value for attr or 0 if it does not exists.
bool lookupBoolAttribute (const SolvAttr &attr) const
 returns the boolean attribute value for attr or false if it does not exists.
detail::IdType lookupIdAttribute (const SolvAttr &attr) const
 returns the id attribute value for attr or detail::noId if it does not exists.
CheckSum lookupCheckSumAttribute (const SolvAttr &attr) const
 returns the CheckSum attribute value for attr or an empty CheckSum if ir does not exist.
OnMediaLocation lookupLocation () const
 returns OnMediaLocation data: This is everything we need to download e.g.
void getSupportedLocales (LocaleSet &locales_r) const
 Return the supported locales via locales_r.
- Protected Member Functions inherited from zypp::base::ReferenceCounted
virtual void ref_to (unsigned) const
 Trigger derived classes after refCount was increased.
virtual void unref_to (unsigned) const
 Trigger derived classes after refCount was decreased.

Friends

Ptr make (const sat::Solvable &solvable_r)
 Directly create a certain kind of ResObject from sat::Solvable.

Additional Inherited Members

ResTraits< _Res >::PtrType asKind (const ResObject::Ptr &p)
bool isKind (const Resolvable::constPtr &p)
bool isKind (const sat::Solvable &solvable_r)

Detailed Description

Class representing a patch.

A patch represents a specific problem that can be fixed by pulling in the patch dependencies.

Patches can be marked for installation but their installation is a no-op.

Definition at line 36 of file Patch.h.


Member Typedef Documentation

Reimplemented from zypp::ResObject.

Definition at line 39 of file Patch.h.

Reimplemented from zypp::ResObject.

Definition at line 40 of file Patch.h.

Reimplemented from zypp::ResObject.

Definition at line 41 of file Patch.h.

Reimplemented from zypp::ResObject.

Definition at line 42 of file Patch.h.

Definition at line 45 of file Patch.h.


Member Enumeration Documentation

Enumerator:
CAT_OTHER 
CAT_YAST 
CAT_SECURITY 
CAT_RECOMMENDED 
CAT_OPTIONAL 
CAT_DOCUMENT 

Definition at line 47 of file Patch.h.

Flags defining if and why this patch is interactive.

Enumerator:
NoFlags 
Reboot 
Message 
License 

Definition at line 60 of file Patch.h.

Possible severity levels for (security) patches.

Metadata string values are mapped to this enum to ease computations. For a string representation call asSring( const Patch::SeverityFlag & ).

Enumerator:
SEV_NONE 

no value specified

SEV_OTHER 

unknown value specified

SEV_LOW 

Low.

SEV_MODERATE 

Moderate.

SEV_IMPORTANT 

Important.

SEV_CRITICAL 

Critical.

Definition at line 74 of file Patch.h.


Constructor & Destructor Documentation

zypp::Patch::Patch ( const sat::Solvable solvable_r)
protected

Ctor.

Definition at line 32 of file Patch.cc.

zypp::Patch::~Patch ( )
protectedvirtual

Dtor.

Definition at line 41 of file Patch.cc.


Member Function Documentation

zypp::Patch::ZYPP_DECLARE_FLAGS ( InteractiveFlags  ,
InteractiveFlag   
)
zypp::Patch::ZYPP_DECLARE_FLAGS ( SeverityFlags  ,
SeverityFlag   
)
Date zypp::Patch::timestamp ( ) const
inline

Issue date time.

For now it is the same as buildtime().

Definition at line 89 of file Patch.h.

std::string zypp::Patch::category ( ) const

Patch category (recommended, security,...)

Definition at line 167 of file Patch.cc.

Patch::Category zypp::Patch::categoryEnum ( ) const

Patch category as enum of wellknown categories.

Unknown values are mapped to CAT_OTHER.

Definition at line 50 of file Patch.cc.

std::string zypp::Patch::severity ( ) const

Severity string as specified in metadata.

For use in computaions see severityFlag.

Definition at line 109 of file Patch.cc.

Patch::SeverityFlag zypp::Patch::severityFlag ( ) const

Severity string mapped to an enum.

Unknown string values are mapped to SEV_OTHER

Definition at line 112 of file Patch.cc.

bool zypp::Patch::rebootSuggested ( ) const

Does the system need to reboot to finish the update process?

Definition at line 170 of file Patch.cc.

bool zypp::Patch::restartSuggested ( ) const

Does the patch affect the package manager itself? restart is suggested then.

Definition at line 173 of file Patch.cc.

bool zypp::Patch::reloginSuggested ( ) const

Does the patch needs the user to relogin to take effect? relogin is suggested then.

Definition at line 176 of file Patch.cc.

std::string zypp::Patch::message ( const Locale lang_r = Locale()) const

Information or warning to be displayed to the user.

Definition at line 164 of file Patch.cc.

Patch::InteractiveFlags zypp::Patch::interactiveFlags ( ) const

Get the InteractiveFlags of this Patch.

Definition at line 179 of file Patch.cc.

bool zypp::Patch::interactiveWhenIgnoring ( InteractiveFlags  flags_r = NoFlags) const

Is the patch still interactive when ignoring this flags?

Definition at line 203 of file Patch.cc.

bool zypp::Patch::interactive ( ) const

Is the patch installation interactive? (does it need user input?)

For security reasons patches requiring a reboot are not installed in an unattended mode. They are considered to be interactive so the user gets informed about the need for reboot. ignoreRebootFlag_r may be used to explicitly turn off this behavior and include those patches (unless they actually contain interactive components as well, like messages or licenses).

Definition at line 215 of file Patch.cc.

Patch::Contents zypp::Patch::contents ( ) const

The collection of packages associated with this patch.

Definition at line 220 of file Patch.cc.

Patch::ReferenceIterator zypp::Patch::referencesBegin ( ) const
inline

Get an iterator to the beginning of the patch references.

See also:
Patch::ReferenceIterator

Definition at line 248 of file Patch.h.

Patch::ReferenceIterator zypp::Patch::referencesEnd ( ) const
inline

Get an iterator to the end of the patch references.

See also:
Patch::ReferenceIterator

Definition at line 251 of file Patch.h.


Friends And Related Function Documentation

Ptr make ( const sat::Solvable solvable_r)
friend

Directly create a certain kind of ResObject from sat::Solvable.

If the sat::Solvables kind is not appropriate, a NULL pointer is returned.

sat::Solvable s;
Package::Ptr pkg( make<Package>( s ) );
Todo:
make<> was a poor choice (AFAIR because gcc had some trouble with asKind<>(sat::Solvable)). Remove it in favour of asKind<>(sat::Solvable)

Definition at line 238 of file ResObject.h.


The documentation for this class was generated from the following files: