1) Added missing strings for italic, underline and strike through.
[phpeclipse.git] / archive / net.sourceforge.phpeclipse.sql / src / net / sourceforge / phpdt / sql / view / tableview / TableAdapter.java
index 4752c37..3a513ca 100644 (file)
@@ -2,43 +2,42 @@ package net.sourceforge.phpdt.sql.view.tableview;
 
 import java.util.Vector;
 
-import net.sourceforge.phpdt.sql.IConstants;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.swt.widgets.TableColumn;
+import org.eclipse.swt.widgets.TableItem;
+
+import net.sourceforge.phpdt.sql.Messages;
 import net.sourceforge.phpdt.sql.adapters.AdapterFactory;
 import net.sourceforge.phpdt.sql.adapters.DatabaseAdapter;
 import net.sourceforge.phpdt.sql.adapters.DatabaseInfo;
-import net.sourceforge.phpdt.sql.adapters.NoSuchAdapterException;
-import net.sourceforge.phpdt.sql.bookmarks.Bookmark;
 import net.sourceforge.phpdt.sql.sql.FilterSort;
-import net.sourceforge.phpdt.sql.sql.MultiSQLServer;
 import net.sourceforge.phpdt.sql.sql.SQLHelper;
 import net.sourceforge.phpdt.sql.sql.SQLResults;
+import net.sourceforge.phpdt.sql.view.bookmark.BookmarkNode;
 
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-
-public class TableAdapter implements IConstants {
-       public static final String DEFAULT = "";
-       public static final String UTF_8 = "UTF-8";
-       public static final String UTF_16 = "UTF-16";
+public class TableAdapter {
+       public static final String DEFAULT = ""; //$NON-NLS-1$
+       public static final String UTF_8 = "UTF-8"; //$NON-NLS-1$
+       public static final String UTF_16 = "UTF-16"; //$NON-NLS-1$
        
        private int pageSize = DefaultSizes.PAGE_SIZE;
        private int maxColumnSize = DefaultSizes.MAX_COLUMN_SIZE;
-       private SQLHelper helper = new SQLHelper();
        private FilterSort extra = new FilterSort();
        private int offset = 1;
        private int totalSize = -1;
        private Vector rows = new Vector();
        private Vector columnNames = new Vector();
        private boolean hasMore = false;
-               
+       
+       private BookmarkNode bookmark = null;   
        private String table;
        private String query;
        
-       private String encoding = "";
+       private String encoding = ""; //$NON-NLS-1$
        
-       private TableAdapter() {
+       private TableAdapter(BookmarkNode bookmark) {
+               this.bookmark = bookmark;
        }
        public void fullMode() {
                offset = 1;
@@ -48,20 +47,20 @@ public class TableAdapter implements IConstants {
                offset = 1;
                pageSize = DefaultSizes.PAGE_SIZE;
        }
-       public static TableAdapter createFromQuery(SQLResults results) {
-               TableAdapter retVal = new TableAdapter();
+       public static TableAdapter createFromQuery(BookmarkNode bookmark, SQLResults results) {
+               TableAdapter retVal = new TableAdapter(bookmark);
                retVal.setQuery(results.getQuery());
                retVal.setData(results);
                return retVal;
        }
-       public static TableAdapter createFromTable(String table) {
-               TableAdapter retVal = new TableAdapter();
+       public static TableAdapter createFromTable(BookmarkNode bookmark, String table) {
+               TableAdapter retVal = new TableAdapter(bookmark);
                retVal.setTable(table);
                return retVal;
        }
        private void loadSize() {
                if (table != null) {
-                       totalSize = helper.getSize(getTableCountQuery());
+                       totalSize = SQLHelper.getSize(bookmark, getTableCountQuery());
                }
        }
        public int getStartIndex() {
@@ -105,22 +104,16 @@ public class TableAdapter implements IConstants {
                return false;
        }
        public String getTableCountQuery() {
-               if (table != null) {
-                       Bookmark current = MultiSQLServer.getInstance().getConnected();
-                       return SQLHelper.getFullTableName(current, table);
+               if (table != null && bookmark != null) {
+                       return SQLHelper.getFullTableName(bookmark, table);
                }
                return query;
        }
        public String getQuery() {
                if (table != null) {
-                       MultiSQLServer server = MultiSQLServer.getInstance();
-                       Bookmark current = server.getConnected();
-                       try {
-                               DatabaseAdapter adapter = AdapterFactory.getInstance().getAdapter(current.getType());
-                               return adapter.getShowTableQuery(DatabaseInfo.create(current), table) + extra.toString();
-                       } catch (NoSuchAdapterException e) {
-                               throw new RuntimeException(e.toString());
-                       }
+                       DatabaseAdapter adapter = AdapterFactory.getInstance().getAdapter(bookmark.getType());
+                       if (adapter == null) throw new RuntimeException();
+                       else return adapter.getShowTableQuery(DatabaseInfo.create(bookmark), table) + extra.toString();
                }
                return query;
        }
@@ -132,10 +125,8 @@ public class TableAdapter implements IConstants {
                        }
                }
                String query = getQuery();
-    if (DEBUG) {
-               System.out.println(offset + " to " + (offset + pageSize - 1));
-    }
-               SQLResults results = helper.getResults(query, offset, offset + pageSize - 1, maxColumnSize, encoding);
+               System.out.println(offset + Messages.getString("TableAdapter.to") + (offset + pageSize - 1)); //$NON-NLS-1$
+               SQLResults results = SQLHelper.getResults(bookmark, query, offset, offset + pageSize - 1, maxColumnSize, encoding);
                setData(results);
        }
        public void resetOffset() {
@@ -208,18 +199,25 @@ public class TableAdapter implements IConstants {
                this.encoding = encoding;
        }
        public String getStatusString() {
-               String status = getStartIndex() + " to " + getEndIndex() + " of " +
+               String status = getStartIndex() + Messages.getString("TableAdapter.to") + getEndIndex() + Messages.getString("TableAdapter.of") + //$NON-NLS-1$ //$NON-NLS-2$
                                getTotalSize();
                if (!encoding.equals(DEFAULT)) {
-                       status += " (" + encoding + ")";
+                       status += " (" + encoding + ")"; //$NON-NLS-1$ //$NON-NLS-2$
                }
                String filterText = extra.toString();
-               if (!filterText.equals("")) {
-                       status += " (" + filterText + ")";
+               if (!filterText.equals("")) { //$NON-NLS-1$
+                       status += " (" + filterText + ")"; //$NON-NLS-1$ //$NON-NLS-2$
                }
                if (pageSize == Integer.MAX_VALUE) {
-                       status += " (FULL)";
+                       status += Messages.getString("TableAdapter.full"); //$NON-NLS-1$
                }
                return status;
        }
+       /**
+        * @return
+        */
+       public BookmarkNode getBookmark() {
+               return bookmark;
+       }
+
 }
\ No newline at end of file