Source:
<code>private InstructorResultsQuestionTable buildQuestionTableAndResponseRows( FeedbackQuestionAttributes question, List<FeedbackResponseAttributes> responses, String additionalInfoId, String participantIdentifier, boolean isShowingResponseRows) { FeedbackQuestionDetails questionDetails = question.getQuestionDetails(); String statisticsTable = questionDetails.getQuestionResultStatisticsHtml(responses, question, this, bundle, viewType.toString()); List<ElementTag> columnTags = new ArrayList<ElementTag>(); Map<String, Boolean> isSortable = new HashMap<String, Boolean>(); boolean isCollapsible = true; List<InstructorResultsResponseRow> responseRows = null; if (isShowingResponseRows) { switch (viewType) { case QUESTION: buildTableColumnHeaderForQuestionView(columnTags, isSortable); responseRows = buildResponseRowsForQuestion(question, responses); break; case GIVER_QUESTION_RECIPIENT: buildTableColumnHeaderForGiverQuestionRecipientView(columnTags, isSortable); responseRows = buildResponseRowsForQuestionForSingleGiver(question, responses, participantIdentifier); isCollapsible = false; break; case RECIPIENT_QUESTION_GIVER: buildTableColumnHeaderForRecipientQuestionGiverView(columnTags, isSortable); responseRows = buildResponseRowsForQuestionForSingleRecipient(question, responses, participantIdentifier); isCollapsible = false; break; default: Assumption.fail("View type should not involve question tables"); } } InstructorResultsQuestionTable questionTable = new InstructorResultsQuestionTable(this, responses, statisticsTable, responseRows, question, additionalInfoId, columnTags, isSortable); questionTable.setShowResponseRows(isShowingResponseRows); questionTable.setCollapsible(isCollapsible); <START> questionTable.setColumns(columnTags); <END> return questionTable; }</code><technical_language>setting columnTags in constructor</technical_language>

Target:
private InstructorFeedbackResultsQuestionTable buildQuestionTableAndResponseRows( FeedbackQuestionAttributes question, List<FeedbackResponseAttributes> responses, String additionalInfoId, String participantIdentifier, boolean isShowingResponseRows) { FeedbackQuestionDetails questionDetails = question.getQuestionDetails(); String statisticsTable = questionDetails.getQuestionResultStatisticsHtml(responses, question, this, bundle, viewType.toString()); List<ElementTag> columnTags = new ArrayList<ElementTag>(); Map<String, Boolean> isSortable = new HashMap<String, Boolean>(); boolean isCollapsible = true; List<InstructorFeedbackResultsResponseRow> responseRows = null; if (isShowingResponseRows) { switch (viewType) { case QUESTION: buildTableColumnHeaderForQuestionView(columnTags, isSortable); responseRows = buildResponseRowsForQuestion(question, responses); break; case GIVER_QUESTION_RECIPIENT: buildTableColumnHeaderForGiverQuestionRecipientView(columnTags, isSortable); responseRows = buildResponseRowsForQuestionForSingleGiver(question, responses, participantIdentifier); isCollapsible = false; break; case RECIPIENT_QUESTION_GIVER: buildTableColumnHeaderForRecipientQuestionGiverView(columnTags, isSortable); responseRows = buildResponseRowsForQuestionForSingleRecipient(question, responses, participantIdentifier); isCollapsible = false; break; default: Assumption.fail("View type should not involve question tables"); } } InstructorFeedbackResultsQuestionTable questionTable = new InstructorFeedbackResultsQuestionTable(this, responses, statisticsTable, responseRows, question, additionalInfoId, columnTags, isSortable); questionTable.setShowResponseRows(isShowingResponseRows); questionTable.setCollapsible(isCollapsible); return questionTable; }