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.9.

Copyright TIBCO Software Inc. 2001-2022. 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.