Package org.sgx.yuigwt.yuitest1.gallery.test

Source Code of org.sgx.yuigwt.yuitest1.gallery.test.DataSourceTest1

package org.sgx.yuigwt.yuitest1.gallery.test;


import org.sgx.yuigwt.yui.YUI;
import org.sgx.yuigwt.yui.YUICallback;
import org.sgx.yuigwt.yui.YuiContext;
import org.sgx.yuigwt.yui.console.Console;
import org.sgx.yuigwt.yui.console.ConsoleConfig;
import org.sgx.yuigwt.yui.datasource.DataSource;
import org.sgx.yuigwt.yui.datasource.DataSourceCallbackAdapter;
import org.sgx.yuigwt.yui.datasource.DataSourceConfig;
import org.sgx.yuigwt.yui.datasource.DataSourceEvent;
import org.sgx.yuigwt.yui.datasource.DataSourceRequest;
import org.sgx.yuigwt.yui.node.Node;
import org.sgx.yuigwt.yui.stylesheet.StyleSheet;
import org.sgx.yuigwt.yui.util.JsUtil;
import org.sgx.yuigwt.yuitest1.gallery.GalleryConstants;

import com.google.gwt.core.client.JavaScriptObject;
import com.google.gwt.user.client.Window;
/**
* simple exmples of using datasource
* @author sg
*
*/
public class DataSourceTest1 extends AbstractTest {

protected StyleSheet sty1;
protected Node ta1, ta2, renderBox;
protected YuiContext Y;

public DataSourceTest1() {
  super("dataSource1", "simple exmples of using datasource",
    new String[]{GalleryConstants.TAG_DATASOURCE},
    TestResources.instance.DataSourceTest1());
}

@Override
public void test(final Node parent) {
YUI.Use(new String[]{"datasource", "console", "dump", "json"}, new YUICallback() {
  @Override
  public void ready(final YuiContext Y) { 
    final Console console1 = Y.newConsole(ConsoleConfig.create().collapsed(true)).render().cast();
   
    //test 1 : Using DataSource.Local
    JavaScriptObject data1 = data1();
    DataSource ds1 = Y.newDataSourceLocal(DataSourceConfig.create().source(data1));
    ds1.sendRequest(DataSourceRequest.create().callback(new DataSourceCallbackAdapter() {
      @Override
      public void success(DataSourceEvent e) {
        console1.log("success1: "+JsUtil.dumpObj(e.response().meta())+
          " - "+JsUtil.dumpObj(e.response().results(), true));
      }
      @Override
      public void failure(DataSourceEvent e) {
        Window.alert("failure1: "+JsUtil.dumpObj(e));
      }
    }));
   
    //test2: use DataSource.Get for getting data from datatables.org:
    String ds2url =  "http://query.yahooapis.com/v1/public/yql?format=json&",
      yqlQuery = "show tables";
    DataSource ds2 = Y.newDataSourceGet(DataSourceConfig.create().source(ds2url));
    ds2.sendRequest(DataSourceRequest.create()
      .request("q="+yqlQuery)
      .callback(new DataSourceCallbackAdapter() {
      @Override
      public void success(DataSourceEvent e) {
//        JsArray<Result> results = e.response().results().cast();
//        Result result = results.get(0);
//        if(result.error()!=null) {
//          console1.log("test2, YQL returned ERROR: "+result.error());
//          return;
//        }
//        result.query().
       
//        console1.log("success2: "+JsUtil.dumpObj(e.response().meta())+
//          " - "+JsUtil.dumpObj(results.get(0).objGetObj("error"), true));
       
//        console1.log("success2: "+Y.dump(results.get(0), 10));
       
        console1.log("success2: "+Y.JSON().stringify(e.response().results()));
      }
      @Override
      public void failure(DataSourceEvent e) {
        Window.alert("failure2: "+JsUtil.dumpObj(e));
      }
    }));
   
   
  }
});
}

protected native final JavaScriptObject data1()/*-{
  return [
        {name:"abc",id:123,extra:"foo"},
        {name:"def",id:456,extra:"bar"},
        {name:"ghi",id:789,extra:"baz"}
    ];
}-*/;

TOP

Related Classes of org.sgx.yuigwt.yuitest1.gallery.test.DataSourceTest1

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.