コード例 #1
0
  public BaseUser transform(BaseUser jointUser) {

    if (transformRule != null) {
      Collection<ScriptingRuleParameter> transformParams = new ArrayList<ScriptingRuleParameter>();
      transformParams.add(new ScriptingRuleParameterImpl("jointUser", jointUser, BaseUser.class));

      ScriptingRuleEngine sre = new ScriptingRuleEngine();
      ScriptingRuleExecutionOutcome outcome;

      try {
        outcome = sre.execute(transformRule, transformParams);
        return (BaseUser) outcome.getObject();
      } catch (Exception e) {
        logger.error("User Mapping Rule Failed...ignoring", e);
      }
    }

    return null;
  }
コード例 #2
0
  public BaseUser join(Collection<BaseUser> selectedUsers) {

    if (joinRule != null) {
      Collection<ScriptingRuleParameter> joinParams = new ArrayList<ScriptingRuleParameter>();

      joinParams.add(
          new ScriptingRuleParameterImpl("selectedUsers", selectedUsers, Collection.class));

      ScriptingRuleEngine sre = new ScriptingRuleEngine();
      ScriptingRuleExecutionOutcome outcome;

      try {
        outcome = sre.execute(joinRule, joinParams);
        return (BaseUser) outcome.getObject();
      } catch (Exception e) {
        logger.error("User Mapping Rule Failed...ignoring", e);
      }
    }

    return null;
  }
コード例 #3
0
  public void validate(BaseUser transformedUser) {

    if (validateRule != null) {
      Collection<ScriptingRuleParameter> validateParams = new ArrayList<ScriptingRuleParameter>();
      validateParams.add(
          new ScriptingRuleParameterImpl("transformedUser", transformedUser, BaseUser.class));

      ScriptingRuleEngine sre = new ScriptingRuleEngine();
      ScriptingRuleExecutionOutcome outcome;

      try {
        outcome = sre.execute(validateRule, validateParams);
        Boolean error = (Boolean) outcome.getObject();

        if (error) {
          throw new IllegalArgumentException("Error validating mapped user entry");
        }

      } catch (Exception e) {
        logger.error("User Mapping Rule Failed...ignoring", e);
      }
    }
  }