Skip to content

UTIL_SObjectDescribe.FieldsMap

Class

apex
global inherited sharing class UTIL_SObjectDescribe.FieldsMap extends UTIL_SObjectDescribe.NamespacedAttributeMap

A subclass of NamespacedAttributeMap for handling field maps returned by DescribeSObjectResult.fields.getMap().

Since: 1.0


Methods

MethodDescription
global override Boolean containsKey(String name)Checks if the map contains a key with namespace handling enabled by default.
global override Boolean containsKey(String name, Boolean implyNamespace)Checks if the map contains a key with optional namespace handling.
global SObjectField get(String name)Retrieves an SObjectField by name with namespace handling enabled by default.
global SObjectField get(String name, Boolean implyNamespace)Retrieves an SObjectField by name with optional namespace handling.
global override Set keySet()Returns the key set of the map with namespace handling disabled by default.
global override Set keySet(Boolean implyNamespace)Returns the key set of the map with optional namespace handling.
global override Integer size()Returns the number of entries in the map.
global List values()Returns the list of SObjectField values in the map.

Method Details

containsKey

apex
global override Boolean containsKey(String name)

Checks if the map contains a key with namespace handling enabled by default.

Parameters:

  • name (String) - The key to check.

Returns: Boolean - true if the key exists, false otherwise.

Since: 1.0

Example:

apex
Boolean result = instance.containsKey('myName');

containsKey

apex
global override Boolean containsKey(String name, Boolean implyNamespace)

Checks if the map contains a key with optional namespace handling.

Parameters:

  • name (String) - The key to check.
  • implyNamespace (Boolean) - Whether to handle namespace prefixes.

Returns: Boolean - true if the key exists, false otherwise.

Since: 1.0

Example:

apex
Boolean result = instance.containsKey('myName', true);

get

apex
global SObjectField get(String name)

Retrieves an SObjectField by name with namespace handling enabled by default.

Parameters:

  • name (String) - The API name of the field.

Returns: SObjectField - The SObjectField, or null if not found.

Since: 1.0

Example:

apex
UTIL_SObjectDescribe describe = UTIL_SObjectDescribe.getDescribe('Contact');
SObjectField field = describe.getFields().get('Email');
System.debug(field?.getDescribe().getLabel()); // Outputs: Email

get

apex
global SObjectField get(String name, Boolean implyNamespace)

Retrieves an SObjectField by name with optional namespace handling.

Parameters:

  • name (String) - The API name of the field.
  • implyNamespace (Boolean) - Whether to handle namespace prefixes.

Returns: SObjectField - The SObjectField, or null if not found.

Since: 1.0

Example:

apex
UTIL_SObjectDescribe describe = UTIL_SObjectDescribe.getDescribe('Contact');
SObjectField field = describe.getFields().get('Account', false);
System.debug(field?.getDescribe().name); // Outputs: AccountId

keySet

apex
global override Set<String> keySet()

Returns the key set of the map with namespace handling disabled by default.

Returns: String - A set of keys in the map.

Since: 1.0

Example:

apex
Set<String> result = instance.keySet();

keySet

apex
global override Set<String> keySet(Boolean implyNamespace)

Returns the key set of the map with optional namespace handling.

Parameters:

  • implyNamespace (Boolean) - Whether to strip namespace prefixes from keys.

Returns: String - A set of keys in the map.

Since: 1.0

Example:

apex
Set<String> result = instance.keySet(true);

size

apex
global override Integer size()

Returns the number of entries in the map.

Returns: Integer - The size of the map.

Since: 1.0

Example:

apex
Integer result = instance.size();

values

apex
global List<SObjectField> values()

Returns the list of SObjectField values in the map.

Returns: SObjectField - A list of SObjectField instances.

Since: 1.0

Example:

apex
UTIL_SObjectDescribe describe = UTIL_SObjectDescribe.getDescribe('Account');
List<SObjectField> fields = describe.getFields().values();
System.debug(fields.size()); // Outputs: Number of fields on Account