SvnCpp
entry.hpp
Go to the documentation of this file.
1 /*
2  * ====================================================================
3  * Copyright (c) 2002-2018 The RapidSVN Group. All rights reserved.
4  *
5  * This program is free software: you can redistribute it and/or modify
6  * it under the terms of the GNU Lesser General Public License as
7  * published by the Free Software Foundation, either version 3 of the
8  * License, or (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this program (in the file LGPL.txt).
17  * If not, see <http://www.gnu.org/licenses/>.
18  *
19  * This software consists of voluntary contributions made by many
20  * individuals. For exact contribution history, see the revision
21  * history and logs, available at http://rapidsvn.tigris.org/.
22  * ====================================================================
23  */
24 #ifndef _SVNCPP_ENTRY_HPP_
25 #define _SVNCPP_ENTRY_HPP_
26 
27 // subversion api
28 #include "svn_wc.h"
29 
30 // svncpp
31 #include "svncpp/pool.hpp"
32 
33 
34 namespace svn
35 {
40  class Entry
41  {
42  public:
53  Entry(const svn_wc_entry_t * src = 0);
54 
58  Entry(const Entry & src);
59 
63  virtual ~Entry();
64 
73  bool isValid() const
74  {
75  return m_valid;
76  }
77 
81  const char *
82  name() const
83  {
84  return m_entry->name;
85  }
86 
90  svn_revnum_t
91  revision() const
92  {
93  return m_entry->revision;
94  }
95 
99  const char *
100  url() const
101  {
102  return m_entry->url;
103  }
104 
108  const char *
109  repos() const
110  {
111  return m_entry->repos;
112  }
113 
117  const char *
118  uuid() const
119  {
120  return m_entry->uuid;
121  }
122 
126  svn_node_kind_t
127  kind() const
128  {
129  return m_entry->kind;
130  }
131 
135  svn_wc_schedule_t
136  schedule() const
137  {
138  return m_entry->schedule;
139  }
140 
144  bool
145  isCopied() const
146  {
147  return m_entry->copied != 0;
148  }
149 
153  bool
154  isDeleted() const
155  {
156  return m_entry->deleted != 0;
157  }
158 
162  bool
163  isAbsent() const
164  {
165  return m_entry->absent != 0;
166  }
167 
171  const char *
172  copyfromUrl() const
173  {
174  return m_entry->copyfrom_url;
175  }
176 
180  svn_revnum_t
181  copyfromRev() const
182  {
183  return m_entry->copyfrom_rev;
184  }
185 
189  const char *
190  conflictOld() const
191  {
192  return m_entry->conflict_old;
193  }
194 
198  const char *
199  conflictNew() const
200  {
201  return m_entry->conflict_new;
202  }
203 
207  const char *
208  conflictWrk() const
209  {
210  return m_entry->conflict_wrk;
211  }
212 
216  const char *
217  prejfile() const
218  {
219  return m_entry->prejfile;
220  }
221 
226  apr_time_t
227  textTime() const
228  {
229  return m_entry->text_time;
230  }
231 
236  apr_time_t
237  propTime() const
238  {
239  return m_entry->prop_time;
240  }
241 
246  const char *
247  checksum() const
248  {
249  return m_entry->checksum;
250  }
251 
255  svn_revnum_t
256  cmtRev() const
257  {
258  return m_entry->cmt_rev;
259  }
260 
264  apr_time_t
265  cmtDate() const
266  {
267  return m_entry->cmt_date;
268  }
269 
273  const char *
274  cmtAuthor() const
275  {
276  return m_entry->cmt_author;
277  }
278 
282  const char *
283  lockOwner() const
284  {
285  return m_entry->lock_owner;
286  }
287 
291  const char *
292  lockComment() const
293  {
294  return m_entry->lock_comment;
295  }
296 
300  operator svn_wc_entry_t * () const
301  {
302  return m_entry;
303  }
304 
308  Entry &
309  operator = (const Entry &);
310 
311  private:
312  svn_wc_entry_t * m_entry;
313  Pool m_pool;
314  bool m_valid;
315 
319  void
320  init(const svn_wc_entry_t * src);
321  };
322 
323 }
324 
325 #endif
326 /* -----------------------------------------------------------------
327  * local variables:
328  * eval: (load-file "../../rapidsvn-dev.el")
329  * end:
330  */
Definition: entry.hpp:41
svn_revnum_t copyfromRev() const
Definition: entry.hpp:181
const char * checksum() const
Definition: entry.hpp:247
const char * lockComment() const
Definition: entry.hpp:292
const char * uuid() const
Definition: entry.hpp:118
apr_time_t cmtDate() const
Definition: entry.hpp:265
Entry & operator=(const Entry &)
svn_revnum_t revision() const
Definition: entry.hpp:91
virtual ~Entry()
const char * cmtAuthor() const
Definition: entry.hpp:274
const char * conflictOld() const
Definition: entry.hpp:190
apr_time_t propTime() const
Definition: entry.hpp:237
const char * conflictWrk() const
Definition: entry.hpp:208
const char * repos() const
Definition: entry.hpp:109
const char * conflictNew() const
Definition: entry.hpp:199
const char * name() const
Definition: entry.hpp:82
svn_revnum_t cmtRev() const
Definition: entry.hpp:256
bool isAbsent() const
Definition: entry.hpp:163
const char * prejfile() const
Definition: entry.hpp:217
bool isDeleted() const
Definition: entry.hpp:154
Entry(const Entry &src)
bool isCopied() const
Definition: entry.hpp:145
svn_wc_schedule_t schedule() const
Definition: entry.hpp:136
apr_time_t textTime() const
Definition: entry.hpp:227
Entry(const svn_wc_entry_t *src=0)
bool isValid() const
Definition: entry.hpp:73
svn_node_kind_t kind() const
Definition: entry.hpp:127
const char * lockOwner() const
Definition: entry.hpp:283
const char * copyfromUrl() const
Definition: entry.hpp:172
const char * url() const
Definition: entry.hpp:100
Definition: pool.hpp:37
Definition: annotate_line.hpp:32