This file is indexed.

/usr/share/perl5/Weather/Com/Units.pm is in libweather-com-perl 0.5.3-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
package Weather::Com::Units;

use 5.006;
use strict;
use warnings;
use Class::Struct;

our $VERSION = sprintf "%d.%03d", q$Revision: 1.5 $ =~ /(\d+)/g;

#------------------------------------------------------------------------
# Weather::Com::Units consists almost only of pure data and no
# significant logic has to be build in. Therefore, we simply use a
# Class::Struct subclass.
#------------------------------------------------------------------------
struct(
		distance      => '$',
		precipitation => '$',
		pressure      => '$',
		speed         => '$',
		temperature   => '$',
);

#------------------------------------------------------------------------
# update wind data
#------------------------------------------------------------------------
sub update {
	my $self = shift;
	my %units;

	if ( ref( $_[0] ) eq "HASH" ) {
		%units = %{ $_[0] };
	} else {
		%units = @_;
	}

	# update data
	$self->distance( $units{ud} );
	$self->precipitation( $units{ur} );
	$self->pressure( $units{up} );
	$self->speed( $units{us} );
	$self->temperature( $units{ut} );

	return 1;
}

1;

__END__

=pod

=head1 NAME

Weather::Com::Units - class representing units of measure

=head1 SYNOPSIS

  #!/usr/bin/perl -w
  use Weather::Com::Finder;

  # you have to fill in your ids from weather.com here
  my $PartnerId  = 'somepartnerid';
  my $LicenseKey = 'mylicense';

  my %weatherargs = (
	'partner_id' => $PartnerId,
	'license'    => $LicenseKey,
  );

  my $weather_finder = Weather::Com::Finder->new(%weatherargs);
  
  my @locations = $weather_finder->find('Heidelberg');

  print "Speed is messured in ", $locations[0]->units()->speed();
  print " for this location.\n";  

=head1 DESCRIPTION

Via I<Weather::Com::Units> one can access the units of measure that
correspond to the numeric values used in its parent location object.

This class will B<not> be updated automatically with each call to one
of its methods. You need to call the C<units()> method of the parent
object again to update your object.

=head1 CONSTRUCTOR

You usually would not construct an object of this class yourself. 
This is implicitely done when you call the C<units()> method of one
location object.

=head1 METHODS

=head2 distance()

Returns the unit of distance used.

=head2 precipitation()

Returns the unit of precipitation used.

=head2 pressure()

Returns the unit of barometric pressure used.

=head2 speed()

Returns the unit of speed used.

=head2 temperature()

Returns the unit of temperature used.

=head1 AUTHOR

Thomas Schnuecker, E<lt>thomas@schnuecker.deE<gt>

=head1 COPYRIGHT AND LICENSE

Copyright (C) 2004-2007 by Thomas Schnuecker

This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.

The data provided by I<weather.com> and made accessible by this OO
interface can be used for free under special terms. 
Please have a look at the application programming guide of
I<weather.com> (L<http://www.weather.com/services/xmloap.html>)!

=cut