private String getMaxLinks(ConditionDescriptor descriptor) { String stringMaxLinks = (String) descriptor.getArgs().get("maxLinks"); Integer maxLinks; try { maxLinks = Integer.valueOf(stringMaxLinks); } catch (NumberFormatException e) { maxLinks = Integer.valueOf(100); } return maxLinks.toString(); }
private Collection<String> getSelectedStatusesIds(ConditionDescriptor descriptor) { Collection selectedStatusesIds = new LinkedList(); String statuses = (String) descriptor.getArgs().get("statuses"); StringTokenizer st = new StringTokenizer(statuses, ","); while (st.hasMoreTokens()) { selectedStatusesIds.add(st.nextToken()); } return selectedStatusesIds; }
private Collection<Long> getSelectedLinkTypesIds(ConditionDescriptor descriptor, String param) { Collection selectedIssueLinkTypesIds = new LinkedList(); String issueLinkTypes = (String) descriptor.getArgs().get(param); StringTokenizer st = new StringTokenizer(issueLinkTypes, ","); while (st.hasMoreTokens()) { selectedIssueLinkTypesIds.add(Long.valueOf(st.nextToken())); } return selectedIssueLinkTypesIds; }
/* (non-Javadoc) * @see com.googlecode.jsu.workflow.AbstractWorkflowPluginFactory#getVelocityParamsForView(java.util.Map, com.opensymphony.workflow.loader.AbstractDescriptor) */ protected void getVelocityParamsForView( Map<String, Object> velocityParams, AbstractDescriptor descriptor) { ConditionDescriptor conditionDescriptor = (ConditionDescriptor) descriptor; Map args = conditionDescriptor.getArgs(); String sField = (String) args.get("fieldsList"); Field field = null; try { field = workflowUtils.getFieldFromKey(sField); } catch (Exception e) { } if (field != null) { velocityParams.put("val-fieldSelected", field); } else { velocityParams.put("val-errorMessage", "Unable to find field '" + sField + "'"); } boolean allowUserInField = getAllowUserInField(args); velocityParams.put("allowUserInField-selected", allowUserInField); }
protected void getVelocityParamsForView( Map<String, Object> velocityParams, AbstractDescriptor abstractDescriptor) { if (!(abstractDescriptor instanceof ConditionDescriptor)) { throw new IllegalArgumentException("Descriptor must be a ConditionDescriptor."); } ConditionDescriptor descriptor = (ConditionDescriptor) abstractDescriptor; Collection<Long> selectedInwardLinkTypesIds = getSelectedLinkTypesIds(descriptor, "inwardIssueLinkTypes"); Collection<Long> selectedOutwardLinkTypesIds = getSelectedLinkTypesIds(descriptor, "outwardIssueLinkTypes"); Collection<String> selectedIssueTypesIds = getSelectedIssueTypesIds(descriptor); Collection<String> selectedStatusesIds = getSelectedStatusesIds(descriptor); List<IssueLinkType> selectedInwardIssueLinkTypes = new LinkedList<IssueLinkType>(); List<IssueLinkType> selectedOutwardIssueLinkTypes = new LinkedList<IssueLinkType>(); List<IssueType> selectedIssueTypes = new LinkedList<IssueType>(); List<Status> selectedStatuses = new LinkedList<Status>(); for (Long issueLinkTypeId : selectedInwardLinkTypesIds) { selectedInwardIssueLinkTypes.add(this.issueLinkTypeManager.getIssueLinkType(issueLinkTypeId)); } for (Long issueLinkTypeId : selectedOutwardLinkTypesIds) { selectedOutwardIssueLinkTypes.add( this.issueLinkTypeManager.getIssueLinkType(issueLinkTypeId)); } for (String issueTypeId : selectedIssueTypesIds) { selectedIssueTypes.add(this.constantsManager.getIssueTypeObject(issueTypeId)); } for (String statusId : selectedStatusesIds) { selectedStatuses.add(this.constantsManager.getStatusObject(statusId)); } String projectKeys = (String) descriptor.getArgs().get("projectKeys"); if (projectKeys == null) { projectKeys = ""; } String ignoreOtherProjects = (String) descriptor.getArgs().get("ignoreOtherProjects"); if (ignoreOtherProjects == null) { ignoreOtherProjects = "false"; } velocityParams.put( "selectedIssueTypes", Collections.unmodifiableCollection(selectedIssueTypes)); velocityParams.put( "selectedInwardIssueLinkTypes", Collections.unmodifiableCollection(selectedInwardIssueLinkTypes)); velocityParams.put( "selectedOutwardIssueLinkTypes", Collections.unmodifiableCollection(selectedOutwardIssueLinkTypes)); velocityParams.put("selectedStatuses", Collections.unmodifiableCollection(selectedStatuses)); velocityParams.put("projectCondition", descriptor.getArgs().get("projectCondition")); velocityParams.put("projectKeys", projectKeys); velocityParams.put( "projectKeysWithReplacedNames", LinkConditionUtil.replaceCustomFieldIdsWithNames(projectKeys)); velocityParams.put("minLinks", getMinLinks(descriptor)); velocityParams.put("maxLinks", getMaxLinks(descriptor)); velocityParams.put("ignoreOtherProjects", ignoreOtherProjects); velocityParams.put( "restOfLinkTypesAreAllowed", descriptor.getArgs().get("restOfLinkTypesAreAllowed")); velocityParams.put( "restOfIssueTypesAreAllowed", descriptor.getArgs().get("restOfIssueTypesAreAllowed")); velocityParams.put( "restOfStatusesAreAllowed", descriptor.getArgs().get("restOfStatusesAreAllowed")); }