manpagez: man pages & more
man SVN::Dump::Record(3)
Home | html | info | man
SVN::Dump::Record(3)  User Contributed Perl Documentation SVN::Dump::Record(3)




NAME

       SVN::Dump::Record - A SVN dump record


SYNOPSIS

           # SVN::Dump::Record objects are returns by the next_record()
           # method of SVN::Dump


DESCRIPTION

       An "SVN::Dump::Record" object represents a Subversion dump record.


METHODS

       "SVN::Dump" provides the following gourps of methods:

       Record methods


       new()
           Create a new empty "SVN::Dump::Record" object.

       type()
           Return the record type, as guessed from its headers.

           The method dies if the record type cannot be determined.

       set_header( $h, $v )
           Set the header $h to the value $v.

       get_header( $h )
           Get the value of header $h.

       set_property( $p, $v )
           Set the property $p to the value $v.

       get_property( $p )
           Get the value of property $p.

       delete_property( @k )
           Delete the

       set_text( $t )
           Set the value of the text block.

       get_text()
           Get the value of the text block.

       Inner blocks manipulation

       A "SVN::Dump::Record" is composed of several inner blocks of various
       kinds: "SVN::Dump::Headers", "SVN::Dump::Property" and
       "SVN::Dump::Text".

       The following methods provide access to these blocks:

       set_headers_block( $headers )
       get_headers_block()
           Get or set the "SVN::Dump::Headers" object that represents the
           record headers.

       set_property_block( $property )
       get_property_block()
           Get or set the "SVN::Dump::Property" object that represents the
           record property block.

       delete_property( @keys )
           Delete the given properties. Behave like the builtin "delete()".

       set_text_block( $text )
       get_text_block()
           Get or set the "SVN::Dump::Text" object that represents the record
           text block.

       set_included_record( $record )
       get_included_record()
           Some special record are actually output recursiveley by svnadmin
           dump.  The "record in the record" is stored within the parent
           record, so they are parsed as a single record with an included
           record.

           "get_record()" / "set_record()" give access to the included record.

           According to the Subversion sources
           (subversion/libsvn_repos/dump.c), this is a "delete original, then
           add-with-history" node. The dump looks like this:

               Node-path: tags/mytag/myfile
               Node-kind: file
               Node-action: delete

               Node-path: tags/mytag/myfile
               Node-kind: file
               Node-action: add
               Node-copyfrom-rev: 23
               Node-copyfrom-path: trunk/myfile

           Note that there is a single blank line after the first header
           block, and four after the included one.

       update_headers()
           Update the various "...-length" headers. Used internally.

           You must call this method if you update the inner property or text
           blocks directly, or the results of "as_string()" will be
           inconsistent.

       Information methods


       has_prop()
           Return a boolean value indicating if the record has a property
           block.

       has_text()
           Return a boolean value indicating if the record has a text block.

       has_prop_only()
           Return a boolean value indicating if the record has only a property
           block (and no text block).

       has_prop_or_text()
           Return a boolean value indicating if the record has a property
           block or a text block.

       property_length()
           Return the length of the property block.

       text_length()
           Return the length of the text block.

       Output method


       as_string()
           Return a string representation of the record.

           Warning: dumping a record currenly gives back the information that
           was read from the original dump. Which means that if you modified
           the property or text block of a record, the headers will be
           inconstent.


ENCAPSULATION

       When using "SVN::Dump" to manipulate a SVN dump, one should not
       directly access the "SVN::Dump::Headers", "SVN::Dump::Property" and
       "SVN::Dump::Text" components of a "SVN::Dump::Record" object, but use
       the appropriate "set_...()" and "get_...()" methods of the record
       object.

       These methods compute the appropriate modifications of the header
       values, so that the "as_string()" method outputs the correct
       information after any modification of the record.


SEE ALSO

       SVN::Dump::Headers(3), SVN::Dump::Property(3), SVN::Dump::Text(3).


COPYRIGHT & LICENSE

       Copyright 2006 Philippe 'BooK' Bruhat, All Rights Reserved.

       This program is free software; you can redistribute it and/or modify it
       under the same terms as Perl itself.



perl v5.10.0                      2008-06-12              SVN::Dump::Record(3)

Mac OS X 10.6 - Generated Thu Sep 17 20:15:24 CDT 2009
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.