package org.swellrt.api.js.generic; import com.google.gwt.core.client.JavaScriptObject; import org.swellrt.model.generic.FileType; import org.swellrt.model.generic.ListType; import org.swellrt.model.generic.MapType; import org.swellrt.model.generic.StringType; import org.swellrt.model.generic.TextType; import org.swellrt.model.generic.Type; public class AdapterTypeJS { public static JavaScriptObject adapt(Type instance) { if (instance instanceof StringType) { StringType str = (StringType) instance; StringTypeJS strJs = StringTypeJS.create(str); str.addListener(strJs); return strJs; } else if (instance instanceof MapType) { MapType map = (MapType) instance; MapTypeJS mapJs = MapTypeJS.create(map); map.addListener(mapJs); return mapJs; } else if (instance instanceof ListType) { ListType list = (ListType) instance; ListTypeJS listJs = ListTypeJS.create(list); list.addListener(listJs); return listJs; } else if (instance instanceof TextType) { TextType txt = (TextType) instance; TextTypeJS txtJs = TextTypeJS.create(txt); txt.addListener(txtJs); return txtJs; } else if (instance instanceof FileType) { FileType file = (FileType) instance; FileTypeJS fileJs = FileTypeJS.create(file); file.addListener(fileJs); return fileJs; } return null; } }