package Weather::Com::Object;
use 5.006;
use strict;
use warnings;
use Carp;
#--------------------------------------------------------------------
# Define some globals
#--------------------------------------------------------------------
our $VERSION = sprintf "%d.%03d", q$Revision: 1.1 $ =~ /(\d+)/g;
my %LH = (); # our language handles
#------------------------------------------------------------------------
# Constructor
#------------------------------------------------------------------------
sub new {
my $proto = shift;
my $class = ref($proto) || $proto;
my $self = {};
my %parameters;
# parameters provided by new method
if ( ref( $_[0] ) eq "HASH" ) {
%parameters = %{ $_[0] };
} else {
%parameters = @_;
}
$self = bless( $self, $class );
# creating the SUPER instance
$self->{ARGS} = \%parameters;
if ( $parameters{lang} ) {
$self->{LANGUAGE} = $parameters{lang};
} else {
$self->{LANGUAGE} = 'en_US';
}
return $self;
} # end new()
#------------------------------------------------------------------------
# update barometric data
#------------------------------------------------------------------------
sub update {
my $self = shift;
return 1;
}
#------------------------------------------------------------------------
# Get a language handle
#------------------------------------------------------------------------
sub get_language_handle {
my $self = shift;
my $lang = shift || $self->{LANGUAGE};
# check if we already have an open handle
unless (defined($LH{$lang})) {
$LH{$lang} = Weather::Com::L10N->get_handle($lang)
or croak ("Language?");
}
# return language handle
return $LH{$lang};
}
1;