package de.espirit.firstspirit.access.editor; import de.espirit.firstspirit.access.Language; import de.espirit.firstspirit.access.editor.value.InvalidValueException; import de.espirit.firstspirit.access.editor.value.Option; import de.espirit.firstspirit.access.editor.value.OptionModel; /** * Example how to get the value of a ComboboxEditorValue and how to store a value into a ComboboxEditorValue. * * @since 4.2.34 */ public class ComboboxEditorValueExample { /** * Gets the first option found in option model and stores it into the ComboboxEditorValue for the given language. * Note: The selected Option has to be defined in the editors option model. * * @since 4.2.34 */ public void setValueForLanguage(final ComboboxEditorValue editor, final Language language) throws InvalidValueException { // 1. check if language is provided if editor is language dependent ("useLanguages='yes'" in gom syntax) if (editor.isLanguageDependent() && language == null) { throw new NullPointerException("Language is missing!"); } // 2. get the option model of the editor value final OptionModel optionModel = editor.getOptionModel(language); // 3. get the first option defined in the option model if its not empty if (optionModel.getSize() > 0) { final Option option = optionModel.iterator().next(); // 4. store the selected value into the editor value editor.set(language, option); } } /** * Returns the selected Option of the ComboboxEditorValue for the given language. * * @since 4.2.34 */ public Option getValueForLanguage(final ComboboxEditorValue editor, final Language language) { // 1. get the stored instance in the editor value final Option value = editor.get(language); // 2. and return the value for further processing return value; } }