Agentforce IT Service Associated Objects
BaseComponentCnfgItem Class
BaseParentCnfgItem Class
CnfgItemTag Class
Previous Versions
Abstract class that represents a base parent configuration item in IT Service Asset Discovery. Stores the field labels for the parent configuration item.
This is an example implementation of the ItSvcAssetDcvr.BaseParentCnfgItem abstract class.
1// Represents a CrowdStrike compute (device/machine) configuration item discovered on an asset.
2// Extends the base PARENT config item from the IT Service Asset Discovery framework, so it can
3// hold child config items (installed software, vulnerabilities, login and network history).
4global class CrowdstrikeComputeCnfgItem extends ItSvcAssetDcvr.BaseParentCnfgItem {
5
6 // Maps each field's API name to a human-readable display label used by the UI.
7 private static final Map<String, String> CS_COMPUTE_LABELS = new Map<String, String>{
8 'assetName' => 'Asset Name',
9 'serialNumber' => 'Serial Number',
10 'lastDiscoveredOn' => 'Last Discovered On',
11 'manufacturer' => 'Manufacturer',
12 'osMajorVersion' => 'OS Major Version',
13 'osMinorVersion' => 'OS Minor Version',
14 'operatingSystem' => 'Operating System',
15 'buildVersion' => 'Build Version',
16 'osBuildNumber' => 'OS Build Number',
17 'deviceModelName' => 'Device Model Name',
18 'modelNumber' => 'Model Number',
19 'hardwareModel' => 'Hardware Model',
20 'macAddress' => 'MAC Address',
21 'hostName' => 'Host Name',
22 'deviceName' => 'Device Name',
23 'loggedInAt' => 'Logged In At',
24 'loggedInBy' => 'Logged In By',
25 'ipAddress' => 'IP Address',
26 'biosBuildNumber' => 'BIOS Build Number',
27 'deviceSerialNumber' => 'Device Serial Number',
28 'lastDiscoveredBy' => 'Last Discovered By',
29 'ciLocation' => 'CI Location',
30 'defaultGateway' => 'Default Gateway',
31 'hardwareType' => 'Hardware Type',
32 'localFqdn' => 'Local FQDN',
33 'deviceManufacturerName' => 'Device Manufacturer Name',
34 'FirstDiscoveredOn' => 'First Discovered On',
35 'FirstDiscoveredBy' => 'First Discovered By',
36 'CreatedOn' => 'Created On',
37 'CreatedBy' => 'Created By',
38 'sources' => 'Sources',
39 'biosManufacturer' => 'BIOS Manufacturer',
40 'osCaption' => 'OS Caption',
41 'osDescription' => 'OS Description',
42 'osType' => 'OS Type' };
43
44 // No-arg constructor: passes the field label map to the base class so it knows how to display each field.
45 global CrowdstrikeComputeCnfgItem() {
46 super(CS_COMPUTE_LABELS);
47 }
48
49 // Child config-item collections related to this compute device (exposed to Lightning/Aura).
50 @AuraEnabled global List<CrowdstrikeApplnCnfgItem> installedSoftware; // Software applications installed on the device
51 @AuraEnabled global List<CrowdstrikeVulnerabilityCnfgItem> vulnerabilities; // Security vulnerabilities detected on the device
52 @AuraEnabled global List<CrowdstrikeLoginHistCnfgItem> loginHistory; // History of logins to the device
53 @AuraEnabled global List<CrowdstrikeNtwkAddrHistCnfgItem> networkHistory; // History of network addresses used by the device
54
55 // Scalar attributes of the discovered compute device (exposed to Lightning/Aura).
56 @AuraEnabled global String assetName; // Name of the asset/device
57 @AuraEnabled global String serialNumber; // Serial number of the device
58 @AuraEnabled global DateTime lastDiscoveredOn; // Timestamp the device was last discovered
59 @AuraEnabled global String manufacturer; // Manufacturer of the device
60 @AuraEnabled global String osMajorVersion; // Major version of the operating system
61 @AuraEnabled global String osMinorVersion; // Minor version of the operating system
62 @AuraEnabled global String operatingSystem; // Operating system name
63 @AuraEnabled global String buildVersion; // OS/software build version
64 @AuraEnabled global String osBuildNumber; // Operating system build number
65 @AuraEnabled global String deviceModelName; // Model name of the device
66 @AuraEnabled global String modelNumber; // Model number of the device
67 @AuraEnabled global String hardwareModel; // Hardware model identifier
68 @AuraEnabled global String macAddress; // MAC (hardware network) address
69 @AuraEnabled global String hostName; // Network host name of the device
70 @AuraEnabled global String deviceName; // Device name
71 @AuraEnabled global DateTime loggedInAt; // Timestamp of the most recent login
72 @AuraEnabled global String loggedInBy; // User who most recently logged in
73 @AuraEnabled global String ipAddress; // IP address of the device
74 @AuraEnabled global String biosBuildNumber; // BIOS build number
75 @AuraEnabled global String deviceSerialNumber; // Device-level serial number
76 @AuraEnabled global String lastDiscoveredBy; // Source/user that last discovered the device
77 @AuraEnabled global String ciLocation; // Physical/logical location of the config item
78 @AuraEnabled global String defaultGateway; // Default network gateway
79 @AuraEnabled global String hardwareType; // Type/category of hardware
80 @AuraEnabled global String localFqdn; // Local fully qualified domain name
81 @AuraEnabled global String deviceManufacturerName; // Device manufacturer name
82 @AuraEnabled global String sources; // Data source(s) the info was discovered from
83 @AuraEnabled global String biosManufacturer; // Manufacturer of the BIOS
84 @AuraEnabled global String osCaption; // OS caption/friendly label
85 @AuraEnabled global String osDescription; // Description of the operating system
86 @AuraEnabled global String osType; // Type/family of the operating system
87 @AuraEnabled global List<ItSvcAssetDcvr.CnfgItemTag> tags; // Tags associated with this config item
88 @AuraEnabled global String cnfgItemTypeName; // Name of this configuration item type
89}The following are constructors for BaseParentCnfgItem.
BaseParentCnfgItem(fieldLabels)
Creates a new instance of the ItSvcAssetDcvr.BaseParentCnfgItem class using the specified fieldLabels payload parameter.
Creates a new instance of the ItSvcAssetDcvr.BaseParentCnfgItem class using the specified fieldLabels payload parameter.
public BaseParentCnfgItem(Map<String,String> fieldLabels)
fieldLabels: Type: Map<String,String>. Required. Specifies the field labels that map Apex fields in the class to the corresponding configuration item display names used by Content Management Database (CMDB).
The following are properties for BaseParentCnfgItem.
A map of field API names to their display labels for the parent configuration item.
A map of field API names to their display labels for the parent configuration item.
public Map<String,String> fieldLabels {get; set;}
Type: Map<String,String>