From 3113ec8378cfc6a1339e3fe3d6bab5ad1e66f038 Mon Sep 17 00:00:00 2001 From: WimVelzeboer Date: Fri, 4 Mar 2022 12:29:37 +0000 Subject: [PATCH] Add domain method getRecordsByFieldValueIsNot Signed-off-by: WimVelzeboer --- .../classes/domains/fflib_SObjects2.cls | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/sfdx-source/apex-extensions/main/default/classes/domains/fflib_SObjects2.cls b/sfdx-source/apex-extensions/main/default/classes/domains/fflib_SObjects2.cls index 1164dc9..45f1490 100644 --- a/sfdx-source/apex-extensions/main/default/classes/domains/fflib_SObjects2.cls +++ b/sfdx-source/apex-extensions/main/default/classes/domains/fflib_SObjects2.cls @@ -613,6 +613,24 @@ public virtual class fflib_SObjects2 return result; } + protected virtual List getRecordsByFieldValueIsNot(Schema.SObjectField sObjectField, Object value) + { + return getRecordsByFieldValuesNotIn(sObjectField, new Set{ value }); + } + + protected virtual List getRecordsByFieldValuesNotIn(Schema.SObjectField sObjectField, Set values) + { + List result = new List(); + for (SObject record : getRecords()) + { + if (values?.contains(record.get(sObjectField)) == false) + { + result.add(record); + } + } + return result; + } + /** * Get a map with the record mapped to the given Id field value * Key fields containing null values are omitted