GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
VCP::DB(3) User Contributed Perl Documentation VCP::DB(3)

VCP::DB - Persistant storage for id -> (name, rev_id) maps

    use base qw( VCP::DB );

By default, most VCP::Dest::* drivers keep track of the relationship between the id field assigned by the (original) VCP::Source::* driver and the final name and rev_id (or whatever fields are important to it) in the destination repository so that the previous_id fields, which refer to the original id, may be resolved when backfilling or branching.

The VCP::*::revml drivers do not do this; they do not need to resolve id fields.

The intent for this file is to serve as a base class so that individual sites may write their own ", ref $self, " plugins to, for instance, store this state in a RDBMS table. This is not quite offered at this time; we need to add an option to the appropriate VCP::Dest::* modules to allow the appropriate ", ref $self, " file to be loaded.

To write your own ", ref $self, " file, see VCP::DB::sdbm.

new
   VCP::DB::foo->new(
      StoreLoc => $dir,  ## path to a dir to keep the state store in
   );
    

The "Store" field indicates where the DBFile should be stored, for instance a DBI specification string or a directory to place a "revmap.db" file in. There is no control over the filename, as different storage modes may need different conventions.

store_loc
Gets (does not set) the StoreLoc field as an absolute path.
delete_db
   $db->delete_db;
    

Deletes the persitent store. This should remove all files, lock files, etc. for filesystem stores and drop any tables for RDBMS stores.

Default action is to call close_db; subclasses should

(subclasses should call "$self-"SUPER::delete_db before doing anything else in their delete_db() overrides).

open_db
   $db->open_db;
    

Creates a new or opens an existing db.

(subclasses should call "$self-"SUPER::open_db before doing anything else in their open_db() overrides).

open_existing_db
   $db->open_existing_db;
    

Opens an existing db.

(subclasses should call "$self-"SUPER::open_existing_db before doing anything else in their open_existing_db() overrides).

close_db
   $db->close_db;
    

(subclasses should call "$self-"SUPER::close_db before doing anything else in their close_db() overrides).

set
   $db->set( $key, @values );
    

Sets the values for $key.

get
   my @values = $db->get( $key );
    

Gets the values for $key.

exists
   $db->exists( $key );
    

Tests that key exists

keys
   my @keys = $db->keys;
    

Returns a list of ARRAY references, each ARRAY reference contains the fields for one key.

dump
   $db->dump( \*STDOUT );
   my $s = $db->dump;
   my @l = $db->dump;
    

Dumps keys and values from a DB, in lexically sorted key order. If a filehandle reference is provided, prints to that filehandle. Otherwise, returns a string or array containing the entire dump, depending on context.

Barrie Slaymaker <barries@slaysys.com>

Copyright (c) 2000, 2001, 2002 Perforce Software, Inc. All rights reserved.

See VCP::License ("vcp help license") for the terms of use.

2004-11-04 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.