public void setValue(final Object value) { if (type == ScriptParameterType.STRING) { stringValue = (String) value; } else if (type == ScriptParameterType.DECIMAL) { decimalValue = (BigDecimal) value; } else if (type == ScriptParameterType.DATE) { dateValue = (Date) value; } else if (type == ScriptParameterType.TIME_PERIOD) { timePeriodValue = (TimePeriod) value; } else if (type == ScriptParameterType.INTEGER) { intValue = (Integer) value; } else if (type == ScriptParameterType.TASK) { setTask((TaskDO) value); } else if (type == ScriptParameterType.USER) { setUser((PFUserDO) value); } else { throw new UnsupportedOperationException("Parameter type '" + type + "' not supported."); } }
} else if (property.startsWith("taskId:") == true) { final TaskDO task = taskDao.getById((Integer) selectedValue); form.scriptParameters.get(idx).setTask(task); } else if (property.startsWith("userId:") == true) { final PFUserDO user = userDao.getById((Integer) selectedValue);
private void prefillParameters() { final RecentScriptCalls recents = parentPage.getRecentScriptCalls(); final ScriptCallData scriptCallData = recents.getScriptCallData(data.getName()); if (scriptCallData != null && scriptCallData.getScriptParameter() != null) { for (final ScriptParameter recentParameter : scriptCallData.getScriptParameter()) { for (final ScriptParameter parameter : scriptParameters) { if (StringUtils.equals(parameter.getParameterName(), recentParameter.getParameterName()) == true) { if (parameter.getType() == recentParameter.getType()) { // Copy only if type matches if (parameter.getType() == ScriptParameterType.TASK) { final TaskDO task = taskDao.getById(recentParameter.getIntValue()); parameter.setTask(task); } else if (parameter.getType() == ScriptParameterType.USER) { final PFUserDO user = userDao.getById(recentParameter.getIntValue()); parameter.setUser(user); } else { parameter.setValue(recentParameter.getValue()); } } break; } // if parameterNames are equal. } // for script parameters } // for recent parameters. } // if scriptCallData is given }