Skip navigation links

Package com.orchestranetworks.addon.rpfl

Classes and interfaces to create business rules and permission rules.

See: Description

Package com.orchestranetworks.addon.rpfl Description

Classes and interfaces to create business rules and permission rules.


Example of extending business rules using the API

  1. Create a Rule and a RuleDefinition:

            public class RuleTest implements Rule
            {
                    private UserMessage errorMessage;
                    private List<PropertyData> propertyData;
                    
                    public RuleTest()
                    {
                    }
            
                    public void setup(RuleConfigurationContext configurationContext)
                    {
                            this.errorMessage = configurationContext.getErrorMessage();
                            this.propertyData = configurationContext.getPropertyData();
                    }
            
                    public RuleExecutionResult execute(RuleExecutionContext executionContext)
                    {
                            RuleExecutionResult result = new RuleExecutionResult();                 
                            result.setErrorMessage(this.errorMessage);
                            // do something ...
                            result.setResult(false);
                            return result;
                    }
            }
            
            public class RuleTest_Definition implements BusinessRuleDefinition
            {       
                    public RuleType getRuleType()
                    {
                            return RuleType.ValidationRule;
                    }
            
                    public Rule getRuleInstance()
                    {
                            return new RuleTest();
                    }
            
                    public UserMessage getLabel()
                    {
                            return UserMessage.createInfo("Rule test label");
                    }
            
                    public List<InputData> getInputData()
                    {
                            return null;
                    }
            
                    public List<OutputData> getOutputData()
                    {
                            return null;
                    }
            
                    public List<PropertyData> getPropertyData()
                    {
                            return null;
                    }
            
                    public boolean isContext()
                    {
                            return false;
                    }
                    
                    public UserMessage getBusinessConcept()
                    {
                            return HmfhBusinessConcept.ACCOUNT;
                    }
            
                    public UserMessage getDefaultMessage() {
                            return UserMessage.createError("Rule test is failed");
                    }
            }
    
  2. Add this rule to RulesCatalog:

            RulesCatalog.add(new RuleTest_Definition());
    

Example of extending access permission rules using the API

  1. Create an AccessPermissionRule and an AccessPermissionRuleDefinition:

     
            public final class AccessHidden implements AccessPermissionRule
            {
                    private List<PropertyData> propertyData;
            
                    public AccessPermission getPermission(PermissionExecutionContext context)
                    {
                            return AccessPermission.getHidden();
                    }
            
                    public void setup(PermissionRuleConfigurationContext configurationContext)
                    {
                            this.propertyData = configurationContext.getPropertyData();
                    }
            
            }
            
            public final class HiddenDataset_Definition implements AccessPermissionRuleDefinition
            {
            
                    public List<InputData> getInputData()
                    {
                            return null;
                    }
            
                    public UserMessage getLabel()
                    {
                            return UserMessage.createInfo("Hide the data set");
                    }
            
                    public List<OutputData> getOutputData()
                    {
                            return null;
                    }
            
                    public List<PropertyData> getPropertyData()
                    {
                            return null;
                    }
            
                    public UserMessage getBusinessConcept()
                    {
                            return UserMessage.createInfo("Any data set");
                    }
            
                    public AccessPermissionRule getRuleInstance()
                    {
                            return new AccessHidden();
                    }
            
                    public PermissionScope getPermissionScope()
                    {
                            return PermissionScope.DATASET;
                    }
            }
    
  2. Add this access permission rule to RulesCatalog:

            RulesCatalog.add(new HiddenDataset_Definition());
    

Example of extending action permission rules using the API

  1. Create an ActionPermissionRule and an ActionPermissionRuleDefinition:

            public final class ActionDisable implements ActionPermissionRule
            {
                    private List<PropertyData> propertyData;
            
                    public ActionPermission getPermission(PermissionExecutionContext context)
                    {
                            return ActionPermission.getDisabled();
                    }
            
                    public void setup(PermissionRuleConfigurationContext configurationContext)
                    {
                            this.propertyData = configurationContext.getPropertyData();
                    }
            }
            public final class DisableService_Definition implements ActionPermissionRuleDefinition
            {
            
                    public List<InputData> getInputData()
                    {
                            return null;
                    }
            
                    public UserMessage getLabel()
                    {
                            return UserMessage.createInfo("Disable the service");
                    }
            
                    public List<OutputData> getOutputData()
                    {
                            return null;
                    }
            
                    public List<PropertyData> getPropertyData()
                    {
                            return null;
                    }
            
                    public UserMessage getBusinessConcept()
                    {
                            return UserMessage.createInfo("Any service");
                    }
            
                    public ActionPermissionRule getRuleInstance()
                    {
                            return new ActionDisable();
                    }
            }
    
  2. Add this action permission rule to RulesCatalog:

            RulesCatalog.add(new DisableService_Definition());
    

 

 

 

Skip navigation links

Add-ons Version 4.5.22.

Copyright 2001-2025. Cloud Software Group, Inc. All rights reserved.
All third party product and company names and third party marks mentioned in this document are the property of their respective owners and are mentioned for identification.