The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

CDP - Perl wrapper R1Soft CDP (Constant Data Protection) API.

SYNOPSIS

This module is designed to provide a cleaner procedurally driven interface to the

You may import all methods: use CDP qw/:ALL/;

Or You may impliment each module independently.

  use CDP::backupTask     qw /:ALL/;
  use CDP::diskSafe       qw /:ALL/;
  use CDP::mySQL          qw /:ALL/;
  use CDP::taskRun        qw /:ALL/;
  use CDP::volume         qw /:ALL/;
  use CDP::Connect        qw /:ALL/;
  use CDP::host           qw /:ALL/;
  use CDP::storagepool    qw /:ALL/;
  use CDP::user           qw /:ALL/;
  use CDP::Dump           qw /:ALL/;

DESCRIPTION

This is a wrapper module for the R1Soft CDP v2.0 API.

The goal behind this project was to make a cleaner interface between the R1Soft API and Perl programs.

By default this module does not autoload any methods and allows you to import the specific methods you require. However, I did write CDP.pm as a parent module to allow a quick and easy way to import everything.

This module implements Frontier Client to make XML/Java Script calls to the CDP Server.

EXPORT

None by default.

Dependencies

  Frontier::Client

Comparison

Using Frontier::Client use Frontier::Client;

  # To connect:
  my $u_name  = 'test';
  my $pw      = 'password';
  my $cdp_url = 'cdp.example.com';
  
  my $control_server_url = "http://$u_name:$pw\@$cdp_url:8084/xmlrpc";
  my $debug = 0;
  my $encoding = 'ISO-8859-1';

  my $client = Frontier::Client->new(
                'url' => $control_server_url,
                'debug' => $debug,
                'encoding' => $encoding,
  );
    
  # Some example procedure calls:
  my $host_id_aref        = $client->call('host.getHostByHostname', $name);
  my $host_name           = $client->call('host.getHostname', $host_id);
  my $host_map            = $client->call('host.getHostAsMap', $host_id);
  my $host_disk_safe_aref = $client->call('diskSafe.getDiskSfaeIDs' $host_id);

Using CDP: use CDP qw/:ALL/;

  # To Connect
  my $u_name  = 'test';
  my $pw      = 'password';
  my $cdp_url = 'cdp.example.com';
  
  my $client = OpenCDP $cdp_url, $u_name, $pw;
  
  # Some example procedure calls
  my $host_id_aref         = getHostByHostname $client, $name;
  my $host_name            = getHostname $client, $host_id;  
  my $host_map             = getHostAsMap $client, $host_id;
  my $host_disk_safe_aref  = getDiskSfaeIDs $client, $host_id;

SEE ALSO

R1Soft API Documentation: http://wiki.r1soft.com/display/pdf/CDP+Server+API+Guide

AUTHOR

Please Feel Free to contact me with any questions, comments, or suggestions.

Jon A, <jon[replacewithat]cyberspacelogistics[replacewithdot]com>

COPYRIGHT AND LICENSE

Copyright (C) 2011 by jon

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.1 or, at your option, any later version of Perl 5 you may have available.