package org.sakaiproject.gradebookng.tool.model;

import java.io.Serializable;

import org.sakaiproject.service.gradebook.shared.GradebookInformation;

import lombok.Getter;
import lombok.Setter;

/**
 * Wrapper for the info we need for the settings. 
 * 
 */
public class GbSettings implements Serializable {

	private static final long serialVersionUID = 1L;

	@Getter @Setter 
	private GradebookInformation gradebookInformation;
	
	public GbSettings(GradebookInformation gradebookInformation) {
		this.gradebookInformation = gradebookInformation;
	}
}

package org.sakaiproject.gradebookng.tool.model;

import java.io.Serializable;
import java.util.List;

import org.sakaiproject.service.gradebook.shared.GradebookInformation;

import lombok.Getter;
import lombok.Setter;

/**
 * Wrapper for the info we need for the settings.
 */
public class GbSettings implements Serializable {

	private static final long serialVersionUID = 1L;

	@Getter @Setter 
	private GradebookInformation gradebookInformation;
	
	@Getter @Setter
	private List<GbGradingSchemaEntry> gradingSchemaEntries;
	
	public GbSettings(GradebookInformation gradebookInformation) {
		this.gradebookInformation = gradebookInformation;
	}
	
}
Add out custom list to the GbSettings object we are using as the backing model. Remove the LDM. This refetches its data when the form is submitted. It also wasn't hooked up correctly to the list view meaning that updates were not cascading through. Implement the form submit listener so we can copy our list items back into the map for persisting.