code cleaned up removing commented lines in GxtFormSubmitQuery, GxtBorderLayoutPanel and GxtTreePanel

git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/user/databases-manager-portlet@98807 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
Loredana Liccardo 2014-07-18 15:34:26 +00:00
parent 18e842f39b
commit b411ad0574
3 changed files with 186 additions and 1834 deletions

View File

@ -1,88 +1,60 @@
package org.gcube.portlets.user.databasesmanager.client.form; package org.gcube.portlets.user.databasesmanager.client.form;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
import org.gcube.portlets.user.databasesmanager.client.datamodel.SubmitQueryData; import org.gcube.portlets.user.databasesmanager.client.datamodel.SubmitQueryData;
//import org.gcube.portlets.user.dbmanager.client.datamodel.SubmitQueryData;
import com.extjs.gxt.charts.client.model.Legend.Position;
import com.extjs.gxt.ui.client.Style.Orientation;
import com.extjs.gxt.ui.client.widget.ContentPanel;
import com.extjs.gxt.ui.client.widget.LayoutContainer; import com.extjs.gxt.ui.client.widget.LayoutContainer;
import com.extjs.gxt.ui.client.widget.VerticalPanel;
import com.extjs.gxt.ui.client.widget.form.CheckBox; import com.extjs.gxt.ui.client.widget.form.CheckBox;
import com.extjs.gxt.ui.client.widget.form.FormPanel; import com.extjs.gxt.ui.client.widget.form.FormPanel;
import com.extjs.gxt.ui.client.widget.form.TextArea; import com.extjs.gxt.ui.client.widget.form.TextArea;
import com.extjs.gxt.ui.client.widget.form.TextField;
import com.extjs.gxt.ui.client.widget.layout.FitLayout; import com.extjs.gxt.ui.client.widget.layout.FitLayout;
import com.extjs.gxt.ui.client.widget.layout.FormData; import com.extjs.gxt.ui.client.widget.layout.FormData;
import com.extjs.gxt.ui.client.widget.layout.RowLayout;
//Form that the is used from the user to insert data useful for submit a query
public class GxtFormSubmitQuery extends LayoutContainer { public class GxtFormSubmitQuery extends LayoutContainer {
// private VerticalPanel vp; // private VerticalPanel vp;
FormPanel form; private FormPanel form;
private FormData formData; private FormData formData;
// private SubmitQueryData data; // gwt logger
// private boolean ReadOnlyQuery;
// private boolean SmartCorrection;
private static Logger rootLogger = Logger.getLogger("GxtFormSubmitQuery"); private static Logger rootLogger = Logger.getLogger("GxtFormSubmitQuery");
public GxtFormSubmitQuery() { public GxtFormSubmitQuery() {
// this.setLayout(new RowLayout(Orientation.HORIZONTAL));
this.setLayout(new FitLayout()); this.setLayout(new FitLayout());
// this.setSize(600, 400); // this.setSize(600, 400);
formData = new FormData("-20"); formData = new FormData("-20");
// vp = new VerticalPanel(); // vp = new VerticalPanel();
// vp.setSpacing(10);
// vp.setSpacing(10);
createLayout(); createLayout();
// add(vp);
// add(vp);
} }
private void createLayout() { private void createLayout() {
// FormPanel form = new FormPanel();
form = new FormPanel(); form = new FormPanel();
// form.setHeading("Submit Query"); // form.setHeading("Submit Query");
form.setHeaderVisible(false); form.setHeaderVisible(false);
// form.setFrame(true); // form.setFrame(true);
// form.setWidth(350); // form.setWidth(350);
// form.setWidth(350); // form.setWidth(350);
// form.setHeight(250); // form.setHeight(250);
// Query field // Query field
// TextField<String> query = new TextField<String>();
// query.setFieldLabel("Query");
TextArea query = new TextArea(); TextArea query = new TextArea();
query.setHeight(300); query.setHeight(300);
query.setPreventScrollbars(false); query.setPreventScrollbars(false);
query.setFieldLabel("Query"); query.setFieldLabel("Query");
// query.setHeight(50);
// query.setWidth(50);
// query.setHeight(50);
// query.setWidth(50);
// query.setAllowBlank(false); // query.setAllowBlank(false);
query.getFocusSupport().setPreviousId(form.getButtonBar().getId()); query.getFocusSupport().setPreviousId(form.getButtonBar().getId());
form.add(query, formData); form.add(query, formData);
@ -91,12 +63,10 @@ public class GxtFormSubmitQuery extends LayoutContainer {
// CheckBoxGroup readOnlyQuery = new CheckBoxGroup(); // CheckBoxGroup readOnlyQuery = new CheckBoxGroup();
// readOnlyQuery.setFieldLabel("Read Only Query"); // readOnlyQuery.setFieldLabel("Read Only Query");
// CheckBox checkRO = new CheckBox(); // CheckBox checkRO = new CheckBox();
// checkRO.setFieldLabel("Read Only Query"); // checkRO.setFieldLabel("Read Only Query");
// checkRO.setValue(true); // checkRO.setValue(true);
// // readOnlyQuery.add(checkRO); // form.add(checkRO, formData);
// // form.add(readOnlyQuery, formData);
// form.add(checkRO, formData);
// Smart Correction button // Smart Correction button
// CheckBoxGroup smartCorrection = new CheckBoxGroup(); // CheckBoxGroup smartCorrection = new CheckBoxGroup();
@ -105,79 +75,63 @@ public class GxtFormSubmitQuery extends LayoutContainer {
CheckBox checkSC = new CheckBox(); CheckBox checkSC = new CheckBox();
checkSC.setFieldLabel("Apply Smart Corrections"); checkSC.setFieldLabel("Apply Smart Corrections");
checkSC.setValue(false); checkSC.setValue(false);
// smartCorrection.add(checkSC); // smartCorrection.add(checkSC);
// form.add(smartCorrection, formData); // form.add(smartCorrection, formData);
form.add(checkSC, formData); form.add(checkSC, formData);
// // SQL Dialect ComboBox // SQL Dialect ComboBox
// //
// ListStore<SQLDialect> store = new ListStore<SQLDialect>(); // ListStore<SQLDialect> store = new ListStore<SQLDialect>();
// List<SQLDialect> elements = new ArrayList<SQLDialect>(); // List<SQLDialect> elements = new ArrayList<SQLDialect>();
// //
// // load data to display in comboBox // load data to display in comboBox
// elements = SQLDialect.loadData(); // elements = SQLDialect.loadData();
// store.add(elements); // store.add(elements);
// //
// ComboBox<SQLDialect> combo = new ComboBox<SQLDialect>(); // ComboBox<SQLDialect> combo = new ComboBox<SQLDialect>();
// combo.setFieldLabel("Language"); // combo.setFieldLabel("Language");
// combo.setDisplayField("name"); // combo.setDisplayField("name");
// combo.setTriggerAction(TriggerAction.ALL); // combo.setTriggerAction(TriggerAction.ALL);
// combo.setValue(store.getAt(0)); // combo.setValue(store.getAt(0));
// combo.setStore(store); // combo.setStore(store);
// form.add(combo, formData); // form.add(combo, formData);
// vp.add(form);
// vp.add(form);
this.add(form); this.add(form);
} }
// get the query
private String getQuery() { private String getQuery() {
String query = ((TextArea) form.getWidget(0)).getValue(); String query = ((TextArea) form.getWidget(0)).getValue();
// System.out.println("GxtFormSubmitQuery->query: " + query); // print check
// System.out.println("GxtFormSubmitQuery->query: " + query);
rootLogger.log(Level.SEVERE, "query: " + query); rootLogger.log(Level.SEVERE, "query: " + query);
return query; return query;
} }
// private boolean getReadOnlyQueryValue() { // get the smart correction value
//
// CheckBox checkRO = ((CheckBox) form.getWidget(1));
//
// System.out.println("GxtFormSubmitQuery->readonlyquery: "
// + checkRO.getValue());
// return (checkRO.getValue());
//
// }
private boolean getSmartCorrectionValue() { private boolean getSmartCorrectionValue() {
// CheckBox checkSC = ((CheckBox) form.getWidget(2)); // CheckBox checkSC = ((CheckBox) form.getWidget(2));
CheckBox checkSC = ((CheckBox) form.getWidget(1)); CheckBox checkSC = ((CheckBox) form.getWidget(1));
// System.out.println("GxtFormSubmitQuery->smartcorrection: " // print check
// + checkSC.getValue()); // System.out.println("GxtFormSubmitQuery->smartcorrection: "
// + checkSC.getValue());
rootLogger.log(Level.SEVERE, "smartcorrection: " + checkSC.getValue()); rootLogger.log(Level.SEVERE, "smartcorrection: " + checkSC.getValue());
return (checkSC.getValue()); return (checkSC.getValue());
} }
// private String getLanguage() { // get data for submit a query
//
// ComboBox<SQLDialect> combo = ((ComboBox<SQLDialect>) form.getWidget(3));
// SQLDialect item = combo.getValue();
//
// System.out.println("GxtFormSubmitQuery->language: " + item.getName());
//
// return item.getName();
// }
public SubmitQueryData getSubmitQueryData() { public SubmitQueryData getSubmitQueryData() {
layout(true); layout(true);
@ -186,15 +140,35 @@ public class GxtFormSubmitQuery extends LayoutContainer {
data.setQuery(this.getQuery()); data.setQuery(this.getQuery());
//TO REMOVE // TO REMOVE
// data.setReadOnlyQuery(this.getReadOnlyQueryValue()); // data.setReadOnlyQuery(this.getReadOnlyQueryValue());
data.setSmartCorrection(this.getSmartCorrectionValue()); data.setSmartCorrection(this.getSmartCorrectionValue());
//TO REMOVE // TO REMOVE
// data.setLanguage(this.getLanguage()); // data.setLanguage(this.getLanguage());
return data; return data;
} }
// private String getLanguage() {
//
// ComboBox<SQLDialect> combo = ((ComboBox<SQLDialect>) form.getWidget(3));
// SQLDialect item = combo.getValue();
//
// System.out.println("GxtFormSubmitQuery->language: " + item.getName());
//
// return item.getName();
// }
// private boolean getReadOnlyQueryValue() {
//
// CheckBox checkRO = ((CheckBox) form.getWidget(1));
//
// System.out.println("GxtFormSubmitQuery->readonlyquery: "
// + checkRO.getValue());
// return (checkRO.getValue());
//
// }
} }

View File

@ -12,7 +12,6 @@ import org.gcube.portlets.user.databasesmanager.client.datamodel.FileModel;
import org.gcube.portlets.user.databasesmanager.client.datamodel.Result; import org.gcube.portlets.user.databasesmanager.client.datamodel.Result;
import org.gcube.portlets.user.databasesmanager.client.events.SelectedItemEvent; import org.gcube.portlets.user.databasesmanager.client.events.SelectedItemEvent;
import org.gcube.portlets.user.databasesmanager.client.utils.ConstantsPortlet; import org.gcube.portlets.user.databasesmanager.client.utils.ConstantsPortlet;
import com.extjs.gxt.ui.client.Style.Scroll; import com.extjs.gxt.ui.client.Style.Scroll;
import com.extjs.gxt.ui.client.Style.SelectionMode; import com.extjs.gxt.ui.client.Style.SelectionMode;
import com.extjs.gxt.ui.client.event.ComponentEvent; import com.extjs.gxt.ui.client.event.ComponentEvent;
@ -33,7 +32,6 @@ import com.google.gwt.user.client.Event;
import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.gwt.user.client.rpc.AsyncCallback;
//class that implements the tree object //class that implements the tree object
public class GxtTreePanel extends LayoutContainer { public class GxtTreePanel extends LayoutContainer {
// to manage the tree // to manage the tree
@ -50,17 +48,10 @@ public class GxtTreePanel extends LayoutContainer {
// the rpc remote service // the rpc remote service
private GWTdbManagerServiceAsync RPCservice = null; private GWTdbManagerServiceAsync RPCservice = null;
// to keep track of information associated to a database
// private LinkedHashMap<String, FileModel> dataDBInfo = null;
// private String ResourceNameSelected;
// private String DatabaseNameSelected;
// private String SchemaNameSelected;
// private String TableNameSelected;
// to keep track of information associated to the selected item // to keep track of information associated to the selected item
private LinkedHashMap<String, String> infoOnSelectedItem; private LinkedHashMap<String, String> infoOnSelectedItem;
// the GWT logger
private static Logger rootLogger = Logger.getLogger("GxtTreePanel"); private static Logger rootLogger = Logger.getLogger("GxtTreePanel");
// constructor // constructor
@ -68,14 +59,12 @@ public class GxtTreePanel extends LayoutContainer {
throws Exception { throws Exception {
RPCservice = service; RPCservice = service;
eventBus = eBus; eventBus = eBus;
store = new TreeStore<FileModel>(); store = new TreeStore<FileModel>();
//remove the scroll mode (the scroll of the panel that contains the tree is used)
this.setScrollMode(Scroll.NONE);
// remove the scroll mode (the scroll of the panel that contains the
// tree is used)
this.setScrollMode(Scroll.NONE);
this.initLayout(); this.initLayout();
} }
@ -83,9 +72,7 @@ public class GxtTreePanel extends LayoutContainer {
private void initLayout() throws Exception { private void initLayout() throws Exception {
setLayout(new FlowLayout(10)); setLayout(new FlowLayout(10));
treePanel = new TreePanel<FileModel>(store) { treePanel = new TreePanel<FileModel>(store) {
@Override @Override
public boolean hasChildren(FileModel parent) { public boolean hasChildren(FileModel parent) {
if (parent.isExpanded() == true) { if (parent.isExpanded() == true) {
@ -102,9 +89,7 @@ public class GxtTreePanel extends LayoutContainer {
EventType typeEvent = tpe.getType(); EventType typeEvent = tpe.getType();
// boolean rightClick = false; // boolean rightClick = false;
//
// if (typeEvent == Events.OnMouseDown) { // if (typeEvent == Events.OnMouseDown) {
//
// if (ce.isRightClick()){ // if (ce.isRightClick()){
// rightClick = true; // rightClick = true;
// } // }
@ -133,8 +118,6 @@ public class GxtTreePanel extends LayoutContainer {
}; };
treePanel.setDisplayProperty("name"); treePanel.setDisplayProperty("name");
// load the root // load the root
loadRootItemTree(); loadRootItemTree();
@ -154,12 +137,6 @@ public class GxtTreePanel extends LayoutContainer {
} }
// private void createLayout() {
//
// // Folder model = getTreeModel();
//
// }
private void addListeners() { private void addListeners() {
// to manage the selection item event in the tree // to manage the selection item event in the tree
@ -170,21 +147,11 @@ public class GxtTreePanel extends LayoutContainer {
public void selectionChanged( public void selectionChanged(
SelectionChangedEvent<FileModel> se) { SelectionChangedEvent<FileModel> se) {
// reset infromation at each selection
// dataDBInfo = null;
// ResourceNameSelected = null;
// DatabaseNameSelected = null;
// SchemaNameSelected = null;
// TableNameSelected = null;
// infoOnSelectedItem = null;
// SelectedItemIsSchema = false;
// the selected element // the selected element
List<FileModel> data = treePanel.getSelectionModel() List<FileModel> data = treePanel.getSelectionModel()
.getSelectedItems(); .getSelectedItems();
FileModel selectedItem = data.get(0); FileModel selectedItem = data.get(0);
value = data.get(0).get("name"); value = data.get(0).get("name");
// System.out.println("GxtTreePanel Value: " // System.out.println("GxtTreePanel Value: "
@ -193,21 +160,13 @@ public class GxtTreePanel extends LayoutContainer {
rootLogger.log(Level.INFO, rootLogger.log(Level.INFO,
"GxtTreePanel-> selectedItem value: " + value); "GxtTreePanel-> selectedItem value: " + value);
// System.out.println("GxtTreePanel Depth: "
// + store.getDepth(data.get(0)));
// get the depth level // get the depth level
treeDepthSelectedItem = store.getDepth(data.get(0)); treeDepthSelectedItem = store.getDepth(data.get(0));
// rootLogger.log(Level.INFO,
// "GxtTreePanel-> selectedItem level depth: " +
// treeDepthSelectedItem);
rootLogger.log(Level.INFO, "selectedItem level depth: " rootLogger.log(Level.INFO, "selectedItem level depth: "
+ treeDepthSelectedItem); + treeDepthSelectedItem);
// get children number for the selected item // get children number for the selected item
int numChildrenFolder = store.getChildCount(data.get(0)); int numChildrenFolder = store.getChildCount(data.get(0));
// recover the appropriate information whenever an // recover the appropriate information whenever an
@ -221,9 +180,9 @@ public class GxtTreePanel extends LayoutContainer {
// element // element
// selected // selected
// do not make a rpc call // do not make a rpc call if it has already been called
if ((data.get(0).isLoaded() == true)) { if ((data.get(0).isLoaded() == true)) {
// set information
setInfoOnSelectedItem(data.get(0)); setInfoOnSelectedItem(data.get(0));
// fire event when an item has been selected in the // fire event when an item has been selected in the
@ -320,7 +279,7 @@ public class GxtTreePanel extends LayoutContainer {
new Listener<TreePanelEvent<FileModel>>() { new Listener<TreePanelEvent<FileModel>>() {
public void handleEvent(final TreePanelEvent<FileModel> be) { public void handleEvent(final TreePanelEvent<FileModel> be) {
rootLogger.log(Level.INFO, "Expand"); // rootLogger.log(Level.INFO, "Expand event");
FileModel selectedItem = (FileModel) (be.getNode() FileModel selectedItem = (FileModel) (be.getNode()
.getModel()); .getModel());
@ -334,7 +293,7 @@ public class GxtTreePanel extends LayoutContainer {
int numChildrenFolder = store int numChildrenFolder = store
.getChildCount(selectedItem); .getChildCount(selectedItem);
// set information
setInfoOnSelectedItem(selectedItem); setInfoOnSelectedItem(selectedItem);
// get the depth level // get the depth level
@ -348,21 +307,13 @@ public class GxtTreePanel extends LayoutContainer {
if ((numChildrenFolder == 0) if ((numChildrenFolder == 0)
&& (selectedItem.isLoaded() != true)) { && (selectedItem.isLoaded() != true)) {
if (treeDepthSelectedItem!=1){ if (treeDepthSelectedItem != 1) {
treePanel.disableEvents(true); treePanel.disableEvents(true);
} }
// selectedItem.setIsSchema(false);
switch (treeDepthSelectedItem) { switch (treeDepthSelectedItem) {
// case 1:
//
// loadResources(data.get(0));
// break;
case 2: // the selected item is the resource case 2: // the selected item is the resource
// selectedItem.setIsSchema(false);
// to mask the tree panel // to mask the tree panel
treePanel.mask("Loading", "x-mask-loading"); treePanel.mask("Loading", "x-mask-loading");
@ -378,25 +329,11 @@ public class GxtTreePanel extends LayoutContainer {
// to mask the tree panel // to mask the tree panel
treePanel.mask("Loading", "x-mask-loading"); treePanel.mask("Loading", "x-mask-loading");
// load schema for postgres database // load schema
// selectedItem.setIsSchema(false);
loadSchema(selectedItem); loadSchema(selectedItem);
} }
// else {
// // System.out.println("database mysql: " +
// // data.get(0).getName() +
// // data.get(0).getDatabaseType());
//
// // load tables for mysql database
// loadTables(data.get(0));
// }
break;
// case 4: // load tables for postgres database break;
// // selectedItem.setIsSchema(false);
// loadTables(data.get(0));
// break;
} }
@ -413,42 +350,25 @@ public class GxtTreePanel extends LayoutContainer {
// load the root // load the root
private void loadRootItemTree() throws Exception { private void loadRootItemTree() throws Exception {
// treePanel.mask("Loading", "x-mask-loading");
this.mask("Loading", "x-mask-loading"); this.mask("Loading", "x-mask-loading");
final FileModel root = new FileModel("Resources"); final FileModel root = new FileModel("Resources");
store.insert(root, 0, true); store.insert(root, 0, true);
// store.add(root, true); // store.add(root, true);
loadResources(root, this); loadResources(root, this);
} }
public String getValue() { public String getValue() {
return value; return value;
} }
// // get the tree depth
// public int getTreeDepthSelectedItem() {
//
// return treeDepthSelectedItem;
// }
// load resources // load resources
private void loadResources(final FileModel element, final GxtTreePanel tree) { private void loadResources(final FileModel element, final GxtTreePanel tree) {
// System.out.println("Start RPC - getResources");
// rootLogger.log(Level.SEVERE,
// "GxtTreePanel-> Start RPC - getResource");
rootLogger.log(Level.SEVERE, "Start RPC - getResource"); rootLogger.log(Level.SEVERE, "Start RPC - getResource");
// call rpc remote service // call rpc remote service
RPCservice.getResource(new AsyncCallback<List<FileModel>>() { RPCservice.getResource(new AsyncCallback<List<FileModel>>() {
@Override @Override
@ -457,9 +377,6 @@ public class GxtTreePanel extends LayoutContainer {
// Window.alert(caught.getMessage()); // Window.alert(caught.getMessage());
// System.out.println("FAILURE"); // System.out.println("FAILURE");
// rootLogger.log(Level.SEVERE,
// "GxtTreePanel-> FAILURE RPC getResource");
rootLogger.log(Level.SEVERE, "FAILURE RPC getResource"); rootLogger.log(Level.SEVERE, "FAILURE RPC getResource");
MessageBox.alert("Error ", MessageBox.alert("Error ",
@ -474,33 +391,17 @@ public class GxtTreePanel extends LayoutContainer {
@Override @Override
public void onSuccess(List<FileModel> result) { public void onSuccess(List<FileModel> result) {
// if (treePanel.isMasked())
// treePanel.unmask();
// System.out.println("SUCCESS");
// rootLogger.log(Level.SEVERE,
// "GxtTreePanel-> SUCCESS RPC getResource");
rootLogger.log(Level.SEVERE, "SUCCESS RPC getResource"); rootLogger.log(Level.SEVERE, "SUCCESS RPC getResource");
// print check // print check
for (int i = 0; i < result.size(); i++) { // for (int i = 0; i < result.size(); i++) {
//
// System.out.println(result.get(i).getName()); // rootLogger.log(Level.INFO, "Resource: "
// + result.get(i).getName());
// rootLogger.log(Level.INFO, "GxtTreePanel-> Resource: " + //
// result.get(i).getName()); // }
rootLogger.log(Level.INFO, "Resource: "
+ result.get(i).getName());
}
// int numChildrenFolder = store.getChildCount(element);
addChildren(element, result); addChildren(element, result);
element.setIsLoaded(true); element.setIsLoaded(true);
if (result.size() == 0) { if (result.size() == 0) {
@ -510,30 +411,20 @@ public class GxtTreePanel extends LayoutContainer {
if (tree.isMasked()) if (tree.isMasked())
tree.unmask(); tree.unmask();
} }
}); });
// System.out.println("End RPC - getResources");
// rootLogger.log(Level.SEVERE, "GxtTreePanel-> End RPC - getResource");
rootLogger.log(Level.SEVERE, "End RPC - getResource"); rootLogger.log(Level.SEVERE, "End RPC - getResource");
} }
// load information fo a database // load information for a database
private void loadDBInfo(final FileModel element, private void loadDBInfo(final FileModel element,
final TreePanel<FileModel> tree) { final TreePanel<FileModel> tree) {
// System.out.println("Start RPC - getDBInfo");
// rootLogger.log(Level.SEVERE, "GxtTreePanel-> Start RPC - getDBInfo");
rootLogger.log(Level.SEVERE, "Start RPC - getDBInfo"); rootLogger.log(Level.SEVERE, "Start RPC - getDBInfo");
// call remote service // call remote service
RPCservice.getDBInfo(element.getName(), RPCservice.getDBInfo(element.getName(),
new AsyncCallback<LinkedHashMap<String, FileModel>>() { new AsyncCallback<LinkedHashMap<String, FileModel>>() {
@ -543,9 +434,6 @@ public class GxtTreePanel extends LayoutContainer {
// Window.alert(caught.getMessage()); // Window.alert(caught.getMessage());
// System.out.println("FAILURE"); // System.out.println("FAILURE");
// rootLogger.log(Level.SEVERE,
// "GxtTreePanel-> FAILURE RPC getDBInfo");
rootLogger.log(Level.SEVERE, "FAILURE RPC getDBInfo"); rootLogger.log(Level.SEVERE, "FAILURE RPC getDBInfo");
MessageBox.alert("Error ", MessageBox.alert("Error ",
@ -562,26 +450,15 @@ public class GxtTreePanel extends LayoutContainer {
public void onSuccess( public void onSuccess(
LinkedHashMap<String, FileModel> result) { LinkedHashMap<String, FileModel> result) {
// System.out.println("SUCCESS");
// rootLogger.log(Level.SEVERE,
// "GxtTreePanel-> SUCCESS RPC getDBInfo");
rootLogger.log(Level.SEVERE, "SUCCESS RPC getDBInfo"); rootLogger.log(Level.SEVERE, "SUCCESS RPC getDBInfo");
if (result.size() != 0) { if (result.size() != 0) {
// recover keys from the result // recover keys from the result
Set<String> keys = result.keySet(); Set<String> keys = result.keySet();
Object[] array = keys.toArray(); Object[] array = keys.toArray();
// System.out.println("array size: " +
// array.length);
// recover information for each database // recover information for each database
List<FileModel> children = new ArrayList<FileModel>(); List<FileModel> children = new ArrayList<FileModel>();
int numIterations = (result.size()) / 5; int numIterations = (result.size()) / 5;
@ -602,7 +479,6 @@ public class GxtTreePanel extends LayoutContainer {
if (array[j].toString().contains( if (array[j].toString().contains(
"Database Name")) { "Database Name")) {
// recover the database name // recover the database name
DBName = result DBName = result
.get(array[j].toString()) .get(array[j].toString())
@ -613,7 +489,6 @@ public class GxtTreePanel extends LayoutContainer {
array[j].toString()) array[j].toString())
.getName()); .getName());
DBInfo.add(row); DBInfo.add(row);
} }
if (array[j].toString().contains("URL")) { if (array[j].toString().contains("URL")) {
@ -676,7 +551,6 @@ public class GxtTreePanel extends LayoutContainer {
// set that the item is a database // set that the item is a database
child.setIsDatabase(true); child.setIsDatabase(true);
child.setDBInfo(DBInfo); child.setDBInfo(DBInfo);
// check print // check print
@ -688,28 +562,14 @@ public class GxtTreePanel extends LayoutContainer {
child.setDatabaseType(DatabaseType); child.setDatabaseType(DatabaseType);
if (DatabaseType.equals(ConstantsPortlet.MYSQL)) { if (DatabaseType.equals(ConstantsPortlet.MYSQL)) {
child.setIsExpanded(false); child.setIsExpanded(false);
treePanel.setExpanded(child, false); treePanel.setExpanded(child, false);
} }
children.add(child); children.add(child);
} }
addChildren(element, children); addChildren(element, children);
} }
// System.out.println("children number: "
// + store.getChildCount(element));
// rootLogger.log(Level.INFO,
// "GxtTreePanel-> children number: " +
// store.getChildCount(element));
rootLogger.log( rootLogger.log(
Level.INFO, Level.INFO,
"children number: " "children number: "
@ -717,9 +577,6 @@ public class GxtTreePanel extends LayoutContainer {
element.setIsLoaded(true); element.setIsLoaded(true);
// // fire event
// eventBus.fireEvent(new DisplayDBInfoEvent());
if (result.size() == 0) { if (result.size() == 0) {
element.setIsExpanded(false); element.setIsExpanded(false);
treePanel.setExpanded(element, false); treePanel.setExpanded(element, false);
@ -728,44 +585,27 @@ public class GxtTreePanel extends LayoutContainer {
if (treePanel.isMasked()) if (treePanel.isMasked())
treePanel.unmask(); treePanel.unmask();
// tree.enable();
tree.enableEvents(true); tree.enableEvents(true);
} }
}); });
// System.out.println("End RPC - getDBInfo");
// rootLogger.log(Level.SEVERE, "GxtTreePanel-> End RPC - getDBInfo");
rootLogger.log(Level.SEVERE, "End RPC - getDBInfo"); rootLogger.log(Level.SEVERE, "End RPC - getDBInfo");
} }
// load schema // load schema
private void loadSchema(final FileModel element) { private void loadSchema(final FileModel element) {
// System.out.println("Start RPC - getSchema");
// rootLogger.log(Level.SEVERE,
// "GxtTreePanel-> Start RPC - getDBSchema");
rootLogger.log(Level.SEVERE, "Start RPC - getDBSchema"); rootLogger.log(Level.SEVERE, "Start RPC - getDBSchema");
// recover data inputs // recover data inputs for algorithm
LinkedHashMap<String, String> dataInput = new LinkedHashMap<String, String>(); LinkedHashMap<String, String> dataInput = new LinkedHashMap<String, String>();
// get information
FileModel parent = store.getParent(element); FileModel parent = store.getParent(element);
dataInput.put("ResourceName", parent.getName()); dataInput.put("ResourceName", parent.getName());
dataInput.put("DatabaseName", element.getName()); dataInput.put("DatabaseName", element.getName());
// call remote service // call remote service
RPCservice.getDBSchema(dataInput, new AsyncCallback<List<FileModel>>() { RPCservice.getDBSchema(dataInput, new AsyncCallback<List<FileModel>>() {
@Override @Override
@ -785,17 +625,11 @@ public class GxtTreePanel extends LayoutContainer {
treePanel.unmask(); treePanel.unmask();
treePanel.enableEvents(true); treePanel.enableEvents(true);
} }
@Override @Override
public void onSuccess(List<FileModel> result) { public void onSuccess(List<FileModel> result) {
// System.out.println("SUCCESS");
// rootLogger.log(Level.SEVERE,
// "GxtTreePanel-> SUCCESS RPC getDBSchema");
rootLogger.log(Level.SEVERE, "SUCCESS RPC getDBSchema"); rootLogger.log(Level.SEVERE, "SUCCESS RPC getDBSchema");
if (result.size() == 0) { // the database has not schema if (result.size() == 0) { // the database has not schema
@ -811,16 +645,6 @@ public class GxtTreePanel extends LayoutContainer {
} else { } else {
// // print check
// for (int i = 0; i < result.size(); i++) {
// System.out.println(result.get(i).getName());
//
// }
// int numChildrenFolder = store.getChildCount(element);
// if (numChildrenFolder == 0) {
for (int i = 0; i < result.size(); i++) { for (int i = 0; i < result.size(); i++) {
// element.setIsSchema(true); // element.setIsSchema(true);
@ -830,10 +654,7 @@ public class GxtTreePanel extends LayoutContainer {
} }
addChildren(element, result); addChildren(element, result);
// element.setIsLoaded(true); // element.setIsLoaded(true);
// }
} }
element.setIsLoaded(true); element.setIsLoaded(true);
@ -846,308 +667,19 @@ public class GxtTreePanel extends LayoutContainer {
} }
}); });
// System.out.println("End RPC - getSchema");
// rootLogger.log(Level.SEVERE, "GxtTreePanel-> End RPC - getDBSchema");
rootLogger.log(Level.SEVERE, "End RPC - getDBSchema"); rootLogger.log(Level.SEVERE, "End RPC - getDBSchema");
} }
private void loadTables(final FileModel element) { // add children to a File Model element
if (treePanel.isMasked())
treePanel.unmask();
// fire event to manage the tables loading
// eventBus.fireEvent(new LoadTablesEvent());
// System.out.println("Start RPC - getTables");
// rootLogger.log(Level.SEVERE, "GxtTreePanel-> Start RPC - getTables");
// rootLogger.log(Level.SEVERE, "Start RPC - getTables");
//
// // recover data inputs
//
// LinkedHashMap<String, String> dataInput = new LinkedHashMap<String,
// String>();
//
// // check if the element is a schema or a database
//
// // System.out.println("element is a schema: " + element.isSchema());
// //
// // if (element.isSchema()) {
// //
// // System.out.println("element is a schema: " + element.isSchema());
// //
// // FileModel database = store.getParent(element);
// // FileModel resource = store.getParent(database);
// //
// // dataInput.put("ResourceName", resource.getName());
// // dataInput.put("DatabaseName", database.getName());
// // dataInput.put("SchemaName", element.getName());
// //
// // System.out.println("schema name: " + element.getName());
// //
// // rootLogger.log(Level.INFO, "ResourceName: " + resource.getName());
// // rootLogger.log(Level.INFO, "DatabaseName: " + database.getName());
// // rootLogger.log(Level.INFO, "SchemaName: " + element.getName());
// //
// // // System.out.println(parent1.getName());
// // // System.out.println(parent.getName());
// // // System.out.println(element.getName());
// //
// // }
// //
// // if (element.isDatabase()) {
// //
// // System.out.println("element is a database: " +
// element.isDatabase());
// //
// // FileModel resource = store.getParent(element);
// // // FileModel parent1 = store.getParent(parent);
// //
// // dataInput.put("ResourceName", resource.getName());
// // dataInput.put("DatabaseName", element.getName());
// // dataInput.put("SchemaName", "");
// //
// // rootLogger.log(Level.INFO, "ResourceName: " + resource.getName());
// // rootLogger.log(Level.INFO, "DatabaseName: " + element.getName());
// // rootLogger.log(Level.INFO, "SchemaName: " + "");
// //
// // // System.out.println(parent1.getName());
// // // System.out.println(parent.getName());
// // // System.out.println(element.getName());
// //
// // }
//
// String resource = "";
// String database = "";
// String schema = "";
//
// if (element.isDatabase()) { // the selected item is a database
//
// rootLogger.log(Level.INFO, "element is a database ");
//
// database = element.getName();
// resource = store.getParent(element).getName();
//
// dataInput.put("ResourceName", resource);
// dataInput.put("DatabaseName", database);
// dataInput.put("SchemaName", "");
//
// } else { // the selected item is a schema
//
// rootLogger.log(Level.INFO, "element is a schema ");
//
// FileModel db = store.getParent(element);
// database = db.getName();
//
// resource = store.getParent(db).getName();
// schema = element.getName();
//
// dataInput.put("ResourceName", resource);
// dataInput.put("DatabaseName", database);
// dataInput.put("SchemaName", schema);
//
// // dataInput.put("ResourceName", resource.getName());
// // dataInput.put("DatabaseName", database.getName());
// // dataInput.put("SchemaName", element.getName());
//
// }
// FileModel database = store.getParent(element);
// FileModel resource = store.getParent(database);
//
// dataInput.put("ResourceName", resource.getName());
// dataInput.put("DatabaseName", database.getName());
// if (element.getDatabaseType().equals(ConstantsPortlet.POSTGRES)){
//
//
// }
// else{
// dataInput.put("SchemaName", "");
// }
// System.out.println("schema name: " + element.getName());
// rootLogger.log(Level.INFO, "ResourceName: " + resource.getName());
// rootLogger.log(Level.INFO, "DatabaseName: " + database.getName());
// rootLogger.log(Level.INFO, "SchemaName: " + element.getName());
// rootLogger.log(Level.INFO, "ResourceName: " + resource);
// rootLogger.log(Level.INFO, "DatabaseName: " + database);
// rootLogger.log(Level.INFO, "SchemaName: " + schema);
// System.out.println(parent1.getName());
// System.out.println(parent.getName());
// System.out.println(element.getName());
// // call remote service
//
// RPCservice.getTables(dataInput, new AsyncCallback<List<FileModel>>()
// {
//
// @Override
// public void onFailure(Throwable caught) {
// // Window.alert(caught.getMessage());
// // System.out.println("FAILURE");
// rootLogger.log(Level.SEVERE, "FAILURE RPC getTables");
//
// // no tables are available (the schema has not table)
// if (caught.getMessage().equals(
// "java.lang.Exception: Result not available")) {
//
// element.setIsExpanded(false);
//
// treePanel.setExpanded(element, false);
//
// element.setIsLoaded(true);
//
// if (treePanel.isMasked())
// treePanel.unmask();
//
// treePanel.enableEvents(true);
//
// }
//
// // MessageBox.alert("Error ","<br/>Message:"+caught.getMessage(),
// // null);
//
// }
//
// @Override
// public void onSuccess(List<FileModel> result) {
//
//
//
// // System.out.println("SUCCESS");
//
// rootLogger.log(Level.SEVERE, "SUCCESS RPC getTables");
//
// if (result.size() == 0) { // the database has not tables
//
// // System.out.println("the database has not tables");
//
// rootLogger.log(Level.SEVERE, "the database has not tables");
//
// // loadTables(element);
// // element.setIsExpanded(false);
// //
// // treePanel.setExpanded(element, false);
//
// } else {
//
// for (int i = 0; i < result.size(); i++) {
//
// result.get(i).setIsTable(true);
//
// // result.get(i).setIsExpanded(false);
//
// result.get(i).setIsLoaded(true);
//
// // result.get(i).setIsSchema(false);
//
// // element.setIsLoaded(true);
//
// // ppritn check
// // System.out.println(result.get(i).getName());
//
// // rootLogger.log(Level.INFO, "table: "
// // + result.get(i).getName());
//
// }
//
// // int numChildrenFolder = store.getChildCount(element);
//
// // if (numChildrenFolder == 0) {
//
//
// //addChildren(element, result);
//
// //
//
// // }
// }
//
// element.setIsLoaded(true);
//
// element.setIsExpanded(false);
// treePanel.setExpanded(element, false);
//
// if (treePanel.isMasked())
// treePanel.unmask();
//
// treePanel.enableEvents(true);
//
// //fire event
// eventBus.fireEvent(new LoadTablesEvent());
//
//
//
// }
// });
//
// //System.out.println("End RPC - getTables");
//
// rootLogger.log(Level.SEVERE, "End RPC getTables");
}
// public boolean getSelectedItemIsSchema() {
//
// return SelectedItemIsSchema;
// }
// public LinkedHashMap<String, FileModel> getDataOnDB() {
// return dataDBInfo;
// }
// public FileModel getSelectedItem(){
//
//
// return treePanel.getSelectionModel().getSelectedItem();
//
// }
private void addChildren(FileModel parent, List<FileModel> children) { private void addChildren(FileModel parent, List<FileModel> children) {
if (parent != null) { if (parent != null) {
store.add(parent, children, true); store.add(parent, children, true);
// System.out.println("Added children in store"); // System.out.println("Added children in store");
rootLogger.log(Level.INFO, "Added children in store"); rootLogger.log(Level.INFO, "Added children in store");
} }
} }
// public String getResourceNameSelected() {
//
// return ResourceNameSelected;
//
// }
//
// public String getDatabaseNameSelected() {
//
// return DatabaseNameSelected;
//
// }
// public String getSchemaNameSelected() {
//
// return SchemaNameSelected;
//
// }
//
// public String getTableNameSelected() {
//
// return TableNameSelected;
//
// }
// set information (useful for the submitquery operation) for the selected // set information (useful for the submitquery operation) for the selected
// item. The selected item can be a schema, a table and a database. // item. The selected item can be a schema, a table and a database.
private void setInfoOnSelectedItem(FileModel element) { private void setInfoOnSelectedItem(FileModel element) {
@ -1163,11 +695,8 @@ public class GxtTreePanel extends LayoutContainer {
rootLogger.log(Level.SEVERE, "setInfo for selected item schema"); rootLogger.log(Level.SEVERE, "setInfo for selected item schema");
// SelectedItemIsSchema = true;
// recover database name // recover database name
FileModel database = store.getParent(element); FileModel database = store.getParent(element);
String DatabaseName = database.getName(); String DatabaseName = database.getName();
// recover resource name // recover resource name
@ -1176,10 +705,6 @@ public class GxtTreePanel extends LayoutContainer {
element.setResourceName(ResourceName); element.setResourceName(ResourceName);
element.setDatabaseName(DatabaseName); element.setDatabaseName(DatabaseName);
// infoOnSelectedItem.put("ResourceName", ResourceNameSelected);
// infoOnSelectedItem.put("DatabaseName", DatabaseNameSelected);
} }
else if ((treeDepthSelectedItem == 4) && (element.isSchema() == false)) { // the else if ((treeDepthSelectedItem == 4) && (element.isSchema() == false)) { // the
@ -1197,12 +722,8 @@ public class GxtTreePanel extends LayoutContainer {
rootLogger.log(Level.SEVERE, "setInfo for selected item table"); rootLogger.log(Level.SEVERE, "setInfo for selected item table");
// recover table name
// TableNameSelected = element.getName();
// recover database name // recover database name
FileModel database = store.getParent(element); FileModel database = store.getParent(element);
String DatabaseName = database.getName(); String DatabaseName = database.getName();
// recover resource name // recover resource name
@ -1212,29 +733,17 @@ public class GxtTreePanel extends LayoutContainer {
element.setResourceName(ResourceName); element.setResourceName(ResourceName);
element.setDatabaseName(DatabaseName); element.setDatabaseName(DatabaseName);
// infoOnSelectedItem.put("ResourceName", ResourceNameSelected);
// infoOnSelectedItem.put("DatabaseName", DatabaseNameSelected);
// infoOnSelectedItem.put("SchemaName", "");
// infoOnSelectedItem.put("TableName", TableNameSelected);
} else if (treeDepthSelectedItem == 5) { // the selected item is a table } else if (treeDepthSelectedItem == 5) { // the selected item is a table
// so the database is // so the database is
// postgres type // postgres type
// System.out.println("is a table");
rootLogger.log(Level.SEVERE, "setInfo for selected item table"); rootLogger.log(Level.SEVERE, "setInfo for selected item table");
// recover table name
// TableNameSelected = element.getName();
// recover schema name // recover schema name
FileModel schema = store.getParent(element); FileModel schema = store.getParent(element);
// SchemaNameSelected = schema.getName();
// recover database name // recover database name
FileModel database = store.getParent(schema); FileModel database = store.getParent(schema);
String DatabaseName = database.getName(); String DatabaseName = database.getName();
// recover resource name // recover resource name
@ -1244,11 +753,6 @@ public class GxtTreePanel extends LayoutContainer {
element.setResourceName(ResourceName); element.setResourceName(ResourceName);
element.setDatabaseName(DatabaseName); element.setDatabaseName(DatabaseName);
// infoOnSelectedItem.put("ResourceName", ResourceNameSelected);
// infoOnSelectedItem.put("DatabaseName", DatabaseNameSelected);
// infoOnSelectedItem.put("SchemaName", SchemaNameSelected);
// infoOnSelectedItem.put("TableName", TableNameSelected);
} else if (treeDepthSelectedItem == 3) { // the selected item is a } else if (treeDepthSelectedItem == 3) { // the selected item is a
// database // database
@ -1263,23 +767,17 @@ public class GxtTreePanel extends LayoutContainer {
element.setResourceName(ResourceName); element.setResourceName(ResourceName);
element.setDatabaseName(DatabaseName); element.setDatabaseName(DatabaseName);
// infoOnSelectedItem.put("ResourceName", ResourceNameSelected);
// infoOnSelectedItem.put("DatabaseName", DatabaseNameSelected);
} }
} }
// // get information about the selected item // get the tree panel
// public LinkedHashMap<String, String> getInfoOnSelectedItem() {
//
// return infoOnSelectedItem;
// }
public TreePanel<FileModel> getTreePanel() { public TreePanel<FileModel> getTreePanel() {
return this.treePanel; return this.treePanel;
} }
// get the store
public TreeStore<FileModel> getTreeStore() { public TreeStore<FileModel> getTreeStore() {
return this.store; return this.store;
} }