00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef _SVNCPP_ENTRY_HPP_
00014 #define _SVNCPP_ENTRY_HPP_
00015
00016
00017 #include "svn_wc.h"
00018
00019
00020 #include "svncpp/pool.hpp"
00021
00022
00023 namespace svn
00024 {
00029 class Entry
00030 {
00031 public:
00042 Entry (const svn_wc_entry_t * src = 0);
00043
00047 Entry (const Entry & src);
00048
00052 virtual ~Entry ();
00053
00062 bool isValid () const
00063 {
00064 return m_valid;
00065 }
00066
00070 const char *
00071 name () const
00072 {
00073 return m_entry->name;
00074 }
00075
00079 const svn_revnum_t
00080 revision () const
00081 {
00082 return m_entry->revision;
00083 }
00084
00088 const char *
00089 url () const
00090 {
00091 return m_entry->url;
00092 }
00093
00097 const char *
00098 repos () const
00099 {
00100 return m_entry->repos;
00101 }
00102
00106 const char *
00107 uuid () const
00108 {
00109 return m_entry->uuid;
00110 }
00111
00115 const svn_node_kind_t
00116 kind () const
00117 {
00118 return m_entry->kind;
00119 }
00120
00124 const svn_wc_schedule_t
00125 schedule () const
00126 {
00127 return m_entry->schedule;
00128 }
00129
00133 const bool
00134 isCopied () const
00135 {
00136 return m_entry->copied != 0;
00137 }
00138
00142 const bool
00143 isDeleted () const
00144 {
00145 return m_entry->deleted != 0;
00146 }
00147
00151 const bool
00152 isAbsent () const
00153 {
00154 return m_entry->absent != 0;
00155 }
00156
00160 const char *
00161 copyfromUrl () const
00162 {
00163 return m_entry->copyfrom_url;
00164 }
00165
00169 const svn_revnum_t
00170 copyfromRev () const
00171 {
00172 return m_entry->copyfrom_rev;
00173 }
00174
00178 const char *
00179 conflictOld () const
00180 {
00181 return m_entry->conflict_old;
00182 }
00183
00187 const char *
00188 conflictNew () const
00189 {
00190 return m_entry->conflict_new;
00191 }
00192
00196 const char *
00197 conflictWrk () const
00198 {
00199 return m_entry->conflict_wrk;
00200 }
00201
00205 const char *
00206 prejfile () const
00207 {
00208 return m_entry->prejfile;
00209 }
00210
00215 const apr_time_t
00216 textTime () const
00217 {
00218 return m_entry->text_time;
00219 }
00220
00225 const apr_time_t
00226 propTime () const
00227 {
00228 return m_entry->prop_time;
00229 }
00230
00235 const char *
00236 checksum () const
00237 {
00238 return m_entry->checksum;
00239 }
00240
00244 const svn_revnum_t
00245 cmtRev () const
00246 {
00247 return m_entry->cmt_rev;
00248 }
00249
00253 const apr_time_t
00254 cmtDate () const
00255 {
00256 return m_entry->cmt_date;
00257 }
00258
00262 const char *
00263 cmtAuthor () const
00264 {
00265 return m_entry->cmt_author;
00266 }
00267
00271 operator svn_wc_entry_t * () const
00272 {
00273 return m_entry;
00274 }
00275
00279 Entry &
00280 operator = (const Entry &);
00281
00282 private:
00283 svn_wc_entry_t * m_entry;
00284 Pool m_pool;
00285 bool m_valid;
00286
00290 void
00291 init (const svn_wc_entry_t * src);
00292 };
00293
00294 }
00295
00296 #endif
00297
00298
00299
00300
00301