OpenConcerto

Dépôt officiel du code source de l'ERP OpenConcerto
sonarqube

svn://code.openconcerto.org/openconcerto

Compare Revisions

Regard whitespace Rev 155 → Rev 156

/trunk/OpenConcerto/src/org/openconcerto/ui/light/JSONToLightUIConvertorManager.java
20,7 → 20,7
import net.minidev.json.JSONObject;
 
public class JSONToLightUIConvertorManager {
HashMap<String, JSONToLightUIConvertor> map = new HashMap<String, JSONToLightUIConvertor>();
HashMap<String, JSONToLightUIConvertor> map = new HashMap<>();
 
private static final JSONToLightUIConvertorManager instance = new JSONToLightUIConvertorManager();
 
33,15 → 33,206
}
 
public LightUIElement createUIElementFromJSON(final JSONObject jsonElement) {
final Integer elementType = (Integer) JSONConverter.getParameterFromJSON(jsonElement, "type", Integer.class, null);
if (elementType == null) {
throw new IllegalArgumentException("LightUIElement must contains attribute 'type'");
final Integer type = (Integer) JSONConverter.getParameterFromJSON(jsonElement, "type", Integer.class, null);
switch (type) {
case LightUIElement.TYPE_LABEL: {
final LightUILabel l = new LightUILabel();
l.fromJSON(jsonElement);
return l;
}
final String className = (String) JSONConverter.getParameterFromJSON(jsonElement, "class-name", String.class);
if (className == null) {
throw new IllegalArgumentException("class-name must be set");
case LightUIElement.TYPE_TEXT_FIELD: {
final LightUITextField l = new LightUITextField();
l.fromJSON(jsonElement);
return l;
 
}
final JSONToLightUIConvertor convertor = this.map.get(className);
return convertor.convert(jsonElement);
case LightUIElement.TYPE_DATE: {
final LightUIDate l = new LightUIDate();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_COMBOBOX: {
final LightUIComboBox l = new LightUIComboBox();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_TABLE: {
final LightUITable l = new LightUITable();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_CHECKBOX: {
final LightUICheckBox l = new LightUICheckBox();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_TABBED_UI: {
final LightUITabbed l = new LightUITabbed();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_COMBOBOX_ELEMENT: {
// TODO : WTF
throw new IllegalAccessError("WTF");
}
case LightUIElement.TYPE_PANEL: {
final LightUIPanel l = new LightUIPanel();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_TREE: {
// TODO : TYPE_TREE
throw new IllegalAccessError("TODO");
 
}
case LightUIElement.TYPE_TEXT: {
final LightUIText l = new LightUIText(jsonElement);
return l;
 
}
case LightUIElement.TYPE_LIST: {
final LightUIList l = new LightUIList(jsonElement);
return l;
 
}
case LightUIElement.TYPE_DROPDOWN_BUTTON: {
final LightUIDropDownButton l = new LightUIDropDownButton(jsonElement);
return l;
 
}
case LightUIElement.TYPE_FRAME: {
final LightUIFrame l = new LightUIFrame();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_IMAGE: {
final LightUIImage l = new LightUIImage(jsonElement);
return l;
}
case LightUIElement.TYPE_FILE_UPLOAD_WITH_SELECTION: {
final LightUIFileUpload l = new LightUIFileUpload();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_PANEL_LINE: {
final LightUILine l = new LightUILine();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_TAB_ELEMENT: {
final LightUITab l = new LightUITab(jsonElement);
return l;
 
}
case LightUIElement.TYPE_SLIDER: {
final LightUISlider l = new LightUISlider();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_PICTURE_UPLOAD: {
final LightUIPictureUpload l = new LightUIPictureUpload();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_BUTTON: {
final LightUIButton l = new LightUIButton();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_BUTTON_WITH_CONTEXT: {
final LightUIButtonWithContext l = new LightUIButtonWithContext(jsonElement);
return l;
 
}
case LightUIElement.TYPE_BUTTON_CANCEL: {
final LightUIButton button = new LightUIButton();
button.fromJSON(jsonElement);
return button;
}
case LightUIElement.TYPE_BUTTON_UNMANAGED: {
final LightUIButtonUnmanaged l = new LightUIButtonUnmanaged();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_BUTTON_WITH_SELECTION_CONTEXT: {
final LightUIButtonWithSelectionContext l = new LightUIButtonWithSelectionContext(jsonElement);
return l;
}
case LightUIElement.TYPE_BUTTON_LINK: {
final LightUIButtonLink l = new LightUIButtonLink();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_RAW_HTML: {
final LightUIRawHMTL l = new LightUIRawHMTL(jsonElement);
return l;
 
}
case LightUIElement.TYPE_TEXT_AREA: {
final LightUITextArea l = new LightUITextArea(jsonElement);
return l;
 
}
case LightUIElement.TYPE_FILE_UPLOAD: {
final LightUIFileUpload l = new LightUIFileUpload();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_LIST_ROW: {
final LightUIListRow l = new LightUIListRow(jsonElement);
return l;
 
}
case LightUIElement.TYPE_BADGE: {
final LightUIBadge l = new LightUIBadge(jsonElement);
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_AUTOCOMPLETE_COMBOBOX: {
final LightUIAutoCompleteComboBox l = new LightUIAutoCompleteComboBox();
l.fromJSON(jsonElement);
return l;
}
case LightUIElement.TYPE_COLOR_PICKER: {
final LightUIColorPicker l = new LightUIColorPicker(jsonElement);
return l;
 
}
case LightUIElement.TYPE_HOUR_EDITOR: {
final LightUIHourEditor l = new LightUIHourEditor(jsonElement);
return l;
 
}
case LightUIElement.TYPE_RADIO_BUTTONS: {
final LightUIRadioButtons l = new LightUIRadioButtons();
l.fromJSON(jsonElement);
return l;
 
}
case LightUIElement.TYPE_PASSWORD_FIELD: {
final LightUIPasswordField l = new LightUIPasswordField();
l.fromJSON(jsonElement);
return l;
 
}
 
}
throw new IllegalArgumentException("unsupported type " + type);
}
}