1package FusionInventory::Agent::Task::Inventory::Module;
2
3use strict;
4use warnings;
5
6our $runAfter                 = [];
7our $runAfterIfEnabled        = [];
8our $runMeIfTheseChecksFailed = [];
9
10sub isEnabled {
11    return 0;
12}
13
14sub isEnabledForRemote {
15    return 0;
16}
17
18sub doInventory {
19}
20
211;
22
23__END__
24
25=head1 NAME
26
27FusionInventory::Agent::Task::Inventory::Module - Inventory task module for FusionInventory
28
29=head1 DESCRIPTION
30
31This module is the base class for all inventory task modules.
32
33=head1 MODULE CONFIGURATION PARAMETERS
34
35=head2 $runAfter = []
36
37Array ref of module string list.
38
39List of modules to always be run before this one. If any module of this list is
40disabled, the module won't be run: this is a hard dependency.
41
42Example: see FusionInventory::Agent::Task::Inventory::Linux module
43
44=head2 $runAfterIfEnabled = []
45
46Array ref of module string list.
47
48List of enabled modules to be run before this one: this is a soft dependency.
49
50Example: see FusionInventory::Agent::Task::Inventory::Generic::Dmidecode::Memory module
51
52=head2 $runMeIfTheseChecksFailed = []
53
54Array ref of module string list.
55
56If a module in that list is enabled, this one will be disabled.
57
58Example: see FusionInventory::Agent::Task::Inventory::Win32::Bios module
59
60=head1 FUNCTIONS
61
62=head2 isEnabled (%params)
63
64Provided parameters:
65    no_category: ref to hash indexed from no_category parameter
66    datadir    : resources folder
67    logger     : agent logger
68    registry   : registry option passed by server
69    scan_homedirs: scan-homedirs configuration parameter
70    scan_profiles: scan-profiles configuration parameter
71
72Returns true is the module should be used for local inventory.
73
74=head2 isEnabledForInventory (%params)
75
76Provided parameters:
77    no_category: ref to hash indexed from no_category parameter
78    datadir    : resources folder
79    logger     : agent logger
80    registry   : registry option passed by server
81    scan_homedirs: scan-homedirs configuration parameter
82    scan_profiles: scan-profiles configuration parameter
83
84Returns true is the module should be used for remote inventory (firstly WMI inventory).
85
86=head2 doInventory (%params)
87
88Provided parameters:
89    inventory  : inventory object to populate with dedicated API
90    no_category: ref to hash indexed from no_category parameter
91    datadir    : resources folder
92    logger     : agent logger
93    registry   : registry option passed by server
94    scan_homedirs: scan-homedirs configuration parameter
95    scan_profiles: scan-profiles configuration parameter
96
97Updates passed inventory with found inventory values.
98