Skip to content

Commit b605aaa

Browse files
authored
SAK-51326 DateManager gradebook by groups introduced a thread safety issue (#13564)
1 parent 55e83ef commit b605aaa

File tree

1 file changed

+3
-12
lines changed

1 file changed

+3
-12
lines changed

site-manage/datemanager/impl/src/main/java/org/sakaiproject/datemanager/impl/DateManagerServiceImpl.java

+3-12
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,6 @@
100100
import org.sakaiproject.util.ResourceLoader;
101101
import org.sakaiproject.util.api.FormattedText;
102102

103-
import lombok.Getter;
104103
import lombok.Setter;
105104
import lombok.extern.slf4j.Slf4j;
106105
import org.sakaiproject.tool.api.ToolSession;
@@ -130,7 +129,6 @@ public class DateManagerServiceImpl implements DateManagerService {
130129
@Setter private UserTimeService userTimeService;
131130
@Setter private SamigoAvailableNotificationService samigoAvailableNotificationService;
132131
@Setter private FormattedText formattedText;
133-
@Setter @Getter private List<Gradebook> gradebooksForGroup;
134132

135133
private final Map<String, Calendar> calendarMap = new HashMap<>();
136134
private final DateTimeFormatter inputDateFormatter;
@@ -405,7 +403,7 @@ public void updateAssignments(DateManagerValidation assignmentValidation) throws
405403
contextIds.add(gradebookUid);
406404
if (gradingService.isGradebookGroupEnabled(getCurrentSiteId())) {
407405
contextIds = new ArrayList<>();
408-
List<Gradebook> gradebooks = getGradebooksForGroup(gradebookUid);
406+
List<Gradebook> gradebooks = gradingService.getGradebookGroupInstances(gradebookUid);
409407
for (Gradebook gradebook : gradebooks) {
410408
List<org.sakaiproject.grading.api.Assignment> groupAssignments = gradingService.getAssignments(gradebook.getUid().toString(), getCurrentSiteId(), SortType.SORT_BY_NONE);
411409
for (org.sakaiproject.grading.api.Assignment assignmentAux : groupAssignments) {
@@ -680,7 +678,7 @@ public void updateAssessments(DateManagerValidation assessmentsValidation) throw
680678
contextIds.add(gradebookUid);
681679
if (gradingService.isGradebookGroupEnabled(getCurrentSiteId())) {
682680
contextIds = new ArrayList<>();
683-
List<Gradebook> gradebooks = getGradebooksForGroup(gradebookUid);
681+
List<Gradebook> gradebooks = gradingService.getGradebookGroupInstances(gradebookUid);
684682
for (Gradebook gradebook : gradebooks) {
685683
List<org.sakaiproject.grading.api.Assignment> groupAssignments = gradingService.getAssignments(gradebook.getUid().toString(), getCurrentSiteId(), SortType.SORT_BY_NONE);
686684
for (org.sakaiproject.grading.api.Assignment assignment : groupAssignments) {
@@ -793,7 +791,7 @@ public DateManagerValidation validateGradebookItems(String siteId, JSONArray gra
793791

794792
org.sakaiproject.grading.api.Assignment gbitem;
795793
if (gradingService.isGradebookGroupEnabled(getCurrentSiteId())) {
796-
List<Gradebook> gradebooks = getGradebooksForGroup(siteId);
794+
List<Gradebook> gradebooks = gradingService.getGradebookGroupInstances(siteId);
797795
String groupId = "";
798796
for (Gradebook gra : gradebooks) {
799797
List<org.sakaiproject.grading.api.Assignment> groupAssignments = gradingService.getAssignments(gra.getUid().toString(), getCurrentSiteId(), SortType.SORT_BY_NONE);
@@ -2107,11 +2105,4 @@ public JSONObject createJsonObject(String[] columnsNames, String[] columns, int
21072105
}
21082106
return jsonObject;
21092107
}
2110-
2111-
public List<Gradebook> getGradebooksForGroup(String context) {
2112-
if (gradebooksForGroup == null || gradebooksForGroup.size() > 0) {
2113-
gradebooksForGroup = gradingService.getGradebookGroupInstances(context);
2114-
}
2115-
return gradebooksForGroup;
2116-
}
21172108
}

0 commit comments

Comments
 (0)