From 57c6554c370eedac1b809ca22a42bb59c7d6da99 Mon Sep 17 00:00:00 2001 From: rudolfkoenig <> Date: Sun, 11 Jan 2015 18:23:31 +0000 Subject: [PATCH] fhem.pl: move getUniqueId from 99_Utils.pm to fhem.pl (Forum #31932) git-svn-id: https://svn.fhem.de/fhem/trunk@7528 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/99_Utils.pm | 52 ------------------------------------------ fhem/fhem.pl | 53 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 53 insertions(+), 52 deletions(-) diff --git a/fhem/FHEM/99_Utils.pm b/fhem/FHEM/99_Utils.pm index 7f54f426a..9c8ed1f28 100644 --- a/fhem/FHEM/99_Utils.pm +++ b/fhem/FHEM/99_Utils.pm @@ -12,58 +12,6 @@ Utils_Initialize($$) my ($hash) = @_; } -sub -getUniqueId() -{ - my ($err, $uniqueID) = getKeyValue("uniqueID"); - return $uniqueID if(defined($uniqueID)); - srand(time); - $uniqueID = join "",map { unpack "H*", chr(rand(256)) } 1..16; - setKeyValue("uniqueID", $uniqueID); - return $uniqueID; -} - -sub -getKeyValue($) -{ - my ($key) = @_; - my $fName = $attr{global}{modpath}."/FHEM/FhemUtils/uniqueID"; - my ($err, @l) = FileRead($fName); - return ($err, undef) if($err); - for my $l (@l) { - return (undef, $1) if($l =~ m/^$key:(.*)/); - } - return (undef, undef); -} - -sub -setKeyValue($$) -{ - my ($key,$value) = @_; - my $fName = $attr{global}{modpath}."/FHEM/FhemUtils/uniqueID"; - my ($err, @old) = FileRead($fName); - my @new; - if($err) { - push(@new, "# This file is auto generated.", - "# Please do not modify, move or delete it.", - ""); - @old = (); - } - - my $fnd; - foreach my $l (@old) { - if($l =~ m/^$key:/) { - $fnd = 1; - push @new, "$key:$value" if(defined($value)); - } else { - push @new, $l; - } - } - push @new, "$key:$value" if(!$fnd && defined($value)); - - return FileWrite($fName, @new); -} - sub time_str2num($) { diff --git a/fhem/fhem.pl b/fhem/fhem.pl index 87c29c716..481ffebdf 100755 --- a/fhem/fhem.pl +++ b/fhem/fhem.pl @@ -4004,4 +4004,57 @@ FileWrite($@) } } +sub +getUniqueId() +{ + my ($err, $uniqueID) = getKeyValue("uniqueID"); + return $uniqueID if(defined($uniqueID)); + srand(time); + $uniqueID = join "",map { unpack "H*", chr(rand(256)) } 1..16; + setKeyValue("uniqueID", $uniqueID); + return $uniqueID; +} + +sub +getKeyValue($) +{ + my ($key) = @_; + my $fName = $attr{global}{modpath}."/FHEM/FhemUtils/uniqueID"; + my ($err, @l) = FileRead($fName); + return ($err, undef) if($err); + for my $l (@l) { + return (undef, $1) if($l =~ m/^$key:(.*)/); + } + return (undef, undef); +} + +sub +setKeyValue($$) +{ + my ($key,$value) = @_; + my $fName = $attr{global}{modpath}."/FHEM/FhemUtils/uniqueID"; + my ($err, @old) = FileRead($fName); + my @new; + if($err) { + push(@new, "# This file is auto generated.", + "# Please do not modify, move or delete it.", + ""); + @old = (); + } + + my $fnd; + foreach my $l (@old) { + if($l =~ m/^$key:/) { + $fnd = 1; + push @new, "$key:$value" if(defined($value)); + } else { + push @new, $l; + } + } + push @new, "$key:$value" if(!$fnd && defined($value)); + + return FileWrite($fName, @new); +} + + 1;