From 3588cfc1cfb89fff6ecd0dea9f6f76691432f850 Mon Sep 17 00:00:00 2001 From: Jonathan Gillespie Date: Sat, 3 Jun 2017 03:00:59 +0200 Subject: [PATCH] Renamed a private variable in trigger hdlr to have a more descriptive name --- src/classes/SObjectTriggerHandler.cls | 42 ++++++++++----------- src/classes/SObjectTriggerHandler_Tests.cls | 16 ++++---- 2 files changed, 29 insertions(+), 29 deletions(-) diff --git a/src/classes/SObjectTriggerHandler.cls b/src/classes/SObjectTriggerHandler.cls index 2ad10fc..32a2c4a 100644 --- a/src/classes/SObjectTriggerHandler.cls +++ b/src/classes/SObjectTriggerHandler.cls @@ -10,7 +10,7 @@ public abstract class SObjectTriggerHandler extends NebulaCore implements ISObje BEFORE_INSERT, BEFORE_UPDATE, BEFORE_DELETE, AFTER_INSERT, AFTER_UPDATE, AFTER_DELETE, AFTER_UNDELETE } - @testVisible private TriggerContext context; // The current context of the trigger + @testVisible private TriggerContext currentTriggerContext; // The current context of the trigger private Integer hashCode; // The hash code for the current records private Boolean isTestMode; @@ -62,7 +62,7 @@ public abstract class SObjectTriggerHandler extends NebulaCore implements ISObje Logger.addEntry(this, 'Starting execute method for: ' + sobjectType); Logger.addEntry(this, 'Hash codes already processed: ' + SObjectTriggerHandler.hashCodesForProcessedRecords); Logger.addEntry(this, 'Hash code for current records: ' + this.hashCode); - Logger.addEntry(this, 'Trigger context for current records: ' + this.context); + Logger.addEntry(this, 'Trigger context for current records: ' + this.currentTriggerContext); Logger.addEntry(this, 'Number of current records: ' + Trigger.size); if(this.haveRecordsAlreadyBeenProcessed()) { @@ -70,13 +70,13 @@ public abstract class SObjectTriggerHandler extends NebulaCore implements ISObje return; } else Logger.addEntry(this, 'Records have not been processed for this context, continuing'); - if(this.context == TriggerContext.BEFORE_INSERT) this.executeBeforeInsert(this.recordList); - else if(this.context == TriggerContext.BEFORE_UPDATE) this.executeBeforeUpdate(this.recordList, this.recordMap, this.oldRecordList, this.oldRecordMap); - else if(this.context == TriggerContext.BEFORE_DELETE) this.executeBeforeDelete(this.oldRecordList, this.oldRecordMap); - else if(this.context == TriggerContext.AFTER_INSERT) this.executeAfterInsert(this.recordList, this.recordMap); - else if(this.context == TriggerContext.AFTER_UPDATE) this.executeAfterUpdate(this.recordList, this.recordMap, this.oldRecordList, this.oldRecordMap); - else if(this.context == TriggerContext.AFTER_DELETE) this.executeAfterDelete(this.oldRecordList, this.oldRecordMap); - else if(this.context == TriggerContext.AFTER_UNDELETE) this.executeAfterUndelete(this.recordList, this.recordMap); + if(this.currentTriggerContext == TriggerContext.BEFORE_INSERT) this.executeBeforeInsert(this.recordList); + else if(this.currentTriggerContext == TriggerContext.BEFORE_UPDATE) this.executeBeforeUpdate(this.recordList, this.recordMap, this.oldRecordList, this.oldRecordMap); + else if(this.currentTriggerContext == TriggerContext.BEFORE_DELETE) this.executeBeforeDelete(this.oldRecordList, this.oldRecordMap); + else if(this.currentTriggerContext == TriggerContext.AFTER_INSERT) this.executeAfterInsert(this.recordList, this.recordMap); + else if(this.currentTriggerContext == TriggerContext.AFTER_UPDATE) this.executeAfterUpdate(this.recordList, this.recordMap, this.oldRecordList, this.oldRecordMap); + else if(this.currentTriggerContext == TriggerContext.AFTER_DELETE) this.executeAfterDelete(this.oldRecordList, this.oldRecordMap); + else if(this.currentTriggerContext == TriggerContext.AFTER_UNDELETE) this.executeAfterUndelete(this.recordList, this.recordMap); if(Trigger.isAfter) Logger.saveLogs(); } @@ -92,20 +92,20 @@ public abstract class SObjectTriggerHandler extends NebulaCore implements ISObje private void setTriggerContext() { if(this.isTestMode || !this.isTriggerExecuting) return; - if(Trigger.isBefore && Trigger.isInsert) this.context = TriggerContext.BEFORE_INSERT; - else if(Trigger.isBefore && Trigger.isUpdate) this.context = TriggerContext.BEFORE_UPDATE; - else if(Trigger.isBefore && Trigger.isDelete) this.context = TriggerContext.BEFORE_DELETE; - else if(Trigger.isAfter && Trigger.isInsert) this.context = TriggerContext.AFTER_INSERT; - else if(Trigger.isAfter && Trigger.isUpdate) this.context = TriggerContext.AFTER_UPDATE; - else if(Trigger.isAfter && Trigger.isDelete) this.context = TriggerContext.AFTER_DELETE; - else if(Trigger.isAfter && Trigger.isUndelete) this.context = TriggerContext.AFTER_UNDELETE; + if(Trigger.isBefore && Trigger.isInsert) this.currentTriggerContext = TriggerContext.BEFORE_INSERT; + else if(Trigger.isBefore && Trigger.isUpdate) this.currentTriggerContext = TriggerContext.BEFORE_UPDATE; + else if(Trigger.isBefore && Trigger.isDelete) this.currentTriggerContext = TriggerContext.BEFORE_DELETE; + else if(Trigger.isAfter && Trigger.isInsert) this.currentTriggerContext = TriggerContext.AFTER_INSERT; + else if(Trigger.isAfter && Trigger.isUpdate) this.currentTriggerContext = TriggerContext.AFTER_UPDATE; + else if(Trigger.isAfter && Trigger.isDelete) this.currentTriggerContext = TriggerContext.AFTER_DELETE; + else if(Trigger.isAfter && Trigger.isUndelete) this.currentTriggerContext = TriggerContext.AFTER_UNDELETE; } private void validateTriggerContext() { if(this.isTestMode) return; String errorMessage = 'Trigger handler called outside of trigger execution ' + this.isTriggerExecuting; - if(!this.isTriggerExecuting || this.context == null) throw new Exceptions.SObjectTriggerHandlerException(errorMessage); + if(!this.isTriggerExecuting || this.currentTriggerContext == null) throw new Exceptions.SObjectTriggerHandlerException(errorMessage); } private void setTriggerRecords() { @@ -162,15 +162,15 @@ public abstract class SObjectTriggerHandler extends NebulaCore implements ISObje // This method is a safeguard that checks to see if we have recursion problems and stops if we do // It allows each context to occur once for a given hash code - if(this.context == TriggerContext.BEFORE_INSERT) { + if(this.currentTriggerContext == TriggerContext.BEFORE_INSERT) { // BEFORE_INSERT doesn't have record IDs yet, so the hash here will never match the other hashes // Since Salesforce makes it impossible to recursively run "insert record", we can let the platform handle it return false; } else if(!SObjectTriggerHandler.hashCodesForProcessedRecords.containsKey(this.hashCode)) { - SObjectTriggerHandler.hashCodesForProcessedRecords.put(this.hashCode, new Set{this.context}); + SObjectTriggerHandler.hashCodesForProcessedRecords.put(this.hashCode, new Set{this.currentTriggerContext}); return false; - } else if(!SObjectTriggerHandler.hashCodesForProcessedRecords.get(this.hashCode).contains(this.context)) { - SObjectTriggerHandler.hashCodesForProcessedRecords.get(this.hashCode).add(this.context); + } else if(!SObjectTriggerHandler.hashCodesForProcessedRecords.get(this.hashCode).contains(this.currentTriggerContext)) { + SObjectTriggerHandler.hashCodesForProcessedRecords.get(this.hashCode).add(this.currentTriggerContext); return false; } else { return true; diff --git a/src/classes/SObjectTriggerHandler_Tests.cls b/src/classes/SObjectTriggerHandler_Tests.cls index 1e059b1..f43858f 100644 --- a/src/classes/SObjectTriggerHandler_Tests.cls +++ b/src/classes/SObjectTriggerHandler_Tests.cls @@ -44,7 +44,7 @@ private class SObjectTriggerHandler_Tests { upsert triggerHandlerSettings; LeadTriggerHandlerTest leadTriggerHandler = new LeadTriggerHandlerTest(); - leadTriggerHandler.context = SObjectTriggerHandler.TriggerContext.BEFORE_INSERT; + leadTriggerHandler.currentTriggerContext = SObjectTriggerHandler.TriggerContext.BEFORE_INSERT; leadTriggerHandler.recordList = leadList; Test.startTest(); @@ -62,7 +62,7 @@ private class SObjectTriggerHandler_Tests { // Test.startTest(); // for(SObjectTriggerHandler.TriggerContext context : SObjectTriggerHandler.TriggerContext.values()) { - // leadTriggerHandler.context = context; + // leadTriggerHandler.currentTriggerContext = context; // leadTriggerHandler.execute(); // } // Test.stopTest(); @@ -72,7 +72,7 @@ private class SObjectTriggerHandler_Tests { // static void executeBeforeInsert() { // LeadTriggerHandlerTest leadTriggerHandler = new LeadTriggerHandlerTest(); // // Set the variables for the relevant context - // leadTriggerHandler.context = SObjectTriggerHandler.TriggerContext.BEFORE_INSERT; + // leadTriggerHandler.currentTriggerContext = SObjectTriggerHandler.TriggerContext.BEFORE_INSERT; // leadTriggerHandler.recordList = leadList; // Test.startTest(); @@ -86,11 +86,11 @@ private class SObjectTriggerHandler_Tests { // static void executeBeforeUpdate() { // LeadTriggerHandlerTest leadTriggerHandler = new LeadTriggerHandlerTest(); // // Set the variables for the relevant context - // leadTriggerHandler.context = SObjectTriggerHandler.TriggerContext.BEFORE_UPDATE; - // leadTriggerHandler.recordList = leadList; - // leadTriggerHandler.recordMap = new Map(leadList); - // leadTriggerHandler.oldRecordList = leadList; - // leadTriggerHandler.oldRecordMap = new Map(leadList); + // leadTriggerHandler.currentTriggerContext = SObjectTriggerHandler.TriggerContext.BEFORE_UPDATE; + // leadTriggerHandler.recordList = leadList; + // leadTriggerHandler.recordMap = new Map(leadList); + // leadTriggerHandler.oldRecordList = leadList; + // leadTriggerHandler.oldRecordMap = new Map(leadList); // Test.startTest();