diff --git a/pandora_console/include/lib/Entity.php b/pandora_console/include/lib/Entity.php index 85901db309..1bc1b219ac 100644 --- a/pandora_console/include/lib/Entity.php +++ b/pandora_console/include/lib/Entity.php @@ -61,12 +61,12 @@ abstract class Entity /** * Instances a new object using array definition. * - * @param string $class_str Class name. * @param array $data Fields data. + * @param string $class_str Class name. * * @return object With current definition. */ - public static function build(string $class_str, array $data=[]) + public static function build(array $data=[], string $class_str=__CLASS__) { $obj = new $class_str(); // Set values. diff --git a/pandora_console/include/lib/Module.php b/pandora_console/include/lib/Module.php index 000d71b0c2..203b6001f1 100644 --- a/pandora_console/include/lib/Module.php +++ b/pandora_console/include/lib/Module.php @@ -136,13 +136,16 @@ class Module extends Entity /** * Creates a module object from given data. Avoid query duplication. * - * @param array $data Module information. + * @param array $data Module information. + * @param string $class_str Class type. * * @return PandoraFMS\Module Object. */ - public static function build(array $data=[]) - { - $obj = new Module(); + public static function build( + array $data=[], + string $class_str='\PandoraFMS\Module' + ) { + $obj = new $class_str(); // Set values. foreach ($data as $k => $v) {