001package csheets.ext.database.core; 002 003import csheets.core.Cell; 004import csheets.core.Spreadsheet; 005import csheets.ext.database.controller.ControllerImport; 006import csheets.ext.database.ui.UITableSelect; 007 008/** 009 * The thread responsible for the import of table information from a database 010 * @author João Carreira 011 */ 012public class ThreadImportTables implements Runnable 013{ 014 private String url, user, pass, dbName; 015 private ControllerImport ctrlImp; 016 private Spreadsheet spreadSheet; 017 018 /** 019 * construtor 020 * @param url path to the database 021 * @param user username 022 * @param pass password 023 * @param tableName table in the database 024 * @param dbName database name 025 * @param ctrlImp ControllerImport object 026 * @param Spreadsheet current spreadsheet 027 */ 028 public ThreadImportTables(String url, String user, String pass, String dbName, ControllerImport ctrlImp, Spreadsheet spreadSheet) 029 { 030 this.url = url; 031 this.user = user; 032 this.pass = pass; 033 this.dbName = dbName; 034 this.ctrlImp = ctrlImp; 035 this.spreadSheet = spreadSheet; 036 } 037 038 @Override 039 public void run() 040 { 041 try 042 { 043 /* connects with database */ 044 ctrlImp.connect(url, user, pass, dbName); 045 /* launches the select table window */ 046 UITableSelect ts = new UITableSelect(spreadSheet, dbName, ctrlImp); 047 } 048 catch(Exception e) 049 { 050 e.printStackTrace(); 051 } 052 } 053 054 /** 055 * gets the controller import 056 * @return ControllerImport object 057 */ 058 public ControllerImport getControllerImport() 059 { 060 return ctrlImp; 061 } 062}