1 /*---------------------------------------------------------------------\
3 | |__ / \ / / . \ . \ |
8 \---------------------------------------------------------------------*/
9 /** \file zypp/RepoStatus.h
12 #ifndef ZYPP2_REPOSTATUS_H
13 #define ZYPP2_REPOSTATUS_H
16 #include "zypp/base/PtrTypes.h"
17 #include "zypp/CheckSum.h"
18 #include "zypp/Date.h"
20 ///////////////////////////////////////////////////////////////////
22 { /////////////////////////////////////////////////////////////////
24 ///////////////////////////////////////////////////////////////////
26 // CLASS NAME : RepoStatus
29 * \short Local facts about a repository
30 * This class represents the status of a
31 * repository on the system.
33 * Anything that is not provided on the metadata
34 * files, like the timestamp of the downloaded
35 * metadata, and its checksum.
39 friend std::ostream & operator<<( std::ostream & str, const RepoStatus & obj );
44 * Checksum of the repository.
45 * Usually the checksum of the index, but any
46 * checksum that changes when the repository changes
47 * in any way is sufficient.
49 std::string checksum() const;
52 * timestamp of the repository. If the repository
53 * changes, it has to be updated as well with the
56 Date timestamp() const;
59 * set the repository checksum \see checksum
62 RepoStatus & setChecksum( const std::string &checksum );
65 * set the repository timestamp \see timestamp
68 RepoStatus & setTimestamp( const Date ×tamp );
78 * \short Status from a single file
79 * As most repository state is represented
80 * by the status of the index file, you can
81 * construct the status from a file.
83 RepoStatus( const Pathname &file );
91 /** Pointer to implementation */
92 RWCOW_pointer<Impl> _pimpl;
94 ///////////////////////////////////////////////////////////////////
96 /** \relates RepoStatus Stream output */
97 std::ostream & operator<<( std::ostream & str, const RepoStatus & obj );
99 /////////////////////////////////////////////////////////////////
101 ///////////////////////////////////////////////////////////////////
102 #endif // ZYPP2_REPOSTATUS_H