...
Code Block |
---|
CREATE TABLE IF NOT EXISTS `variable` ( `id` smallint(5) unsigned NOT NULL auto_increment, `name` varchar(128) NOT NULL default '', `value` longtext NOT NULL, `setby` varchar(40128) default NULL, `timestamp` timestampdatetime NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, PRIMARY KEY (`id`), UNIQUE KEY `name` (`name`) ) ENGINE=InnoDB InnoDB DEFAULT CHARSET=utf8latin1 AUTO_INCREMENT=1 ; |
...
Code Block |
---|
my %kms_configuration = ( '"ECU'" => '"192.168.22.33:1688'", '"NCSU'" => '"kms-server.ncsu.edu'", ); $self->data->set_variable('"kms-configuration'", \%kms_configuration); |
The keys correspond to the affiliation.name column in the database. The values represent the addresses (phony) of Windows Vista/2008 KMS activation servers.
...
To retrieve the data:
Code Block |
---|
my %kms$kms_configuration = $self->data->get_variable('"kms-configuration'"); my $kms_address = $kms_configuration->{$affiliation_id}; |
...
Code Block |
---|
my @contacts = ( { '"firstname'" => '"Joe'", '"lastname'" => '"Doe'", '"email'" => ['"joe@somewhere.org'", '"jdoe22@unity.ncsu.edu'"], '"employee_id'" => 3342 }, { '"firstname'" => '"Jane'", '"lastname'" => '"Doe'", '"email'" => ['"jane@somewhere.org'"], '"employee_id'" => 7865 } ); $self->data->set_variable('"contacts'", \@contacts); |
DataStructure.pm::set_variable() uses YAML::Dump to transform this data structure into:
...
id | name | value | setby | timestamp |
---|---|---|---|---|
3 | contacts | --- | DataStructure.pm:554 | 2009-05-26 12:35:36 |
To retrieve the data:
Code Block |
---|
my @returned_contacts = @{$self->data->get_variable('contacts')};
for my $contact (@returned_contacts) {
print "Name: $contact->{firstname} $contact->{lastname}\n";
for my $email_address (@{$contact->{email}}) {
print "Email: $email_address\n";
}
print "---\n";
}
|