package options; /** * Derived from Section 2.7 of the requirements. */ public abstract class UserOptions { TimesAndDatesOptions timesAndDatesOptions; ViewingOptions viewingOptions; AdvancedOptions advancedOptions; } /** * To be derived from Section 2.8.3 of the requirements. */ abstract class TimesAndDatesOptions {} /** * Derived from Section 2.8.4 of the requirements, with further work clearly * necessary. */ abstract class ViewingOptions { int listLength; /* More to come ... */ } /** * Derived from Section 2.8.5 of the requirements, withe further work clearly * necessary. */ abstract class AdvancedOptions {}