Package ar.com.AmberSoft.iEvenTask.client.utils

Source Code of ar.com.AmberSoft.iEvenTask.client.utils.TreeLoader

package ar.com.AmberSoft.iEvenTask.client.utils;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Map;

import ar.com.AmberSoft.iEvenTask.client.Context;
import ar.com.AmberSoft.iEvenTask.shared.ParamsConst;

import com.extjs.gxt.ui.client.data.BaseTreeLoader;
import com.extjs.gxt.ui.client.data.BaseTreeModel;
import com.extjs.gxt.ui.client.data.ModelData;
import com.extjs.gxt.ui.client.data.TreeLoadEvent;
import com.extjs.gxt.ui.client.widget.grid.ColumnConfig;
import com.extjs.gxt.ui.client.widget.grid.ColumnModel;

@SuppressWarnings({"rawtypes", "unchecked"})
public class TreeLoader extends BaseTreeLoader {

  @Override
  protected void onLoadSuccess(Object loadConfig, List result) {
    ArrayList list = new ArrayList();
    Iterator itList = result.iterator();
    while (itList.hasNext()) {
      Map actual = (Map) itList.next();
      ColumnModel model = ((TreeGridProxy)this.getProxy()).getCallback().getGrid().getColumnModel();
      BaseTreeModel baseModel;
      if (Boolean.TRUE.equals(actual.get(ParamsConst.IS_DIRECTORY))) {
        Context.getInstance().addDetailExecution("Instanciando Folder");
        baseModel = new Folder();
      } else {
        Context.getInstance().addDetailExecution("Instanciando Music");
        baseModel = new Music();
      }
      List columns = model.getColumns();
      Iterator it = columns.iterator();
      while (it.hasNext()) {
        ColumnConfig columnConfig = (ColumnConfig) it.next();
        baseModel.set(columnConfig.getId(), actual.get(columnConfig.getId()));
      }
      list.add(baseModel);
    }   
   
      TreeLoadEvent evt = new TreeLoadEvent(this, loadConfig, list);
      if (loadConfig != null && children.contains(loadConfig)) {
        evt.parent = (ModelData) loadConfig;
        children.remove(loadConfig);
      }
      fireEvent(Load, evt);
  }

  @Override
  public boolean load() {
    setReuseLoadConfig(Boolean.TRUE);
    return super.load();
  }

  public TreeLoader(String service, TreeGrid grid) {
    super(new TreeGridProxy(service, grid));
  }
 
  public void setGrid(TreeGrid grid) {
    ((TreeGridProxy)proxy).setGrid(grid);
  }
 
}
TOP

Related Classes of ar.com.AmberSoft.iEvenTask.client.utils.TreeLoader

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.