Example #1
0
  public void saveStatusFormData(
      final StatusForm statusForm,
      final CourseNode node,
      final UserCourseEnvironment userCourseEnv) {
    final Identity identity = userCourseEnv.getIdentityEnvironment().getIdentity();
    final String selectedKey = statusForm.getSelectedStatus();

    final CoursePropertyManager cpm =
        userCourseEnv.getCourseEnvironment().getCoursePropertyManager();
    PropertyImpl statusProperty;

    statusProperty = cpm.findCourseNodeProperty(node, identity, null, PROPERTY_KEY_STATUS);
    if (statusProperty == null) {
      statusProperty =
          cpm.createCourseNodePropertyInstance(
              node, identity, null, PROPERTY_KEY_STATUS, null, null, selectedKey, null);
      cpm.saveProperty(statusProperty);
    } else {
      statusProperty.setStringValue(selectedKey);
      cpm.updateProperty(statusProperty);
    }
  }