API-Plesk
view release on metacpan or search on metacpan
lib/API/Plesk/Webspace.pm view on Meta::CPAN
package API::Plesk::Webspace;
use strict;
use warnings;
use Carp;
use Data::Dumper;
use base 'API::Plesk::Component';
my @gen_setup_fields = qw(
name
owner-id
owner-login
owner-guid
owner-external-id
htype
ip_address
status
external-id
);
my @main_fields = qw(
gen_setup
hosting
limits
prefs
performance
permissions
plan-id
plan-name
plan-guid
plan-external-id
);
sub add {
my ( $self, %params ) = @_;
my $bulk_send = delete $params{bulk_send};
my $gen_setup = $params{gen_setup} || confess "Required gen_setup parameter!";
$self->check_hosting(\%params);
$self->check_required_params(\%params, [qw(plan-id plan-name plan-guid plan-external-id)]);
$self->check_required_params($gen_setup, qw(name ip_address));
$params{gen_setup} = $self->sort_params($gen_setup, @gen_setup_fields);
my $data = $self->sort_params(\%params, @main_fields);
return $bulk_send ? $data :
$self->plesk->send('webspace', 'add', $data);
}
sub get {
my ($self, %filter) = @_;
my $bulk_send = delete $filter{bulk_send};
my $dataset = {gen_info => ''};
if ( my $add = delete $filter{dataset} ) {
$dataset = { map { ( $_ => '' ) } ref $add ? @$add : ($add) };
$dataset->{gen_info} = '';
}
my $data = {
filter => @_ > 2 ? \%filter : '',
dataset => $dataset,
};
( run in 0.983 second using v1.01-cache-2.11-cpan-39bf76dae61 )