@Override public WorklogNewEstimateResult validateDeleteWithNewEstimate(JiraServiceContext jiraServiceContext, Long worklogId, String newEstimate) { WorklogResult originalWorklogResult = validateDelete(jiraServiceContext, worklogId); if (originalWorklogResult != null && isValidNewEstimate(jiraServiceContext, newEstimate)) { final Long estimate = (newEstimate == null) ? null : getDurationForFormattedString(newEstimate, jiraServiceContext); return WorklogResultFactory.createNewEstimate(originalWorklogResult, estimate); } return null; }
@Override public WorklogAdjustmentAmountResult validateDeleteWithManuallyAdjustedEstimate(JiraServiceContext jiraServiceContext, Long worklogId, String adjustmentAmount) { WorklogResult originalWorklogResult = validateDelete(jiraServiceContext, worklogId); if (originalWorklogResult != null && isValidAdjustmentAmount(jiraServiceContext, adjustmentAmount)) { return WorklogResultFactory.createAdjustmentAmount(originalWorklogResult, getDurationForFormattedString(adjustmentAmount, jiraServiceContext)); } return null; }
@Override public WorklogAdjustmentAmountResult validateCreateWithManuallyAdjustedEstimate(JiraServiceContext jiraServiceContext, WorklogAdjustmentAmountInputParameters params) { WorklogResult worklogResult = validateCreate(jiraServiceContext, params); if (isValidAdjustmentAmount(jiraServiceContext, params.getAdjustmentAmount(), params.getErrorFieldPrefix()) && worklogResult != null) { return WorklogResultFactory.createAdjustmentAmount(worklogResult, getDurationForFormattedString(params.getAdjustmentAmount(), jiraServiceContext)); } return null; }
@Override public WorklogNewEstimateResult validateCreateWithNewEstimate(JiraServiceContext jiraServiceContext, WorklogNewEstimateInputParameters params) { WorklogResult worklogResult = validateCreate(jiraServiceContext, params); if (isValidNewEstimate(jiraServiceContext, params.getNewEstimate(), params.getErrorFieldPrefix()) && worklogResult != null) { final Long estimate = (params.getNewEstimate() == null) ? null : getDurationForFormattedString(params.getNewEstimate(), jiraServiceContext); return WorklogResultFactory.createNewEstimate(worklogResult, estimate); } return null; }
@Override public WorklogNewEstimateResult validateUpdateWithNewEstimate(JiraServiceContext jiraServiceContext, final WorklogNewEstimateInputParameters params) { notNull("params", params); WorklogResult worklogResult = validateUpdate(jiraServiceContext, params); if (isValidNewEstimate(jiraServiceContext, params.getNewEstimate(), params.getErrorFieldPrefix()) && worklogResult != null) { final Long estimate = (params.getNewEstimate() == null) ? null : getDurationForFormattedString(params.getNewEstimate(), jiraServiceContext); return WorklogResultFactory.createNewEstimate(worklogResult, estimate); } return null; }
else if (getDurationForFormattedString(timeSpent, jiraServiceContext) == 0)
protected Worklog validateParamsAndCreateWorklog(JiraServiceContext jiraServiceContext, Issue issue, ApplicationUser author, Visibility visibility, String timeSpent, Date startDate, Long worklogId, String comment, Date created, Date updated, ApplicationUser updateAuthor, final String errorFieldPrefix) { Worklog worklog = null; // Validate the worklog params if (visibilityValidator.isValidVisibilityData(jiraServiceContext, WORKLOG_I18N_PREFIX, issue, visibility)) { // Validate the worklog input fields boolean defaultInputFieldsValidated = isValidWorklogInputFields(jiraServiceContext, issue, timeSpent, startDate, errorFieldPrefix); if (defaultInputFieldsValidated) { String groupLevel = visibility.accept(VisibilityVisitors.returningGroupLevelVisitor()).getOrNull(); Long roleLevelId = visibility.accept(VisibilityVisitors.returningRoleLevelIdVisitor()).getOrNull(); worklog = new WorklogImpl2(issue, worklogId, ApplicationUsers.getKeyFor(author), comment, startDate, groupLevel, roleLevelId, getDurationForFormattedString(timeSpent, jiraServiceContext), updateAuthor != null ? updateAuthor.getKey() : null, created, updated, roleLevelId != null ? projectRoleManager.getProjectRole(roleLevelId) : null); } } return worklog; }