[Squirrel-sql-commits] SF.net SVN: squirrel-sql:[5822] trunk/sql12/plugins
A Java SQL client for any JDBC compliant database
Brought to you by:
colbell,
gerdwagner
From: <man...@us...> - 2010-08-21 17:58:34
|
Revision: 5822 http://squirrel-sql.svn.sourceforge.net/squirrel-sql/?rev=5822&view=rev Author: manningr Date: 2010-08-21 17:58:25 +0000 (Sat, 21 Aug 2010) Log Message: ----------- Initial changes to convert from Ant build to Maven build Added Paths: ----------- trunk/sql12/plugins/SybaseASE/ trunk/sql12/plugins/SybaseASE/src/ trunk/sql12/plugins/SybaseASE/src/test/ trunk/sql12/plugins/SybaseASE/src/test/java/ trunk/sql12/plugins/SybaseASE/src/test/java/net/ trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/ trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/ trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/ trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/ trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/SybaseASEPluginTest.java trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/exp/ trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/exp/SybaseTableIndexExtractorImplTest.java trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/exp/SybaseTableTriggerExtractorImplTest.java trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/prefs/ trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/prefs/SybasePreferenceBeanTest.java trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/tab/ trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/tab/TriggerSourceTabTest.java trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/tab/ViewSourceTabTest.java trunk/sql12/plugins/dbdiff/pom.xml trunk/sql12/plugins/dbdiff/src/main/ trunk/sql12/plugins/dbdiff/src/main/java/ trunk/sql12/plugins/dbdiff/src/main/java/net/ trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/ trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/ trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/ trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/ trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/ColumnDifference.java trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPlugin.java trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPluginResources.java trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPluginSessionCallback.java trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DiffExecutor.java trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/SessionInfoProvider.java trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/TableDiffExecutor.java trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/actions/ trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/actions/CompareAction.java trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/actions/SelectAction.java trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/commands/ trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/commands/CompareCommand.java trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/commands/SelectCommand.java trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/gui/ trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/gui/ColumnDiffDialog.java trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/util/ trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/util/AbstractDifference.java trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/util/DBUtil.java trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/util/TableColumnDifference.java trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/util/TableDifference.java trunk/sql12/plugins/dbdiff/src/main/resources/ trunk/sql12/plugins/dbdiff/src/main/resources/doc/ trunk/sql12/plugins/dbdiff/src/main/resources/net/ trunk/sql12/plugins/dbdiff/src/main/resources/net/sourceforge/ trunk/sql12/plugins/dbdiff/src/main/resources/net/sourceforge/squirrel_sql/ trunk/sql12/plugins/dbdiff/src/main/resources/net/sourceforge/squirrel_sql/plugins/ trunk/sql12/plugins/dbdiff/src/main/resources/net/sourceforge/squirrel_sql/plugins/dbdiff/ trunk/sql12/plugins/dbdiff/src/main/resources/net/sourceforge/squirrel_sql/plugins/dbdiff/I18NStrings.properties trunk/sql12/plugins/dbdiff/src/main/resources/net/sourceforge/squirrel_sql/plugins/dbdiff/actions/ trunk/sql12/plugins/dbdiff/src/main/resources/net/sourceforge/squirrel_sql/plugins/dbdiff/actions/I18NStrings.properties trunk/sql12/plugins/dbdiff/src/main/resources/net/sourceforge/squirrel_sql/plugins/dbdiff/dbdiff.properties trunk/sql12/plugins/dbdiff/src/main/resources/net/sourceforge/squirrel_sql/plugins/dbdiff/gui/ trunk/sql12/plugins/dbdiff/src/main/resources/net/sourceforge/squirrel_sql/plugins/dbdiff/gui/I18NStrings.properties trunk/sql12/plugins/dbdiff/src/main/resources/net/sourceforge/squirrel_sql/plugins/dbdiff/util/ trunk/sql12/plugins/dbdiff/src/main/resources/net/sourceforge/squirrel_sql/plugins/dbdiff/util/I18NStrings.properties trunk/sql12/plugins/dbdiff/src/test/ trunk/sql12/plugins/dbdiff/src/test/java/ trunk/sql12/plugins/dbdiff/src/test/java/net/ trunk/sql12/plugins/dbdiff/src/test/java/net/sourceforge/ trunk/sql12/plugins/dbdiff/src/test/java/net/sourceforge/squirrel_sql/ trunk/sql12/plugins/dbdiff/src/test/java/net/sourceforge/squirrel_sql/plugins/ trunk/sql12/plugins/dbdiff/src/test/java/net/sourceforge/squirrel_sql/plugins/dbdiff/ trunk/sql12/plugins/dbdiff/src/test/java/net/sourceforge/squirrel_sql/plugins/dbdiff/ColumnDifferenceTest.java trunk/sql12/plugins/dbdiff/src/test/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPluginResourcesTest.java trunk/sql12/plugins/dbdiff/src/test/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPluginTest.java trunk/sql12/plugins/dbdiff/src/test/java/net/sourceforge/squirrel_sql/plugins/dbdiff/util/ trunk/sql12/plugins/dbdiff/src/test/java/net/sourceforge/squirrel_sql/plugins/dbdiff/util/AbstractDifferenceTest.java trunk/sql12/plugins/userscript/pom.xml trunk/sql12/plugins/userscript/src/main/ trunk/sql12/plugins/userscript/src/main/java/ trunk/sql12/plugins/userscript/src/main/java/net/ trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/ trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/ trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/ trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/ trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/FrameWorkAcessor.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/UserScriptAction.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/UserScriptPlugin.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/UserScriptSQLAction.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/ trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/ClassPathEntry.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/GenerateTemplateController.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/GenerateTemplateDialog.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/GenericScriptPopupAction.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/Script.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/ScriptEnvironment.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/ScriptListController.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/ScriptListDialog.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/ScriptListTableModel.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/ScriptPropertiesController.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/ScriptPropertiesDialog.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/ScriptProps.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/ScriptPropsAdapter.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/ScriptPropsListener.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/ScriptTarget.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/ScriptTargetCollection.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/TemplateCode.java trunk/sql12/plugins/userscript/src/main/java/net/sourceforge/squirrel_sql/plugins/userscript/kernel/UserScriptAdmin.java trunk/sql12/plugins/userscript/src/main/resources/ trunk/sql12/plugins/userscript/src/main/resources/doc/ trunk/sql12/plugins/userscript/src/main/resources/net/ trunk/sql12/plugins/userscript/src/main/resources/net/sourceforge/ trunk/sql12/plugins/userscript/src/main/resources/net/sourceforge/squirrel_sql/ trunk/sql12/plugins/userscript/src/main/resources/net/sourceforge/squirrel_sql/plugins/ trunk/sql12/plugins/userscript/src/main/resources/net/sourceforge/squirrel_sql/plugins/userscript/ trunk/sql12/plugins/userscript/src/main/resources/net/sourceforge/squirrel_sql/plugins/userscript/kernel/ trunk/sql12/plugins/userscript/src/main/resources/net/sourceforge/squirrel_sql/plugins/userscript/kernel/I18NStrings.properties trunk/sql12/plugins/userscript/src/main/resources/net/sourceforge/squirrel_sql/plugins/userscript/userscript.properties Removed Paths: ------------- trunk/sql12/plugins/dbdiff/doc/ trunk/sql12/plugins/dbdiff/plugin_build.xml trunk/sql12/plugins/dbdiff/src/net/ trunk/sql12/plugins/userscript/doc/ trunk/sql12/plugins/userscript/plugin_build.xml trunk/sql12/plugins/userscript/src/net/ Property Changed: ---------------- trunk/sql12/plugins/dbdiff/ trunk/sql12/plugins/userscript/ Copied: trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/SybaseASEPluginTest.java (from rev 5805, trunk/sql12/test/src/net/sourceforge/squirrel_sql/plugins/SybaseASE/SybaseASEPluginTest.java) =================================================================== --- trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/SybaseASEPluginTest.java (rev 0) +++ trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/SybaseASEPluginTest.java 2010-08-21 17:58:25 UTC (rev 5822) @@ -0,0 +1,53 @@ +/* + * Copyright (C) 2008 Rob Manning + * man...@us... + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +package net.sourceforge.squirrel_sql.plugins.SybaseASE; + +import net.sourceforge.squirrel_sql.client.plugin.AbstractSessionPluginTest; + +import org.junit.After; +import org.junit.Before; + + +public class SybaseASEPluginTest extends AbstractSessionPluginTest +{ + @Before + public void setUp() throws Exception + { + classUnderTest = new SybaseASEPlugin(); + } + + @After + public void tearDown() throws Exception + { + classUnderTest = null; + } + + @Override + protected String getDatabaseProductName() + { + return "sybase"; + } + + @Override + protected String getDatabaseProductVersion() + { + return null; + } + +} Copied: trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/exp/SybaseTableIndexExtractorImplTest.java (from rev 5805, trunk/sql12/test/src/net/sourceforge/squirrel_sql/plugins/SybaseASE/exp/SybaseTableIndexExtractorImplTest.java) =================================================================== --- trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/exp/SybaseTableIndexExtractorImplTest.java (rev 0) +++ trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/exp/SybaseTableIndexExtractorImplTest.java 2010-08-21 17:58:25 UTC (rev 5822) @@ -0,0 +1,35 @@ +/* + * Copyright (C) 2008 Rob Manning + * man...@us... + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +package net.sourceforge.squirrel_sql.plugins.SybaseASE.exp; + + +import net.sourceforge.squirrel_sql.client.session.mainpanel.objecttree.expanders.AbstractTableIndexExtractorTest; + +import org.junit.Before; + +public class SybaseTableIndexExtractorImplTest extends AbstractTableIndexExtractorTest +{ + + @Before + public void setUp() throws Exception + { + classUnderTest = new SybaseTableIndexExtractorImpl(); + } + +} Copied: trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/exp/SybaseTableTriggerExtractorImplTest.java (from rev 5805, trunk/sql12/test/src/net/sourceforge/squirrel_sql/plugins/SybaseASE/exp/SybaseTableTriggerExtractorImplTest.java) =================================================================== --- trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/exp/SybaseTableTriggerExtractorImplTest.java (rev 0) +++ trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/exp/SybaseTableTriggerExtractorImplTest.java 2010-08-21 17:58:25 UTC (rev 5822) @@ -0,0 +1,35 @@ +/* + * Copyright (C) 2008 Rob Manning + * man...@us... + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +package net.sourceforge.squirrel_sql.plugins.SybaseASE.exp; + + +import net.sourceforge.squirrel_sql.client.session.mainpanel.objecttree.expanders.AbstractTableTriggerExtractorTest; + +import org.junit.Before; + +public class SybaseTableTriggerExtractorImplTest extends AbstractTableTriggerExtractorTest +{ + + @Before + public void setUp() throws Exception + { + classUnderTest = new SybaseTableTriggerExtractorImpl(); + } + +} Copied: trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/prefs/SybasePreferenceBeanTest.java (from rev 5805, trunk/sql12/test/src/net/sourceforge/squirrel_sql/plugins/SybaseASE/prefs/SybasePreferenceBeanTest.java) =================================================================== --- trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/prefs/SybasePreferenceBeanTest.java (rev 0) +++ trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/prefs/SybasePreferenceBeanTest.java 2010-08-21 17:58:25 UTC (rev 5822) @@ -0,0 +1,84 @@ +package net.sourceforge.squirrel_sql.plugins.SybaseASE.prefs; + +/* + * Copyright (C) 2008 Rob Manning + * man...@us... + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +import net.sourceforge.squirrel_sql.BaseSQuirreLJUnit4TestCase; + +import static org.junit.Assert.assertEquals; + +import org.junit.Test; + +/** + * Test class for SybasePreferenceBean + */ +public class SybasePreferenceBeanTest extends BaseSQuirreLJUnit4TestCase { + + SybasePreferenceBean classUnderTest = new SybasePreferenceBean(); + + @Test + public void testGetClientName() throws Exception + { + classUnderTest.setClientName("aTestString"); + assertEquals("aTestString", classUnderTest.getClientName()); + } + + @Test + public void testGetClientVersion() throws Exception + { + classUnderTest.setClientVersion("aTestString"); + assertEquals("aTestString", classUnderTest.getClientVersion()); + } + + @Test + public void testGetStatementSeparator() throws Exception + { + classUnderTest.setStatementSeparator("aTestString"); + assertEquals("aTestString", classUnderTest.getStatementSeparator()); + } + + @Test + public void testGetLineComment() throws Exception + { + classUnderTest.setLineComment("aTestString"); + assertEquals("aTestString", classUnderTest.getLineComment()); + } + + @Test + public void testIsRemoveMultiLineComments() throws Exception + { + classUnderTest.setRemoveMultiLineComments(true); + assertEquals(true, classUnderTest.isRemoveMultiLineComments()); + } + + @Test + public void testIsInstallCustomQueryTokenizer() throws Exception + { + classUnderTest.setInstallCustomQueryTokenizer(true); + assertEquals(true, classUnderTest.isInstallCustomQueryTokenizer()); + } + + @Test + public void testGetProcedureSeparator() throws Exception + { + classUnderTest.setProcedureSeparator("aTestString"); + assertEquals("aTestString", classUnderTest.getProcedureSeparator()); + } + +} Copied: trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/tab/TriggerSourceTabTest.java (from rev 5805, trunk/sql12/test/src/net/sourceforge/squirrel_sql/plugins/SybaseASE/tab/TriggerSourceTabTest.java) =================================================================== --- trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/tab/TriggerSourceTabTest.java (rev 0) +++ trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/tab/TriggerSourceTabTest.java 2010-08-21 17:58:25 UTC (rev 5822) @@ -0,0 +1,33 @@ +/* + * Copyright (C) 2008 Rob Manning + * man...@us... + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +package net.sourceforge.squirrel_sql.plugins.SybaseASE.tab; + + +import net.sourceforge.squirrel_sql.client.session.mainpanel.objecttree.tabs.AbstractSourceTabTest; + +import org.junit.Before; + +public class TriggerSourceTabTest extends AbstractSourceTabTest { + + @Before + public void setUp() throws Exception { + classUnderTest = new TriggerSourceTab(HINT, STMT_SEP); + } + +} Copied: trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/tab/ViewSourceTabTest.java (from rev 5805, trunk/sql12/test/src/net/sourceforge/squirrel_sql/plugins/SybaseASE/tab/ViewSourceTabTest.java) =================================================================== --- trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/tab/ViewSourceTabTest.java (rev 0) +++ trunk/sql12/plugins/SybaseASE/src/test/java/net/sourceforge/squirrel_sql/plugins/SybaseASE/tab/ViewSourceTabTest.java 2010-08-21 17:58:25 UTC (rev 5822) @@ -0,0 +1,33 @@ +/* + * Copyright (C) 2008 Rob Manning + * man...@us... + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +package net.sourceforge.squirrel_sql.plugins.SybaseASE.tab; + + +import net.sourceforge.squirrel_sql.client.session.mainpanel.objecttree.tabs.AbstractSourceTabTest; + +import org.junit.Before; + +public class ViewSourceTabTest extends AbstractSourceTabTest { + + @Before + public void setUp() throws Exception { + classUnderTest = new ViewSourceTab(HINT, STMT_SEP); + } + +} Property changes on: trunk/sql12/plugins/dbdiff ___________________________________________________________________ Added: svn:ignore + target .settings .project .classpath Deleted: trunk/sql12/plugins/dbdiff/plugin_build.xml =================================================================== --- trunk/sql12/plugins/dbdiff/plugin_build.xml 2010-08-21 17:57:33 UTC (rev 5821) +++ trunk/sql12/plugins/dbdiff/plugin_build.xml 2010-08-21 17:58:25 UTC (rev 5822) @@ -1,95 +0,0 @@ -<?xml version="1.0"?> -<!-- - This is an Apache Ant build file to build the DB Copy plugin - for distribution. ---> -<project name="plugin-dbdiff" default="build" basedir="."> - <target name="init"> - <tstamp/> - <property name="internal_name" value="dbdiff"/> - <property name="version" value="0.10"/> - - <property name="debug" value="on"/> - <property name="optimize" value="off"/> - <property name="deprecation" value="on"/> - <property name="targetVM" value="1.6"/> - - <echo message="---------------- ${internal_name} ${version} ----------------"/> - - <property environment="env"/> - </target> - <target name="initdirs" unless="p_plugin.work_dir"> - <property name="dist_dir" value="../../../squirrel-sql-dist/squirrel-sql"/> - <property name="plugins_dist_dir" value="${dist_dir}/plugins"/> - <property name="p_plugin.work_dir" value="${plugins_dist_dir}/${internal_name}/work"/> - <property name="p_plugin.core_libs_dir" value="${dist_dir}/core/dist/lib"/> - <property name="p_plugin.dist_dir" value="${plugins_dist_dir}/${internal_name}/dist"/> - </target> - - <!-- - ================================================================== - Compile the plugin. - No parameters. - ================================================================== - --> - <target name="build" depends="init, initdirs"> - <uptodate property="build.notRequired" - targetfile="${p_plugin.dist_dir}/${internal_name}.jar" > - <srcfiles dir= "src"/> - </uptodate> - <antcall target="buildinternal"/> - </target> - - <target name="buildinternal" depends="init, initdirs" unless="build.notRequired"> - <property name="obj_dir" value="${p_plugin.work_dir}/obj"/> - - <mkdir dir="${obj_dir}"/> - <mkdir dir="${p_plugin.dist_dir}"/> - - <javac srcdir="src" - destdir="${obj_dir}" - deprecation="${deprecation}" - debug="${debug}" - optimize="${optimize}" - includeJavaRuntime="yes" - source="${targetVM}" - target="${targetVM}"> - - <classpath> - <fileset dir="${p_plugin.core_libs_dir}"> - <include name="**/*.*"/> - </fileset> - </classpath> - </javac> - <copy todir="${obj_dir}" > - <fileset dir="src" > - <include name="**/*.gif"/> - <include name="**/*.jpg"/> - <include name="**/*.jpeg"/> - <include name="**/*.xml"/> - <include name="**/*.properties"/> - </fileset> - </copy> - - <jar jarfile="${p_plugin.dist_dir}/${internal_name}.jar" compress="false"> - <fileset dir="${obj_dir}"> - <include name="**/*.*"/> - </fileset> - </jar> - - <copy todir="${p_plugin.dist_dir}/${internal_name}" > - <fileset dir="doc" > - <include name="**/*.*"/> - </fileset> - </copy> - - <jar jarfile="${p_plugin.dist_dir}/${internal_name}/src.jar" compress="false"> - <fileset dir="."> - <include name="src/**/*.*"/> - <include name="plugin_build.xml"/> - </fileset> - </jar> - </target> - -</project> - Added: trunk/sql12/plugins/dbdiff/pom.xml =================================================================== --- trunk/sql12/plugins/dbdiff/pom.xml (rev 0) +++ trunk/sql12/plugins/dbdiff/pom.xml 2010-08-21 17:58:25 UTC (rev 5822) @@ -0,0 +1,135 @@ +<project + xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>net.sf.squirrel-sql.plugins</groupId> + <artifactId>squirrelsql-plugins-parent-pom</artifactId> + <version>3.2.0-SNAPSHOT</version> + </parent> + <groupId>net.sf.squirrel-sql.plugins</groupId> + <artifactId>dbdiff</artifactId> + <version>3.2.0-SNAPSHOT</version> + <packaging>jar</packaging> + <name>Dbdiff Plugin</name> + <description>Dbdiff Plugin</description> + <inceptionYear>2001</inceptionYear> + <developers> + <developer> + <name>Gerd Wagner</name> + <roles> + <role>Administrator</role> + <role>Developer</role> + </roles> + </developer> + <developer> + <name>Rob Manning</name> + <roles> + <role>Developer</role> + <role>Release Manager</role> + </roles> + </developer> + </developers> + <licenses> + <license> + <name>GNU Lesser General Public License</name> + <url>http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + <url>http://www.squirrelsql.org/</url> + <scm> + <connection>scm:svn:https://squirrel-sql.svn.sourceforge.net/svnroot/squirrel-sql/trunk/sql12/</connection> + <developerConnection>scm:svn:http://squirrel-sql.svn.sourceforge.net/viewvc/squirrel-sql/trunk/sql12/</developerConnection> + <url>http://squirrel-sql.svn.sourceforge.net/viewvc/squirrel-sql/trunk/sql12/</url> + </scm> + <issueManagement> + <system>SourceForge Tracker</system> + <url>http://sourceforge.net/tracker/?group_id=28383%26atid=393414</url> + </issueManagement> + <ciManagement> + <system>Hudson</system> + <url>https://www.squirrel-sql.org/hudson/</url> + </ciManagement> + <dependencies> + <dependency> + <groupId>net.sf.squirrel-sql</groupId> + <artifactId>fw</artifactId> + <version>3.2.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>net.sf.squirrel-sql</groupId> + <artifactId>squirrel-sql</artifactId> + <version>3.2.0-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>net.sf.squirrel-sql</groupId> + <artifactId>squirrel-sql</artifactId> + <version>3.2.0-SNAPSHOT</version> + <type>test-jar</type> + <scope>test</scope> + </dependency> + <dependency> + <groupId>net.sf.squirrel-sql</groupId> + <artifactId>squirrelsql-test-utils</artifactId> + <version>3.2.0-SNAPSHOT</version> + <type>pom</type> + <scope>test</scope> + </dependency> + + </dependencies> + <build> + <plugins> + <plugin> + <artifactId>maven-source-plugin</artifactId> + <version>${source-plugin-version}</version> + </plugin> + <plugin> + <artifactId>maven-surefire-plugin</artifactId> + <version>${surefire-plugin-version}</version> + <configuration> + <parallel>${surefire-parallel-type}</parallel> + <threadCount>${surefire-thread-count}</threadCount> + </configuration> + </plugin> + <plugin> + <artifactId>maven-jar-plugin</artifactId> + <version>${jar-plugin-version}</version> + </plugin> + <plugin> + <artifactId>maven-assembly-plugin</artifactId> + <version>${assembly-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>findbugs-maven-plugin</artifactId> + <version>${findbugs-plugin-version}</version> + </plugin> + <plugin> + <artifactId>maven-pmd-plugin</artifactId> + <version>${pmd-plugin-version}</version> + </plugin> + <plugin> + <artifactId>maven-checkstyle-plugin</artifactId> + <version>${checkstyle-plugin-version}</version> + </plugin> + </plugins> + </build> + <profiles> + <!-- + Since generating javadoc can be time-consuming, this is not done unless a "javadoc" profile is activated. + --> + <profile> + <id>javadoc</id> + <build> + <plugins> + <plugin> + <artifactId>maven-javadoc-plugin</artifactId> + <version>${javadoc-plugin-version}</version> + </plugin> + </plugins> + </build> + </profile> + </profiles> +</project> \ No newline at end of file Copied: trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/ColumnDifference.java (from rev 5805, trunk/sql12/plugins/dbdiff/src/net/sourceforge/squirrel_sql/plugins/dbdiff/ColumnDifference.java) =================================================================== --- trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/ColumnDifference.java (rev 0) +++ trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/ColumnDifference.java 2010-08-21 17:58:25 UTC (rev 5822) @@ -0,0 +1,278 @@ +package net.sourceforge.squirrel_sql.plugins.dbdiff; +/* + * Copyright (C) 2007 Rob Manning + * man...@us... + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +import net.sourceforge.squirrel_sql.fw.sql.TableColumnInfo; + + +/** + * This class is responsible for identifying and storing differences between + * columns in a table. + * + * @author manningr + */ +public class ColumnDifference { + + private String tableName = ""; + private String columnName = ""; + + private int col1Type = -1; + private int col2Type = -1; + + private int col1Length = 0; + private int col2Length = 0; + + private boolean col1IsNullable = false; + private boolean col2IsNullable = false; + + private boolean col1Exists = true; + private boolean col2Exists = true; + + private String col1remarks = ""; + private String col2remarks = ""; + + private String col1default = ""; + private String col2default = ""; + + public ColumnDifference() {} + + public void setColumns(TableColumnInfo c1, TableColumnInfo c2) { + if (c1 == null || c2 == null) { + throw new IllegalArgumentException("c1, c2 cannot be null"); + } + if (!c1.getTableName().equals(c2.getTableName())) { + throw new IllegalArgumentException( + "Columns to be compared must be from the same table"); + } + if (!c1.getColumnName().equals(c2.getColumnName())) { + throw new IllegalArgumentException( + "Columns to be compared must have the same column name"); + } + setColumn1(c1); + setColumn2(c2); + } + + public void setColumn1(TableColumnInfo c1) { + col1Type = c1.getDataType(); + col1Length = c1.getColumnSize(); + col1IsNullable = c1.isNullable().equalsIgnoreCase("NO") ? false : true; + tableName = c1.getTableName(); + columnName = c1.getColumnName(); + col1remarks = c1.getRemarks(); + col1default = c1.getDefaultValue(); + } + + public void setColumn2(TableColumnInfo c2) { + col2Type = c2.getDataType(); + col2Length = c2.getColumnSize(); + col2IsNullable = c2.isNullable().equalsIgnoreCase("NO") ? false : true; + tableName = c2.getTableName(); + columnName = c2.getColumnName(); + col2remarks = c2.getRemarks(); + col2default = c2.getDefaultValue(); + } + + public int getCol1Type() { + return col1Type; + } + + public int getCol1Length() { + return col1Length; + } + + public boolean col1AllowsNull() { + return col1IsNullable; + } + + public int getCol2Type() { + return col2Type; + } + + public int getCol2Length() { + return col2Length; + } + + public boolean col2AllowsNull() { + return col2IsNullable; + } + + public String getCol1Remarks() { + return col1remarks; + } + + public String getCol2Remarks() { + return col2remarks; + } + + public String getCol1Default() { + return col1default; + } + + public String getCol2Default() { + return col2default; + } + + /** + * Returns a boolean indicating whether or not the two columns are different + * in any aspect. + * + * @return + */ + public boolean execute() { + if (!col1Exists || !col2Exists) { + return true; + } + if (col1Type != col2Type) { + return true; + } + if (col1Length != col2Length) { + return true; + } + if (col1IsNullable != col2IsNullable) { + return true; + } + if (!remarksEqual()) { + return true; + } + return false; + } + + /** + * @param tableName the tableName to set + */ + public void setTableName(String tableName) { + this.tableName = tableName; + } + + /** + * @return the tableName + */ + public String getTableName() { + return tableName; + } + + /** + * @param columnName the columnName to set + */ + public void setColumnName(String columnName) { + this.columnName = columnName; + } + + /** + * @return the columnName + */ + public String getColumnName() { + return columnName; + } + + /** + * @param col1Exists the col1Exists to set + */ + public void setCol1Exists(boolean col1Exists) { + this.col1Exists = col1Exists; + } + + /** + * @return the col1Exists + */ + public boolean isCol1Exists() { + return col1Exists; + } + + /** + * @param col2Exists the col2Exists to set + */ + public void setCol2Exists(boolean col2Exists) { + this.col2Exists = col2Exists; + } + + /** + * @return the col2Exists + */ + public boolean isCol2Exists() { + return col2Exists; + } + + public boolean defaultsEqual() { + if (col1default == null && col2default == null) { + return true; + } + if ((col1default == null && col2default != null) + || (col1default != null && col2default == null)) { + return false; + } + return col1default.equals(col2default); + } + + public boolean remarksEqual() { + if (col1remarks == null && col2remarks == null) { + return true; + } + if ((col1remarks == null && col2remarks != null) + || (col1remarks != null && col2remarks == null)) { + return false; + } + return col1remarks.equals(col2remarks); + } + + public boolean typesEqual() { + return col1Type == col2Type; + } + + public boolean lengthsEqual() { + return col1Length == col2Length; + } + + public boolean nullableEqual() { + return col1IsNullable == col2IsNullable; + } + + public String toString() { + StringBuilder result = new StringBuilder(); + result.append("TABLE: "); + result.append(tableName); + result.append(" COLUMN: "); + result.append(columnName); + result.append("\n"); + result.append("source colType: "); + result.append(col1Type); + result.append("\n"); + + result.append("dest colType: "); + result.append(col2Type); + result.append("\n"); + + result.append("source colLength: "); + result.append(col1Length); + result.append("\n"); + + result.append("dest colLength: "); + result.append(col2Length); + result.append("\n"); + + result.append("source IsNullable: "); + result.append(col1IsNullable); + result.append("\n"); + + result.append("dest IsNullable: "); + result.append(col2IsNullable); + result.append("\n"); + + return result.toString(); + } +} Copied: trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPlugin.java (from rev 5805, trunk/sql12/plugins/dbdiff/src/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPlugin.java) =================================================================== --- trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPlugin.java (rev 0) +++ trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPlugin.java 2010-08-21 17:58:25 UTC (rev 5822) @@ -0,0 +1,319 @@ +package net.sourceforge.squirrel_sql.plugins.dbdiff; + +/* + * Copyright (C) 2007 Rob Manning + * man...@us... + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +import javax.swing.JMenu; +import javax.swing.JMenuItem; +import javax.swing.SwingUtilities; + +import net.sourceforge.squirrel_sql.client.IApplication; +import net.sourceforge.squirrel_sql.client.action.ActionCollection; +import net.sourceforge.squirrel_sql.client.plugin.DefaultSessionPlugin; +import net.sourceforge.squirrel_sql.client.plugin.PluginException; +import net.sourceforge.squirrel_sql.client.plugin.PluginResources; +import net.sourceforge.squirrel_sql.client.plugin.PluginSessionCallback; +import net.sourceforge.squirrel_sql.client.preferences.IGlobalPreferencesPanel; +import net.sourceforge.squirrel_sql.client.session.IObjectTreeAPI; +import net.sourceforge.squirrel_sql.client.session.ISession; +import net.sourceforge.squirrel_sql.fw.sql.DatabaseObjectType; +import net.sourceforge.squirrel_sql.fw.sql.IDatabaseObjectInfo; +import net.sourceforge.squirrel_sql.fw.util.log.ILogger; +import net.sourceforge.squirrel_sql.fw.util.log.LoggerController; +import net.sourceforge.squirrel_sql.plugins.dbdiff.actions.CompareAction; +import net.sourceforge.squirrel_sql.plugins.dbdiff.actions.SelectAction; + +/** + * The class that sets up the various resources required by SQuirreL to implement a plugin. This plugin + * implements the ability to diff tables and various other table-related objects from one database to another. + */ +public class DBDiffPlugin extends DefaultSessionPlugin implements SessionInfoProvider +{ + + /** Logger for this class. */ + private final static ILogger s_log = LoggerController.createLogger(DBDiffPlugin.class); + + private PluginResources _resources; + + private ISession diffSourceSession = null; + + private ISession diffDestSession = null; + + private IDatabaseObjectInfo[] selectedDatabaseObjects = null; + + private IDatabaseObjectInfo[] selectedDestDatabaseObjects = null; + + public static final String BUNDLE_BASE_NAME = "net.sourceforge.squirrel_sql.plugins.dbdiff.dbdiff"; + + /* (non-Javadoc) + * @see net.sourceforge.squirrel_sql.client.plugin.ISessionPlugin#sessionStarted(net.sourceforge.squirrel_sql.client.session.ISession) + */ + public PluginSessionCallback sessionStarted(final ISession session) + { + addMenuItemsToContextMenu(session); + return new DBDiffPluginSessionCallback(this); + } + + /* (non-Javadoc) + * @see net.sourceforge.squirrel_sql.client.plugin.IPlugin#getInternalName() + */ + public String getInternalName() + { + return "dbdiff"; + } + + /* (non-Javadoc) + * @see net.sourceforge.squirrel_sql.client.plugin.IPlugin#getDescriptiveName() + */ + public String getDescriptiveName() + { + return "DBDiff Plugin"; + } + + /* (non-Javadoc) + * @see net.sourceforge.squirrel_sql.client.plugin.IPlugin#getAuthor() + */ + public String getAuthor() + { + return "Rob Manning"; + } + + /* (non-Javadoc) + * @see net.sourceforge.squirrel_sql.client.plugin.DefaultPlugin#getContributors() + */ + public String getContributors() + { + return ""; + } + + /* (non-Javadoc) + * @see net.sourceforge.squirrel_sql.client.plugin.IPlugin#getVersion() + */ + public String getVersion() + { + return "0.01"; + } + + /** + * Returns the name of the Help file for the plugin. This should be a text or HTML file residing in the + * <TT>getPluginAppSettingsFolder</TT> directory. + * + * @return the Help file name or <TT>null</TT> if plugin doesn't have a help file. + */ + public String getHelpFileName() + { + return "readme.html"; + } + + /** + * Returns the name of the change log for the plugin. This should be a text or HTML file residing in the + * <TT>getPluginAppSettingsFolder</TT> directory. + * + * @return the changelog file name or <TT>null</TT> if plugin doesn't have a change log. + */ + public String getChangeLogFileName() + { + return "changes.txt"; + } + + /** + * @see net.sourceforge.squirrel_sql.client.plugin.DefaultPlugin#getLicenceFileName() + */ + @Override + public String getLicenceFileName() + { + return "licence.txt"; + } + + public void initialize() throws PluginException + { + super.initialize(); + + if (s_log.isDebugEnabled()) + { + s_log.debug("Initializing DB Diff Plugin"); + } + + _resources = new DBDiffPluginResources(DBDiffPlugin.BUNDLE_BASE_NAME, this); + + IApplication app = getApplication(); + ActionCollection coll = app.getActionCollection(); + coll.add(new SelectAction(app, _resources, this)); + coll.add(new CompareAction(app, _resources, this)); + + } + + public void unload() + { + super.unload(); + /* + diffSourceSession = null; + setPasteMenuEnabled(false); + PreferencesManager.unload(); + */ + } + + /** + * @param selectedDatabaseObjects + * The selectedDatabaseObjects to set. + */ + public void setSelectedDatabaseObjects(IDatabaseObjectInfo[] dbObjArr) + { + if (dbObjArr != null) + { + selectedDatabaseObjects = dbObjArr; + for (int i = 0; i < dbObjArr.length; i++) + { + if (s_log.isDebugEnabled()) + { + s_log.debug("setSelectedDatabaseObjects: IDatabaseObjectInfo[" + i + "]=" + dbObjArr[i]); + } + } + } + } + + /** + * Create panel for the Global Properties dialog. + * + * @return properties panel. + */ + public IGlobalPreferencesPanel[] getGlobalPreferencePanels() + { + /* + DBCopyGlobalPreferencesTab tab = new DBCopyGlobalPreferencesTab(); + return new IGlobalPreferencesPanel[] { tab }; + */ + return new IGlobalPreferencesPanel[0]; + } + + /** + * @param coll + * @param api + */ + protected void addMenuItemsToContextMenu(ISession session) + { + final IObjectTreeAPI api = session.getObjectTreeAPIOfActiveSessionWindow(); + final ActionCollection coll = getApplication().getActionCollection(); + + if (SwingUtilities.isEventDispatchThread()) + { + addToPopup(api, coll); + } + else + { + SwingUtilities.invokeLater(new Runnable() + { + public void run() + { + addToPopup(api, coll); + } + }); + } + } + + private void addToPopup(IObjectTreeAPI api, ActionCollection coll) + { + + // Uses menu.dbdiff.* in dbdiff.properties + JMenu dbdiffMenu = _resources.createMenu("dbdiff"); + + JMenuItem selectItem = new JMenuItem(coll.get(SelectAction.class)); + JMenuItem compareItem = new JMenuItem(coll.get(CompareAction.class)); + dbdiffMenu.add(selectItem); + dbdiffMenu.add(compareItem); + + api.addToPopup(DatabaseObjectType.CATALOG, dbdiffMenu); + api.addToPopup(DatabaseObjectType.SCHEMA, dbdiffMenu); + api.addToPopup(DatabaseObjectType.TABLE_TYPE_DBO, dbdiffMenu); + api.addToPopup(DatabaseObjectType.TABLE, dbdiffMenu); + + } + + /* + private class DBCopyPluginResources extends PluginResources { + DBCopyPluginResources(String rsrcBundleBaseName, IPlugin plugin) { + super(rsrcBundleBaseName, plugin); + } + } + */ + public void setCompareMenuEnabled(boolean enabled) + { + final ActionCollection coll = getApplication().getActionCollection(); + CompareAction compareAction = (CompareAction) coll.get(CompareAction.class); + compareAction.setEnabled(enabled); + } + + // Interface SessionInfoProvider implementation + + /* (non-Javadoc) + * @see net.sourceforge.squirrel_sql.plugins.dbcopy.SessionInfoProvider#getCopySourceSession() + */ + public ISession getDiffSourceSession() + { + return diffSourceSession; + } + + /* (non-Javadoc) + * @see net.sourceforge.squirrel_sql.plugins.dbcopy.SessionInfoProvider#setCopySourceSession(net.sourceforge.squirrel_sql.client.session.ISession) + */ + public void setDiffSourceSession(ISession session) + { + if (session != null) + { + diffSourceSession = session; + } + } + + /* (non-Javadoc) + * @see net.sourceforge.squirrel_sql.plugins.dbcopy.SessionInfoProvider#getSelectedDatabaseObjects() + */ + public IDatabaseObjectInfo[] getSourceSelectedDatabaseObjects() + { + return selectedDatabaseObjects; + } + + /* (non-Javadoc) + * @see net.sourceforge.squirrel_sql.plugins.dbcopy.SessionInfoProvider#getCopyDestSession() + */ + public ISession getDiffDestSession() + { + return diffDestSession; + } + + /* (non-Javadoc) + * @see net.sourceforge.squirrel_sql.plugins.dbcopy.SessionInfoProvider#setDestCopySession(net.sourceforge.squirrel_sql.client.session.ISession) + */ + public void setDestDiffSession(ISession session) + { + diffDestSession = session; + } + + /* (non-Javadoc) + * @see net.sourceforge.squirrel_sql.plugins.dbcopy.SessionInfoProvider#getDestSelectedDatabaseObject() + */ + public IDatabaseObjectInfo[] getDestSelectedDatabaseObjects() + { + return selectedDestDatabaseObjects; + } + + public void setDestSelectedDatabaseObjects(IDatabaseObjectInfo[] info) + { + selectedDestDatabaseObjects = info; + } +} Copied: trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPluginResources.java (from rev 5805, trunk/sql12/plugins/dbdiff/src/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPluginResources.java) =================================================================== --- trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPluginResources.java (rev 0) +++ trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPluginResources.java 2010-08-21 17:58:25 UTC (rev 5822) @@ -0,0 +1,30 @@ +/* + * Copyright (C) 2008 Rob Manning + * man...@us... + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +package net.sourceforge.squirrel_sql.plugins.dbdiff; + +import net.sourceforge.squirrel_sql.client.plugin.IPlugin; +import net.sourceforge.squirrel_sql.client.plugin.PluginResources; + +public class DBDiffPluginResources extends PluginResources +{ + DBDiffPluginResources(String rsrcBundleBaseName, IPlugin plugin) + { + super(rsrcBundleBaseName, plugin); + } +} \ No newline at end of file Copied: trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPluginSessionCallback.java (from rev 5805, trunk/sql12/plugins/dbdiff/src/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPluginSessionCallback.java) =================================================================== --- trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPluginSessionCallback.java (rev 0) +++ trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DBDiffPluginSessionCallback.java 2010-08-21 17:58:25 UTC (rev 5822) @@ -0,0 +1,50 @@ +/* + * Copyright (C) 2007 Rob Manning + * man...@us... + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +package net.sourceforge.squirrel_sql.plugins.dbdiff; + +import net.sourceforge.squirrel_sql.client.gui.session.ObjectTreeInternalFrame; +import net.sourceforge.squirrel_sql.client.gui.session.SQLInternalFrame; +import net.sourceforge.squirrel_sql.client.plugin.PluginSessionCallback; +import net.sourceforge.squirrel_sql.client.session.ISession; + +/** + * + * @author manningr + * + */ +public class DBDiffPluginSessionCallback implements PluginSessionCallback { + + DBDiffPlugin _plugin = null; + + public DBDiffPluginSessionCallback(DBDiffPlugin plugin) { + _plugin = plugin; + } + + public void sqlInternalFrameOpened(SQLInternalFrame sqlInternalFrame, + ISession session) { + // Nothing to do for an SQL internal frame + + } + + public void objectTreeInternalFrameOpened(ObjectTreeInternalFrame objectTreeInternalFrame, + ISession session) { + _plugin.addMenuItemsToContextMenu(session); + } + +} Copied: trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DiffExecutor.java (from rev 5805, trunk/sql12/plugins/dbdiff/src/net/sourceforge/squirrel_sql/plugins/dbdiff/DiffExecutor.java) =================================================================== --- trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DiffExecutor.java (rev 0) +++ trunk/sql12/plugins/dbdiff/src/main/java/net/sourceforge/squirrel_sql/plugins/dbdiff/DiffExecutor.java 2010-08-21 17:58:25 UTC (rev 5822) @@ -0,0 +1,282 @@ +package net.sourceforge.squirrel_sql.plugins.dbdiff; +/* + * Copyright (C) 2007 Rob Manning + * man...@us... + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; + +import javax.swing.JOptionPane; +import javax.swing.SwingUtilities; + +import net.sourceforge.squirrel_sql.client.gui.mainframe.MainFrame; +import net.sourceforge.squirrel_sql.client.session.ISession; +import net.sourceforge.squirrel_sql.fw.dialects.DialectFactory; +import net.sourceforge.squirrel_sql.fw.gui.GUIUtils; +import net.sourceforge.squirrel_sql.fw.sql.DatabaseObjectType; +import net.sourceforge.squirrel_sql.fw.sql.IDatabaseObjectInfo; +import net.sourceforge.squirrel_sql.fw.sql.ISQLDatabaseMetaData; +import net.sourceforge.squirrel_sql.fw.sql.ITableInfo; +import net.sourceforge.squirrel_sql.fw.util.StringManager; +import net.sourceforge.squirrel_sql.fw.util.StringManagerFactory; +import net.sourceforge.squirrel_sql.fw.util.log.ILogger; +import net.sourceforge.squirrel_sql.fw.util.log.LoggerController; +import net.sourceforge.squirrel_sql.plugins.dbdiff.gui.ColumnDiffDialog; +import net.sourceforge.squirrel_sql.plugins.dbdiff.util.DBUtil; + +/** + * This is the class that performs the table copy using database connections + * to two different database schemas. + */ +public class DiffExecutor { + + /** Logger for this class. */ + private final static ILogger s_log = + LoggerController.createLogger(DiffExecutor.class); + + /** Internationalized strings for this class. */ + private static final StringManager s_stringMgr = + StringManagerFactory.getStringManager(DiffExecutor.class); + + static interface i18n { + // i18n[DiffExecutor.noDiffsMessage=No differences were detected] + String NO_DIFFS_MESSAGE = + s_stringMgr.getString("DiffExecutor.noDiffsMessage"); + } + + /** the class that provides out session information */ + SessionInfoProvider prov = null; + + /** the source session. This comes from prov */ + ISession sourceSession = null; + + /** the destination session. This comes from prov */ + ISession destSession = null; + + /** the thread we do the work in */ + private Thread execThread = null; + + private List<ColumnDifference> colDifferences = + new ArrayList<ColumnDifference>(); + + /** + * Constructor. + * + * @param p the provider of information regarding what to copy where. + */ + public DiffExecutor(SessionInfoProvider p) { + prov = p; + sourceSession = prov.getDiffSourceSession(); + destSession = prov.getDiffDestSession(); + } + + /** + * Starts the thread that executes the copy operation. + */ + public void execute() { + Runnable runnable = new Runnable() { + public void run() { + try { + _execute(); + } catch (Exception e) { + e.printStackTrace(); + } + } + }; + execThread = new Thread(runnable); + execThread.setName("DBDiff Executor Thread"); + execThread.start(); + } + + /** + * Performs the table diff operation. + */ + private void _execute() throws SQLException { + boolean encounteredException = false; + IDatabaseObjectInfo[] sourceObjs = + prov.getSourceSelectedDatabaseObjects(); + IDatabaseObjectInfo[] destObjs = + prov.getDestSelectedDatabaseObjects(); + + if (!sanityCheck(sourceObjs, destObjs)) { + return; + } + + ISQLDatabaseMetaData sourceMetaData = + prov.getDiffSourceSession().getMetaData(); + ISQLDatabaseMetaData destMetaData = + prov.getDiffDestSession().getMetaData(); + + + + Map<String, ITableInfo> tableMap1 = getTableMap(source... [truncated message content] |