ComplianceEvaluation Interface
Contains a method to evaluate compliance control. Add logic to compute compliance in the
evaluate(var1) method by using the data from ControlEvaluationInput class.
Namespace
Usage
Evaluates compliance by passing the parameter name and value.
ComplianceEvaluation Methods
Learn more about the methods available with the ComplianceEvaluation interface.
The ComplianceEvaluation interface includes these methods.
evaluate(var1)
Evaluates compliance by using ControlEvaluationInput class.
Signature
public ComplianceMgmt.ComplianceEvaluationResponse evaluate(ComplianceMgmt.ControlEvaluationInput var1)
1ComplianceMgmt.ComplianceEvaluation, evaluate, [ComplianceMgmt.ControlEvaluationInput], ComplianceMgmt.ComplianceEvaluationResponseParameters
- var1
- Type: ComplianceMgmt.ControlEvaluationInput
- The input class to perform an evaluation.
Return Value
Type: ComplianceMgmt.ComplianceEvaluationResponse
The output class that represents compliance evaluation response from a control evaluation.
ComplianceEvaluation Example Implementation
Refer to the example implementation of the ComplianceEvaluation interface to evaluate
the compliance.
This is an example implementation of the ComplianceMgmt.ComplianceEvaluation interface.
1@VisibleApiVersion(minApiVersion='256')
2global interface ComplianceEvaluation {
3// Evaluates compliance by passing the parameter name/value.
4ComplianceEvaluationResponse evaluate(ControlEvaluationInput input);
5}This example tests the implementation:
1global class TestImpl implements ComplianceMgmt.ComplianceEvaluation {
2 global ComplianceMgmt.ComplianceEvaluationResponse evaluate(ComplianceMgmt.ControlEvaluationInput input) {
3 ComplianceMgmt.ControlInput controlInput = new ComplianceMgmt.ControlInput('Param1', ComplianceMgmt.ControlInputType.RecordId);
4 Account account = [SELECT Name,ShippingCountry FROM Account WHERE Id=:input.getControlInputValue(controlInput)];
5 boolean iscompliant = false;
6 String complianceMessage = String.format(System.Label.testLabelWithMergeFields , new List<String>{ account.Name });
7 String complianceLogMessage = null;
8 if (account.ShippingCountry != 'USA') {
9 iscompliant = true;
10 complianceLogMessage = 'Is compliant';
11 } else {
12 complianceLogMessage = 'Not compliant';
13 }
14 ComplianceMgmt.EvaluationResult result = new ComplianceMgmt.EvaluationResult(iscompliant, complianceMessage, complianceLogMessage);
15 ComplianceMgmt.ComplianceControlLog logConfig = new ComplianceMgmt.ComplianceControlLog();
16 logConfig.addLog('key1', 'value1');
17 ComplianceMgmt.ComplianceEvaluationResponse response = new ComplianceMgmt.ComplianceEvaluationResponse(result, logConfig);
18 return response;
19 }
20 }