package foundation.capacity; import foundation.capacity.role.Role; import foundation.capacity.role.RoleAgent; import foundation.capacity.sight.Sight; import foundation.json.IJSONProvider; import foundation.json.IJSONWriter; import foundation.util.MapList; public class CapacityRuntime implements IJSONProvider { private MapList items; private RoleAgent mergedRole; private Sight mergeSight; public CapacityRuntime() { items = new MapList(); } public void merge(Capacity capacity) { mergedRole = capacity.getRoleAgent(); mergeSight = capacity.getSight(); } public Role getRole() { if (mergedRole == null) { return null; } return mergedRole.get(); } public Sight getSight() { return mergeSight; } public void writeJSON(IJSONWriter writer) { writer.beginArray(); for (Capacity capacity: items) { capacity.writeJSON(writer); } writer.endArray(); } }