NAME

FusionInventory::Agent::Tools - OS-independent generic functions

DESCRIPTION

This module provides some OS-independent generic functions.

FUNCTIONS

getFormatedLocalTime($time)

Returns a formated date from given Unix timestamp.

getFormatedGMTTime($time)

Returns a formated date from given Unix timestamp.

getFormatedDate($year, $month, $day, $hour, $min, $sec)

Returns a formated date from given date elements.

getCanonicalManufacturer($manufacturer)

Returns a normalized manufacturer value for given one.

getCanonicalSpeed($speed)

Returns a normalized speed value (in Mhz) for given one.

getCanonicalSize($size, $base)

Returns a normalized size value (in Mb) for given one.

getSanitizedString($string)

Returns the input stripped from any control character, properly encoded in UTF-8.

trimWhitespace($string)

Remove leading and trailing whitespace, and fold multiple whitespace characters into a single one.

compareVersion($major, $minor, $min_major, $min_minor)

Returns true if software with given major and minor version meet minimal version requirements.

getDirectoryHandle(%params)

Returns an open file handle on either a command output, or a file.

logger a logger object
directory the directory to use

getFileHandle(%params)

Returns an open file handle on either a command output, a file, or a string.

logger a logger object
command the command to use
file the file to use, as an alternative to the command
string the string to use, as an alternative to the command

getFirstLine(%params)

Returns the first line of given command output or given file content, with end of line removed.

logger a logger object
command the exact command to use
file the file to use, as an alternative to the command

getAllLines(%params)

Returns all the lines of given command output or given file content, as a list of strings with end of line removed in list context, as a single string otherwise.

logger a logger object
command the exact command to use
file the file to use, as an alternative to the command

getFirstMatch(%params)

Returns the result of applying given pattern on the first matching line of given command output or given file content.

pattern a regexp
logger a logger object
command the exact command to use
file the file to use, as an alternative to the command

getLastLine(%params)

Returns the last line of given command output or given file content.

logger a logger object
command the exact command to use
file the file to use, as an alternative to the command

getLinesCount(%params)

Returns the number of lines of given command output or given file content.

logger a logger object
command the exact command to use
file the file to use, as an alternative to the command

canRun($binary)

Returns true if given binary can be executed.

canRead($file)

Returns true if given file can be read.

canLoad($module)

Returns true if given perl module can be loaded (and actually loads it).

hex2char($value)

Returns the value converted to a character if it starts with hexadecimal prefix, the unconverted value otherwise. Eg. 0x41 -> A, 41 -> 41.

hex2dec($value)

Returns the value converted to a decimal if it starts with hexadecimal prefix, the unconverted value otherwise. Eg. 0x41 -> 65, 41 -> 41.

dec2hex($value)

Returns the value converted to an hexadecimal if it doesn't start with hexadecimal prefix, the unconverted value otherwise. Eg. 65 -> 0x41, 0x41 -> 0x41.

any BLOCK LIST

Returns a true value if any item in LIST meets the criterion given through BLOCK.

all BLOCK LIST

Returns a true value if all items in LIST meet the criterion given through BLOCK.

none BLOCK LIST

Returns a true value if no item in LIST meets the criterion given through BLOCK.

uniq BLOCK LIST

Returns a new list by stripping duplicate values in LIST.

file2module($string)

Converts a perl file name to a perl module name (Foo/Bar.pm -> Foo::Bar)

module2file($string)

Converts a perl module name to a perl file name ( Foo::Bar -> Foo/Bar.pm)

runFunction(%params)

Run a function whose name is computed at runtime and return its result.

logger a logger object
module the function namespace
function the function name
timeout timeout for function execution
load enforce module loading first

delay($second)

Wait for $second. It uses sleep() or Win32::Sleep() depending on the Operating System.

slurp($file)

Return the content of a given file.