}
}
private void sessionFinish(ExecutionContext context) {
// shortcut to property objects
IntegerProperty totalMinPointsProperty = Points.getTotalMinPointsProperty();
IntegerProperty totalPointsProperty = Points.getTotalPointsProperty();
IntegerProperty totalMaxPointsProperty = Points.getTotalMaxPointsProperty();
// Set the current level onto the session
ModuleSession session = context.getExecutionData().getModuleSession();
Level.getLevelProperty().setValue(session, this);
// roll up the the total points to zero
Module module = context.getExecutionData().getModule();
// load current module totals
int minModule = totalMinPointsProperty.getValue(module, this, ZERO_POINTS);
int currModule = totalPointsProperty.getValue(module, this, ZERO_POINTS);
int maxModule = totalMaxPointsProperty.getValue(module, this, ZERO_POINTS);
// add values from current session
minModule += totalMinPointsProperty.getValue(session, this);
currModule += totalPointsProperty.getValue(session, this);
maxModule += totalMaxPointsProperty.getValue(session, this);
// store it back into the module
totalMinPointsProperty.setValue(module, this, minModule);
totalPointsProperty.setValue(module, this, currModule);
totalMaxPointsProperty.setValue(module, this, maxModule);
}