You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@vcl.apache.org by ar...@apache.org on 2011/08/11 16:37:53 UTC
svn commit: r1156635 -
/incubator/vcl/trunk/managementnode/lib/VCL/DataStructure.pm
Author: arkurth
Date: Thu Aug 11 14:37:53 2011
New Revision: 1156635
URL: http://svn.apache.org/viewvc?rev=1156635&view=rev
Log:
VCL-496
Updated DataStructure.pm to implement a set_computer_private_ip_address subroutine.
Modified:
incubator/vcl/trunk/managementnode/lib/VCL/DataStructure.pm
Modified: incubator/vcl/trunk/managementnode/lib/VCL/DataStructure.pm
URL: http://svn.apache.org/viewvc/incubator/vcl/trunk/managementnode/lib/VCL/DataStructure.pm?rev=1156635&r1=1156634&r2=1156635&view=diff
==============================================================================
--- incubator/vcl/trunk/managementnode/lib/VCL/DataStructure.pm (original)
+++ incubator/vcl/trunk/managementnode/lib/VCL/DataStructure.pm Thu Aug 11 14:37:53 2011
@@ -837,7 +837,7 @@ sub _automethod : Automethod {
# Make sure the value was set in the hash
my $check_value = eval $hash_path;
if ($check_value eq $set_data) {
- notify($ERRORS{'DEBUG'}, 0, "data structure updated: $hash_path\n$data_identifier = $set_data");
+ #notify($ERRORS{'DEBUG'}, 0, "data structure updated: $hash_path\n$data_identifier = $set_data");
return sub {1;};
}
else {
@@ -1654,6 +1654,40 @@ sub get_computer_private_ip_address {
#/////////////////////////////////////////////////////////////////////////////
+=head2 set_computer_private_ip_address
+
+ Parameters : $private_ip_address
+ Returns : boolean
+ Description : Sets the computer private IP address in the DataStructure.
+
+=cut
+
+sub set_computer_private_ip_address {
+ my $self = shift;
+
+ # Check if subroutine was called as an object method
+ unless (ref($self) && $self->isa('VCL::DataStructure')) {
+ notify($ERRORS{'CRITICAL'}, 0, "subroutine can only be called as a VCL::DataStructure module object method");
+ return;
+ }
+
+ my $private_ip_address = shift;
+ if (!$private_ip_address) {
+ notify($ERRORS{'WARNING'}, 0, "computer private IP address argument was not supplied");
+ return;
+ }
+ elsif (!is_valid_ip_address($private_ip_address)) {
+ notify($ERRORS{'WARNING'}, 0, "computer private IP address argument is not valid: '$private_ip_address'");
+ return;
+ }
+
+ notify($ERRORS{'DEBUG'}, 0, "updated computer private IP address: '$private_ip_address'");
+ $self->request_data->{reservation}{$self->reservation_id}{computer}{PRIVATE_IP_ADDRESS} = $private_ip_address;
+ return 1;
+}
+
+#/////////////////////////////////////////////////////////////////////////////
+
=head2 is_variable_set
Parameters : variable name