Elive
view release on metacpan or search on metacpan
lib/Elive/Entity/ServerDetails.pm view on Meta::CPAN
package Elive::Entity::ServerDetails;
use warnings; use strict;
use Mouse;
extends 'Elive::DAO::Singleton','Elive::Entity';
use Scalar::Util;
=head1 NAME
Elive::Entity::ServerDetails - Server Details entity class
=head1 DESCRIPTION
Gets details on available Elluminate I<Live!> session servers
=cut
__PACKAGE__->entity_name('ServerDetails');
has 'serverDetailsId' => (is => 'rw', isa => 'Str', required => 1);
__PACKAGE__->primary_key('serverDetailsId');
has 'address' => (is => 'rw', isa => 'Str');
has 'alive' => (is => 'rw', isa => 'Bool');
has 'codebase' => (is => 'rw', isa => 'Str');
has 'elsRecordingsFolder' => (is => 'rw', isa => 'Str');
has 'elmRecordingsFolder' => (is => 'rw', isa => 'Str');
has 'encoding' => (is => 'rw', isa => 'Str');
has 'maxSeats' => (is => 'rw', isa => 'Int');
has 'name' => (is => 'rw', isa => 'Str');
has 'seats' => (is => 'rw', isa => 'Int');
has 'port' => (is => 'rw', isa => 'Int');
has 'version' => (is => 'rw', isa => 'Str');
has 'lastTime' => (is => 'rw', isa => 'HiResDate');
#
# The following are introduced in Elluminate Live 9.5 (ELM 3.0).
# These are currently only supported as references, but may be
# promoted to objects in later versions of Elive.
#
has 'sessions' => (is => 'rw', isa => 'Ref');
has 'serverStatus' => (is => 'rw', isa => 'Ref');
has 'iNetAddress' => (is => 'rw', isa => 'Ref');
=head1 METHODS
=cut
=head2 get
my $server = Elive::Entity::ServerDetails->get();
printf("server %s is running Elluminate Live! version %s\n", $server->name, $server->version);
=cut
=head2 list
my $servers = Elive::Entity::ServerDetails->list();
foreach my $server (@$servers) {
printf("server %s is running Elluminate Live! version %s\n", $server->name, $server->version);
}
The C<list> method can be used when your site has multiple session servers.
=cut
1;
( run in 1.930 second using v1.01-cache-2.11-cpan-39bf76dae61 )