~svn/ubuntu/raring/subversion/ppa

« back to all changes in this revision

Viewing changes to subversion/libsvn_fs_base/node-rev.h

  • Committer: Bazaar Package Importer
  • Author(s): Adam Conrad
  • Date: 2005-12-05 01:26:14 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20051205012614-qom4xfypgtsqc2xq
Tags: 1.2.3dfsg1-3ubuntu1
Merge with the final Debian release of 1.2.3dfsg1-3, bringing in
fixes to the clean target, better documentation of the libdb4.3
upgrade and build fixes to work with swig1.3_1.3.27.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* node-rev.h : interface to node revision retrieval and storage
 
2
 *
 
3
 * ====================================================================
 
4
 * Copyright (c) 2000-2004 CollabNet.  All rights reserved.
 
5
 *
 
6
 * This software is licensed as described in the file COPYING, which
 
7
 * you should have received as part of this distribution.  The terms
 
8
 * are also available at http://subversion.tigris.org/license-1.html.
 
9
 * If newer versions of this license are posted there, you may use a
 
10
 * newer version instead, at your option.
 
11
 *
 
12
 * This software consists of voluntary contributions made by many
 
13
 * individuals.  For exact contribution history, see the revision
 
14
 * history and logs, available at http://subversion.tigris.org/.
 
15
 * ====================================================================
 
16
 */
 
17
 
 
18
#ifndef SVN_LIBSVN_FS_NODE_REV_H
 
19
#define SVN_LIBSVN_FS_NODE_REV_H
 
20
 
 
21
#define APU_WANT_DB
 
22
#include <apu_want.h>
 
23
 
 
24
#include "svn_fs.h"
 
25
#include "trail.h"
 
26
 
 
27
#ifdef __cplusplus
 
28
extern "C" {
 
29
#endif /* __cplusplus */
 
30
 
 
31
 
 
32
/*** Functions. ***/
 
33
 
 
34
/* Create an entirely new, mutable node in the filesystem FS, whose
 
35
   NODE-REVISION is NODEREV, as part of TRAIL.  Set *ID_P to the new
 
36
   node revision's ID.  Use POOL for any temporary allocation.
 
37
 
 
38
   COPY_ID is the copy_id to use in the node revision ID returned in
 
39
   *ID_P.
 
40
 
 
41
   TXN_ID is the Subversion transaction under which this occurs.
 
42
 
 
43
   After this call, the node table manager assumes that the new node's
 
44
   contents will change frequently.  */
 
45
svn_error_t *svn_fs_base__create_node (const svn_fs_id_t **id_p,
 
46
                                       svn_fs_t *fs,
 
47
                                       node_revision_t *noderev,
 
48
                                       const char *copy_id,
 
49
                                       const char *txn_id,
 
50
                                       trail_t *trail,
 
51
                                       apr_pool_t *pool);
 
52
 
 
53
/* Create a node revision in FS which is an immediate successor of
 
54
   OLD_ID, whose contents are NEW_NR, as part of TRAIL.  Set *NEW_ID_P
 
55
   to the new node revision's ID.  Use POOL for any temporary
 
56
   allocation.
 
57
 
 
58
   COPY_ID, if non-NULL, is a key into the `copies' table, and
 
59
   indicates that this new node is being created as the result of a
 
60
   copy operation, and specifically which operation that was.
 
61
 
 
62
   TXN_ID is the Subversion transaction under which this occurs.
 
63
 
 
64
   After this call, the deltification code assumes that the new node's
 
65
   contents will change frequently, and will avoid representing other
 
66
   nodes as deltas against this node's contents.  */
 
67
svn_error_t *svn_fs_base__create_successor (const svn_fs_id_t **new_id_p,
 
68
                                            svn_fs_t *fs,
 
69
                                            const svn_fs_id_t *old_id,
 
70
                                            node_revision_t *new_nr,
 
71
                                            const char *copy_id,
 
72
                                            const char *txn_id,
 
73
                                            trail_t *trail,
 
74
                                            apr_pool_t *pool);
 
75
 
 
76
 
 
77
/* Delete node revision ID from FS's `nodes' table, as part of TRAIL.
 
78
   WARNING: This does not check that the node revision is mutable!
 
79
   Callers should do that check themselves.  */
 
80
svn_error_t *svn_fs_base__delete_node_revision (svn_fs_t *fs,
 
81
                                                const svn_fs_id_t *id,
 
82
                                                trail_t *trail,
 
83
                                                apr_pool_t *pool);
 
84
 
 
85
 
 
86
#ifdef __cplusplus
 
87
}
 
88
#endif /* __cplusplus */
 
89
 
 
90
#endif /* SVN_LIBSVN_FS_NODE_REV_H */