1native::Fs(3) User Contributed Perl Documentation native::Fs(3)
2
3
4
6 SVN::Fs - Subversion filesystem functions
7
9 SVN::Fs wraps the functions in svn_fs.h. The actual namespace for
10 filesystem objects is "_p_svn_fs_t".
11
13 SVN::Fs::berkeley_logfiles($path, $only_unused)
14 SVN::Fs::berkeley_recover($path)
15 SVN::Fs::check_related($id1, $id2)
16 SVN::Fs::compare_ids($id1, $id2)
17 SVN::Fs::contents_changed($root1, $path1, $root2, $path2)
18 SVN::Fs::create($path, $config)
19 SVN::Fs::delete_fs($path)
20 SVN::Fs::deltify_revision($fs, $rev)
21 SVN::Fs::get_file_delta_stream($source_root, $source_path,
22 $target_root, $target_path)
23 SVN::Fs::hotcopy($src_path, $dest_path, $clean)
24 SVN::Fs::initialize($pool)
25 SVN::Fs::merge($source_root, $source_path, $target_root, $target_path,
26 $ancestor_root, $ancestor_path)
27 SVN::Fs::open($path, $config)
28 SVN::Fs::path($fs)
29 SVN::Fs::print_modules($s)
30 TODO - doesn't work, segfaults if $s is null, doesn't do anything
31 if its an empty string
32
33 SVN::Fs::props_changed($root1, $path1, $root2, $path2)
34 See also "SVN::Fs::contents_changed"
35
36 SVN::Fs::purge_txn($fs, $txn_id)
37 Cleanup the transaction $txn_id, removing it completely from the
38 filesystem $fs.
39
40 SVN::Fs::set_warning_func($fs, $code, $baton)
41 SVN::Fs::unparse_id($id)
42 Return a string containing the unparsed form of the node or node
43 revision id $id, which must be a "_p_svn_fs_id_t" object.
44
45 TODO - why isn't this a method of that object?
46
47 SVN::Fs::version()
48 TODO - what can we do with the _p_svn_version_t value returned?
49
50 SVN::Fs::create_access($username)
51 Return a new "_p_svn_fs_access_t" object representing $username.
52 $username is presumed to have been authenticated by the caller.
53
55 $fs->begin_txn($rev)
56 Creates a new transaction in the repository, and returns a
57 "_p_svn_fs_txn_t" object representing it. The new transaction's
58 base revision will be $rev, which should be a number.
59
60 $fs->change_rev_prop
61 $fs->generate_lock_token()
62 Generate a unique lock-token using $fs.
63
64 TODO - translate this to apply to Perl: This can be used in to
65 populate lock->token before calling svn_fs_attach_lock().
66
67 $fs->get_access()
68 The filesystem's current access context, as a "_p_svn_fs_access_t"
69 object. Returns undef if no access context has been set with the
70 set_access() method.
71
72 $fs->get_lock
73 $fs->get_locks
74 $fs->get_uuid()
75 The UUID associated with $fs.
76
77 $fs->list_transactions()
78 A reference to an array of all currently active transactions in the
79 filesystem. Each one is a string containing the transaction's ID,
80 suitable for passing to "$fs->open_txn()".
81
82 $fs->lock
83 $fs->open_txn($name)
84 Get a transaction in the repository by name. Returns a
85 "_p_svn_fs_txn_t" object.
86
87 $fs->revision_prop($rev, $propname)
88 The value of revision property $propname in revision $rev.
89
90 $fs->revision_proplist($rev)
91 A hashref containing the names and values of all revision
92 properties from revision $rev.
93
94 $fs->revision_root
95 $fs->set_access($access)
96 Associate an access context with an open filesystem.
97
98 This method can be run multiple times on the same open filesystem,
99 in order to change the filesystem access context for different
100 filesystem operations. $access should be a "_p_svn_fs_access_t"
101 object, or undef to disassociate the current access context from
102 the filesystem.
103
104 $fs->set_uuid($uuid)
105 Associate $uuid with $fs.
106
107 $fs->unlock
108 $fs->youngest_rev()
109 Return the number of the youngest revision in the filesystem. The
110 oldest revision in any filesystem is numbered zero.
111
113 $root->apply_text
114 $root->apply_textdelta
115 $root->change_node_prop($path, $propname, $value)
116 $root->check_path($path)
117 Kind of node at $path. A number which matches one of these
118 constants: $SVN::Node::none, $SVN::Node::file, $SVN::Node::dir,
119 $SVN::Node::unknown.
120
121 $root->close_root
122 $root->closest_copy
123 $root->copied_from
124 $root->copy
125 $root->delete
126 $root->dir_entries
127 $root->file_contents
128 $root->file_length
129 $root->file_md5_checksum
130 $root->fs()
131 The filesystem to which $root belongs, as a "_p_svn_fs_t" object.
132
133 $root->is_dir($path)
134 True if there is a node at $path which is a directory.
135
136 $root->is_file($path)
137 True if there is a node at $path which is a file.
138
139 $root->is_revision_root()
140 True if the root comes from a revision (i.e., the contents has
141 already been committed).
142
143 $root->is_txn_root()
144 True if the root comes from a transaction.
145
146 $root->make_dir
147 $root->make_file
148 $root->node_created_path($path)
149 $root->node_created_rev($path)
150 $root->node_history($path)
151 TODO - _p_svn_fs_history_t
152
153 $root->node_id($path)
154 $root->node_prop($path, $propname)
155 $root->node_proplist($path)
156 $root->paths_changed()
157 A reference to a hash indicating what changes are made in the root.
158 The keys are the paths of the files changed, starting with "/" to
159 indicate the top-level directory of the repository. The values are
160 "_p_svn_fs_path_change_t" objects which contain information about
161 what kind of changes are made.
162
163 $root->revision_link
164 $root->revision_root_revision
165 Revision number of the revision the root comes from. For
166 transaction roots, returns $SVN::Core::INVALID_REVNUM.
167
169 $history->location()
170 In list context, a list of two items: the path to the node whose
171 history this is, and the revision number in which it exists. In
172 scalar context returns only the revision number.
173
174 $history->prev($cross_copies)
175
177 $txn->abort()
178 Abort the transaction. Any changes made in $txn are discarded, and
179 the filesystem is left unchanged.
180
181 Note: This function first sets the state of $txn to 'dead', and
182 then attempts to purge it and any related data from the filesystem.
183 If some part of the cleanup process fails, $txn and some portion of
184 its data may remain in the database after this function returns.
185 Use "$fs->purge_txn()" to retry the transaction cleanup.
186
187 $txn->base_revision()
188 The transaction's base revision number.
189
190 $txn->change_prop($name, $value)
191 Add, change, or remove a property from the transaction. If $value
192 is "undef" then the property $name is removed, if it exists.
193 Otherwise the property $name is set to the new value.
194
195 $txn->commit
196 $txn->name()
197 Full name of the revision, in the same format as can be passed to
198 "$fs->open_txn()".
199
200 $txn->prop($name)
201 The value of the transaction's $name property.
202
203 $txn->proplist()
204 A reference to a hash containing all the transaction's properties,
205 keyed by name.
206
207 $txn->root()
208 The root directory of the transaction, as a "_p_svn_fs_root_t"
209 object.
210
212 SYNOPSIS
213 my $access = SVN::Fs::create_access($username);
214
215 my $access = $fs->get_access;
216 $fs->set_access($access);
217
218 my $username = $access->get_username;
219
220 $access->add_lock_token($token);
221
222 METHODS
223 $access->add_lock_token($token)
224 Push a lock-token into the access context. The context remembers
225 all tokens it receives, and makes them available to fs functions.
226
227 $access->get_username
228 The username represented by the access context.
229
231 An object representing a directory entry. Values of this type are
232 returned as the values in the hash returned by "$root->dir_entries()".
233 They are like svn_dirent_t objects, but have less information.
234
235 $dirent->id()
236 TODO
237
238 $dirent->kind()
239 Node kind. A number which matches one of these constants:
240 $SVN::Node::none, $SVN::Node::file, $SVN::Node::dir,
241 $SVN::Node::unknown.
242
243 $dirent->name()
244 The filename of the directory entry.
245
247 $change->change_kind()
248 The type of change made. A number which matches one of the
249 following:
250
251 $SVN::Fs::PathChange::modify
252 Content at path modified.
253
254 $SVN::Fs::PathChange::add
255 Path added in transaction.
256
257 $SVN::Fs::PathChange::delete
258 Path removed in transaction.
259
260 $SVN::Fs::PathChange::replace
261 Path removed and re-added in transaction.
262
263 $SVN::Fs::PathChange::reset
264 Ignore all previous change items for path (internal-use only).
265
266 $change->node_rev_id()
267 Node revision id of changed path. A "_p_svn_fs_id_t" object.
268
269 $change->prop_mod()
270 True if the properties were modified.
271
272 $change->text_mod()
273 True if the text (content) was modified.
274
276 Licensed to the Apache Software Foundation (ASF) under one
277 or more contributor license agreements. See the NOTICE file
278 distributed with this work for additional information
279 regarding copyright ownership. The ASF licenses this file
280 to you under the Apache License, Version 2.0 (the
281 "License"); you may not use this file except in compliance
282 with the License. You may obtain a copy of the License at
283
284 http://www.apache.org/licenses/LICENSE-2.0
285
286 Unless required by applicable law or agreed to in writing,
287 software distributed under the License is distributed on an
288 "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
289 KIND, either express or implied. See the License for the
290 specific language governing permissions and limitations
291 under the License.
292
293
294
295perl v5.36.1 2023-11-20 native::Fs(3)