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; }
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; }
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); } } }