<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>My Ingres Blog</title>
	<atom:link href="http://movingapple.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://movingapple.wordpress.com</link>
	<description>Just another WordPress.com weblog</description>
	<lastBuildDate>Sat, 20 Feb 2010 00:36:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='movingapple.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>My Ingres Blog</title>
		<link>http://movingapple.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://movingapple.wordpress.com/osd.xml" title="My Ingres Blog" />
	<atom:link rel='hub' href='http://movingapple.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Info from wave Feb 12-19</title>
		<link>http://movingapple.wordpress.com/2010/02/19/info-from-wave-feb-12-19/</link>
		<comments>http://movingapple.wordpress.com/2010/02/19/info-from-wave-feb-12-19/#comments</comments>
		<pubDate>Fri, 19 Feb 2010 20:51:19 +0000</pubDate>
		<dc:creator>George</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://movingapple.wordpress.com/?p=71</guid>
		<description><![CDATA[JUnit test will INITIALIZE (but try nothing) if you have: 1. The TestSetup class 2. The db.properties resource It will TRY to connect to Ingres (but skip the tests) if you have: 3. The Ingres JDBC drivers downloaded. 4. The JDBC drivers referenced in pom.xml 5. The JDBC drivers referenced by db.properties&#8217; Driver field. It [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=71&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>JUnit test will INITIALIZE (but try nothing) if you have:<br />
1. The TestSetup class<br />
2. The db.properties resource</p>
<p>It will TRY to connect to Ingres (but skip the tests) if you have:<br />
3. The Ingres JDBC drivers downloaded.<br />
4. The JDBC drivers referenced in pom.xml<br />
5. The JDBC drivers referenced by db.properties&#8217; Driver field.</p>
<p>It will connect to Ingres and FAIL the tests if you have:<br />
6. An Ingres instance running<br />
7. db.properties contain relevant and correct connection information<br />
(address and protocol type, username, password)</p>
<p>It will PASS the tests if you have:<br />
8. Ingres instance SUPPORTS Geospatial datatypes.<br />
9. Unit tests logic are correct.<br />
10. Source implementations are correct.</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p><span style="color:#000000;font-size:small;"> Is it just running &#8220;</span><tt><span style="font-family:Helvetica;color:#000000;font-size:small;">mvn test" that causes the tests to run?</span></tt></p>
<p>mvn install compiles then runs the tests</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>Make sure you read more carefully the error messages from mvn, I had<br />
the same problem building after I added the dependency tag into<br />
pom.xml. But turns out its because I was not careful with the xml<br />
tags.<br />
After some fixing it works. So to confirm here&#8217;s the last few lines of<br />
my pom.xml:</p>
<p>&lt;/developers&gt;</p>
<p>&lt;dependencies&gt;<br />
&lt;dependency&gt;<br />
&lt;groupId&gt;com.ingres.jdbc&lt;/</p>
<div id=":8s">groupId&gt;<br />
&lt;artifactId&gt;iijdbc&lt;/artifactId&gt;<br />
&lt;version&gt;9.2-3.4.9&lt;/version&gt;<br />
&lt;/dependency&gt;<br />
&lt;/dependencies&gt;</p>
<p>&lt;/project&gt;</p>
<p>Anthony, to answer your question in the previous email. I believe<br />
theoretically that AS LONG AS we don&#8217;t change jdbc-ng/pom.xml to add<br />
that line referencing its subfolder, we will never break the build<br />
anyways, so should&#8217;ve been unnecessary to run mvn install from the<br />
trunk. However, past experiences tell me to still run it once to show<br />
due diligence on ensuring no surprises. And since we should always svn<br />
update before svn commit, running mvn install after update is the only<br />
way to confirm that our change and someone else&#8217;s change do not<br />
conflict.</p></div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/movingapple.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/movingapple.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/movingapple.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/movingapple.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/movingapple.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/movingapple.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/movingapple.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/movingapple.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/movingapple.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/movingapple.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/movingapple.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/movingapple.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/movingapple.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/movingapple.wordpress.com/71/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=71&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://movingapple.wordpress.com/2010/02/19/info-from-wave-feb-12-19/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11b11c9b966120189d4aee68ec6bfe47?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">George's Ingres Blog</media:title>
		</media:content>
	</item>
		<item>
		<title>Implementation plan based on testing &#8211; Part 2</title>
		<link>http://movingapple.wordpress.com/2010/02/15/implementation-plan-based-on-testing-part-2/</link>
		<comments>http://movingapple.wordpress.com/2010/02/15/implementation-plan-based-on-testing-part-2/#comments</comments>
		<pubDate>Mon, 15 Feb 2010 08:41:04 +0000</pubDate>
		<dc:creator>George</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://movingapple.wordpress.com/2010/02/15/implementation-plan-based-on-testing-part-2/</guid>
		<description><![CDATA[This part is based on the test classes for PostGIS PostGISTestSetup needs PostGISDialect which extends BasicSQLDialect so do we need IngresDialect? notice it also needs PostGISNGDataStoreFactory<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=69&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This part is based on the test classes for PostGIS</p>
<p>PostGISTestSetup needs PostGISDialect which extends BasicSQLDialect</p>
<p>so do we need <strong>IngresDialect</strong>?</p>
<p>notice it also needs PostGISNGDataStoreFactory</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/movingapple.wordpress.com/69/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/movingapple.wordpress.com/69/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/movingapple.wordpress.com/69/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/movingapple.wordpress.com/69/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/movingapple.wordpress.com/69/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/movingapple.wordpress.com/69/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/movingapple.wordpress.com/69/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/movingapple.wordpress.com/69/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/movingapple.wordpress.com/69/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/movingapple.wordpress.com/69/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/movingapple.wordpress.com/69/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/movingapple.wordpress.com/69/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/movingapple.wordpress.com/69/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/movingapple.wordpress.com/69/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=69&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://movingapple.wordpress.com/2010/02/15/implementation-plan-based-on-testing-part-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11b11c9b966120189d4aee68ec6bfe47?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">George's Ingres Blog</media:title>
		</media:content>
	</item>
		<item>
		<title>Implementation plan based on testing &#8211; Part 1</title>
		<link>http://movingapple.wordpress.com/2010/02/14/implementation-plan-based-on-testing-part-1/</link>
		<comments>http://movingapple.wordpress.com/2010/02/14/implementation-plan-based-on-testing-part-1/#comments</comments>
		<pubDate>Sun, 14 Feb 2010 21:52:37 +0000</pubDate>
		<dc:creator>George</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://movingapple.wordpress.com/2010/02/14/implementation-plan-based-on-testing-part-1/</guid>
		<description><![CDATA[This part is based on the test suite for DB2. According the class usage from test classes, we need to have the following classes (name in bold is the test class name) DB2TestSetup IngresUtil IngresTestUtil IngresNGDataStoreFactory JDBCDataStoreTest: research again JDBCSpatialFiltersTest IngresDataStore Other test classes don&#8217;t require any other jdbc classes other than those mentioned above<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=64&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This part is based on the test suite for DB2. According the class usage from test classes, we need to have the following classes (name <strong>in bold</strong> is the test class name)</p>
<p><strong>DB2TestSetup</strong></p>
<p>IngresUtil</p>
<p>IngresTestUtil</p>
<p>IngresNGDataStoreFactory</p>
<p><!-- 		@page { margin: 0.79in } 		P { margin-bottom: 0.08in } --><strong>JDBCDataStoreTest: research again<br />
</strong></p>
<p><!-- 		@page { margin: 0.79in } 		P { margin-bottom: 0.08in } --><strong>JDBCSpatialFiltersTest</strong></p>
<p>IngresDataStore<strong></strong><br />
<strong>Other test classes don&#8217;t require any other jdbc classes other than those mentioned above<br />
</strong></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/movingapple.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/movingapple.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/movingapple.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/movingapple.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/movingapple.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/movingapple.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/movingapple.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/movingapple.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/movingapple.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/movingapple.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/movingapple.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/movingapple.wordpress.com/64/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/movingapple.wordpress.com/64/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/movingapple.wordpress.com/64/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=64&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://movingapple.wordpress.com/2010/02/14/implementation-plan-based-on-testing-part-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11b11c9b966120189d4aee68ec6bfe47?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">George's Ingres Blog</media:title>
		</media:content>
	</item>
		<item>
		<title>Analysis of implementation detail- Oracle vs. DB2 &#8211; Part 1</title>
		<link>http://movingapple.wordpress.com/2010/02/08/analysis-of-implementation-detail-oracle-vs-db2-part-1/</link>
		<comments>http://movingapple.wordpress.com/2010/02/08/analysis-of-implementation-detail-oracle-vs-db2-part-1/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 18:51:16 +0000</pubDate>
		<dc:creator>George</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://movingapple.wordpress.com/?p=58</guid>
		<description><![CDATA[This is just roadmap of further studying DB2SQLDialect vs. OracleSQLDialect DB2SQLDialect extends SQLDialect OracleDialect extends PreparedStatementSQLDialect DB2FilterToSQL vs. OracleFilterToSQL 1.createFilterCapabilities() instantitated different capabilities 2.visitBinarySpatialOperator() DB2:visitBinarySpatialOperator(BinarySpatialOperator filter, Object extraData, String db2Predicate) Oracle: visitBinarySpatialOperator(BinarySpatialOperator filter, PropertyName property, Literal geometry, boolean swapped, Object extraData) OracleNGDataStoreFactory vs. OracleNGDataStoreFactory 1.createDataStoreInternal(JDBCDataStore dataStore, Map params) Oracle: // make the schema uppercase if [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=58&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This is just roadmap of further studying</p>
<p><strong>DB2SQLDialect vs. OracleSQLDialect</strong></p>
<p>DB2SQLDialect extends SQLDialect<br />
OracleDialect extends PreparedStatementSQLDialect</p>
<p><strong>DB2FilterToSQL vs. OracleFilterToSQL</strong><br />
1.createFilterCapabilities()<br />
instantitated different capabilities</p>
<p>2.visitBinarySpatialOperator()<br />
DB2:visitBinarySpatialOperator(BinarySpatialOperator filter, Object extraData, String db2Predicate)<br />
Oracle:<br />
visitBinarySpatialOperator(BinarySpatialOperator filter, PropertyName property,<br />
Literal geometry, boolean swapped, Object extraData)</p>
<p><strong>OracleNGDataStoreFactory vs. OracleNGDataStoreFactory</strong></p>
<p>1.createDataStoreInternal(JDBCDataStore dataStore, Map params)<br />
Oracle:<br />
// make the schema uppercase if it&#8217;s not already<br />
if(dataStore.getDatabaseSchema() != null)<br />
dataStore.setDatabaseSchema(dataStore.getDatabaseSchema().toUpperCase());</p>
<p>// setup loose bbox<br />
OracleDialect dialect = (OracleDialect) dataStore.getSQLDialect();<br />
Boolean loose = (Boolean) LOOSEBBOX.lookUp(params);<br />
dialect.setLooseBBOXEnabled(loose == null || Boolean.TRUE.equals(loose));</p>
<p>// setup proper fetch size<br />
dataStore.setFetchSize(200);</p>
<p>DB2:</p>
<p>try {<br />
con = dataStore.getDataSource().getConnection();<br />
DatabaseMetaData md = con.getMetaData();<br />
MajorVersion=md.getDatabaseMajorVersion();<br />
MinorVersion=md.getDatabaseMinorVersion();<br />
ProductName=md.getDatabaseProductName();<br />
ProductVersion=md.getDatabaseProductVersion();<br />
} catch (SQLException e) {<br />
throw new IOException(e.getMessage());<br />
}<br />
dataStore.closeSafe(con);</p>
<p>2.getJDBCUrl<br />
Oracle<br />
String host = (String) HOST.lookUp(params);<br />
String db = (String) DATABASE.lookUp(params);<br />
int port = (Integer) PORT.lookUp(params);<br />
if( db.startsWith(&#8220;(&#8220;) )<br />
return JDBC_PATH + db;<br />
else if( db.startsWith(&#8220;/&#8221;) )<br />
return JDBC_PATH + &#8220;//&#8221; + host + &#8220;:&#8221; + port + db;<br />
else<br />
return JDBC_PATH + host + &#8220;:&#8221; + port + &#8220;:&#8221; + db;<br />
DB2:<br />
String host=null;<br />
Integer port = null;<br />
try {<br />
host = (String) HOST.lookUp(params);<br />
port = (Integer) PORT.lookUp(params);<br />
} catch (IOException ex) {<br />
// do nothing<br />
}</p>
<p>String db = (String) DATABASE.lookUp(params);</p>
<p>if (host==null &amp;&amp; port== null &amp;&amp; db !=null)<br />
return &#8220;jdbc:&#8221;+getDatabaseID()+&#8221;:&#8221;+db;</p>
<p>return super.getJDBCUrl(params);</p>
<p>3.  setupParameters(Map parameters)<br />
Oracle:<br />
// NOTE: when adding parameters here remember to add them to OracleNGOCIDataStoreFactory and<br />
// OracleNGJNDIDataStoreFactory</p>
<p>super.setupParameters(parameters);<br />
parameters.put(LOOSEBBOX.key, LOOSEBBOX);<br />
parameters.put(MAX_OPEN_PREPARED_STATEMENTS.key, MAX_OPEN_PREPARED_STATEMENTS);<br />
parameters.put(PORT.key, PORT);<br />
parameters.put(DBTYPE.key, DBTYPE);<br />
DB2:<br />
super.setupParameters(parameters);<br />
parameters.put(DBTYPE.key, DBTYPE);</p>
<p>4.getValidationQuery()<br />
Oracle:<br />
&#8220;select sysdate from dual&#8221;<br />
DB2:<br />
&#8220;select current date from sysibm.sysdummy1&#8243;;</p>
<p>OracleNGJNDIDataStoreFactory vs. DB2NGJNDIDataStoreFactory<br />
Constructor<br />
Oracle:<br />
super.setupParameters(parameters);</p>
<p>parameters.put(OracleNGDataStoreFactory.LOOSEBBOX.key, OracleNGDataStoreFactory.LOOSEBBOX);<br />
parameters.put(MAX_OPEN_PREPARED_STATEMENTS.key, MAX_OPEN_PREPARED_STATEMENTS);<br />
DB2:<br />
super(new DB2NGDataStoreFactory());</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/movingapple.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/movingapple.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/movingapple.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/movingapple.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/movingapple.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/movingapple.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/movingapple.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/movingapple.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/movingapple.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/movingapple.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/movingapple.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/movingapple.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/movingapple.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/movingapple.wordpress.com/58/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=58&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://movingapple.wordpress.com/2010/02/08/analysis-of-implementation-detail-oracle-vs-db2-part-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11b11c9b966120189d4aee68ec6bfe47?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">George's Ingres Blog</media:title>
		</media:content>
	</item>
		<item>
		<title>Info from Wave, Feb 2 &#8211; Feb 7</title>
		<link>http://movingapple.wordpress.com/2010/02/08/info-from-wave-feb-2-feb-7/</link>
		<comments>http://movingapple.wordpress.com/2010/02/08/info-from-wave-feb-2-feb-7/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 01:02:32 +0000</pubDate>
		<dc:creator>George</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://movingapple.wordpress.com/?p=55</guid>
		<description><![CDATA[http://community.ingres.com/wiki/IngresGeoTools all technical decisions or findings captured in the wiki written as though a perfect stranger may need to pick them up in a year or two. Ensuring this is done very well, demonstrating the high quality of work and professionalism is the foundation to me going after approval to hire one or possibly more [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=55&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://community.ingres.com/wiki/IngresGeoTools" target="_blank">http://community.ingres.com/wiki/</a><a href="http://community.ingres.com/wiki/IngresGeoTools" target="_blank">IngresGeoTools</a><br />
all technical decisions or findings captured in the wiki written as though a perfect stranger may need to pick them up in a year or two. Ensuring this is done very well, demonstrating the high quality of work and professionalism is the foundation to me going after approval to hire one or possibly more of the team. The schedule component should look a little like this please: <a href="http://community.ingres.com/wiki/GeoProjectPlan" target="_blank">http://community.ingres.com/wiki/GeoProjectPlan</a><a href="http://community.ingres.com/wiki/GeoProjectPlan" target="_blank"> </a>P<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<ul>
<li>abstract jdbc tests located here: <a href="http://svn.osgeo.org/geotools/branches/2.6.x/modules/library/jdbc/src/test/java/org/geotools/jdbc" target="_blank">http://svn.osgeo.org/geotools/branches/2.6.x/modules/library/jdbc/src/test/java/org/geotools/jdbc</a></li>
<li>our subclass tests will be located here: <a href="http://svn.osgeo.org/geotools/branches/2.6.x/modules/unsupported/jdbc/jdbc-ingres/src/test/java/org/geotools/data/ingres" target="_blank">http://svn.osgeo.org/geotools/branches/2.6.x/modules/unsupported/jdbc/jdbc-ingres/src/test/java/org/geotools/data/ingres</a> (at least one per class).</li>
<li>our code should be under &#8220;unsupported&#8221; for now</li>
<li>some databases (i.e. postgis) have implementations with options for both plain sql as well as prepared statments.  What about ingres?</li>
<li>openGeo stack workshop: <a href="http://workshops.opengeo.org/stack-intro/" target="_blank">http://workshops.opengeo.org/</a><a href="http://workshops.opengeo.org/stack-intro/" target="_blank">stack</a><a href="http://workshops.opengeo.org/stack-intro/" target="_blank">-intro/</a></li>
</ul>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<ul>
<li>abstract jdbc tests located here: <a href="http://svn.osgeo.org/geotools/branches/2.6.x/modules/library/jdbc/src/test/java/org/geotools/jdbc" target="_blank">http://svn.osgeo.org/geotools/branches/2.6.x/modules/library/jdbc/src/test/java/org/geotools/jdbc</a></li>
<li>our subclass tests will be located here: <a href="http://svn.osgeo.org/geotools/branches/2.6.x/modules/unsupported/jdbc/jdbc-ingres/src/test/java/org/geotools/data/ingres" target="_blank">http://svn.osgeo.org/geotools/branches/2.6.x/modules/unsupported/jdbc/jdbc-ingres/src/test/java/org/geotools/data/ingres</a> (at least one per class).</li>
<li>our code should be under &#8220;unsupported&#8221; for now</li>
<li>some databases (i.e. postgis) have implementations with options for both plain sql as well as prepared statments.  What about ingres?</li>
<li>openGeo stack workshop: <a href="http://workshops.opengeo.org/stack-intro/" target="_blank">http://workshops.opengeo.org/</a><a href="http://workshops.opengeo.org/stack-intro/" target="_blank">stack</a><a href="http://workshops.opengeo.org/stack-intro/" target="_blank">-intro/ </a></li>
</ul>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>Prerequisites:</p>
<p>First, make sure you have all the following installed properly.</p>
<p>Maven (with Jetty plug-in, should be shipped together by default, but if not just download seperately)</p>
<p>JDK (you know how to install JDK I hope, except to avoid wierd behaviour, please make sure your full path is contains no space in it, this goes for other software as well hopefully)</p>
<p><a href="http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/galileo/SR1/eclipse-java-galileo-SR1-win32.zip" target="_blank">Eclipse for Java SE developer</a></p>
<p>svn(to make sure you&#8217;re able to check out source code)</p>
<p>Also make sure you have all the following in your command line environment.</p>
<p>M2_HOME=&lt;directory-to-maven&gt;</p>
<p>JAVA_HOME=&lt;directory-to-JDK&gt;</p>
<p>PATH=%PATH%;%M2_HOME%/bin;%JAVA_HOME%/bin</p>
<h3>Steps:</h3>
<h4>Compile and setup with Maven:</h4>
<p>mkdir everythingInsideHere</p>
<p>cd everythingInsideHere</p>
<p>mkdir svn</p>
<p>cd svn</p>
<p>svn co <a href="https://svn.codehaus.org/geoserver/trunk" target="_blank">https://svn.codehaus.org/geoserver/trunk</a> geoserver</p>
<p>svn co <a href="https://svn.osgeo.org/geotools/trunk" target="_blank">https://svn.osgeo.org/geotools/trunk</a> geotools</p>
<p>cd geoserver/src</p>
<p>mvn install</p>
<p>mvn eclipse:eclipse</p>
<p>cd ../../geotools</p>
<p>mvn install</p>
<p>mvn eclipse:eclipse</p>
<h4>Setup Eclipse:</h4>
<p>Run Eclipse into an empty workspace.</p>
<p>Go to Window-&gt;Preferences</p>
<p>Under Java-&gt;BuildPath-&gt;Classpath Variable (or just type classpath variables in the filter search box), make sure an M2_REPO variable is set. If not, click on &#8220;New&#8230;&#8221; and under &#8220;Name&#8221; type M2_REPO, under &#8220;Path&#8221; point it to your .m2/repository folder. (For windows, it should be in your username folder)</p>
<p>Under Java-&gt;Compiler-&gt;Building, make sure .svn is included in the &#8220;Filtered resources&#8221; field.</p>
<p>Click on OK to close the Preferences window.</p>
<p>Now under the Package Explorer on the left, right click in the empty space and find the Import&#8230; menu, click on it.</p>
<p>Select &#8220;Existing Projects into Workspace&#8221; and click Next</p>
<p>Select root directory to be the exact same directory where you invoked mvn install in your geoserver/src. That should list out a LOT of projects after a long search. Add all of them into eclipse. They should show up in the originally empty Package Explorer, one of which is called &#8220;web-app&#8221;. Eclipse should automatically build all your project and hopefully there should be no errors.</p>
<p>You need to setup maven jetty to be run as an external tool though. So click on Run-&gt;External Tools-&gt;External Tools Configuration</p>
<p>Under Program, create a New_configuration if there&#8217;s not already an empty one created for you, then the &#8220;Main&#8221; and &#8220;Environment&#8221; needs to be setup as follow:</p>
<p>Main</p>
<p>Location: &lt;the actual mvn binary file on your file system, e.g. for Windows its %M2_HOME%/bin/mvn.bat&gt;</p>
<p>Working Directory: Click on &#8220;Browse Workspace&#8221; and select the web-app project.</p>
<p>Arguments: jetty:run</p>
<p>Environment</p>
<p>Click on &#8220;New&#8230;&#8221; and add the following into the environment variables to set:</p>
<p>Variable: MAVEN_OPTS</p>
<p>Value: -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8080,server=y,suspend=y</p>
<p>After that you could click apply and ok to close this window (or &#8220;RUN&#8221; if you want to run immediately)</p>
<h4>Invoke Debug instance:</h4>
<p>Now you can begin debugging. Run the External Tool configuration you&#8217;ve created if you haven&#8217;t.</p>
<p>Go to Run-&gt;Debug Configurations&#8230;</p>
<p>Under &#8220;Remote Java Application&#8221;, create a new configuration just like you did for External Tool, this time with the following:</p>
<p>Connect</p>
<p>Project: web-app</p>
<p>Connection Type: Standard(Socket Attach)</p>
<p>Connection Properties:</p>
<p>Host: localhost</p>
<p>Port: 8080</p>
<p>CHECK Allow termination of remote VM.</p>
<p>Click Apply, and click Debug</p>
<p>Wait for a while, if all else works out, you should be able to open your browser and go to <a href="http://localhost:8080/geoserver/" target="_blank">http://localhost:8080/geoserver/</a> and get greeted by an instance of Geoserver!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/movingapple.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/movingapple.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/movingapple.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/movingapple.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/movingapple.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/movingapple.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/movingapple.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/movingapple.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/movingapple.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/movingapple.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/movingapple.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/movingapple.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/movingapple.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/movingapple.wordpress.com/55/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=55&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://movingapple.wordpress.com/2010/02/08/info-from-wave-feb-2-feb-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11b11c9b966120189d4aee68ec6bfe47?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">George's Ingres Blog</media:title>
		</media:content>
	</item>
		<item>
		<title>Info from wave Jan 25- Feb 1</title>
		<link>http://movingapple.wordpress.com/2010/02/01/info-from-wave-jan-25-feb-1/</link>
		<comments>http://movingapple.wordpress.com/2010/02/01/info-from-wave-jan-25-feb-1/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 10:52:11 +0000</pubDate>
		<dc:creator>George</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://movingapple.wordpress.com/?p=53</guid>
		<description><![CDATA[the testing can be broken down into three parts: 1. the JUnit tests 2. the entire application stack (i.e. OpenGeo) 3. programmatically debugging using GeoServer &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- The breakpoints to PostgisNGDataStoreFactory also got hit and hence I also confirmed that its using a .m2/repository/gt-jdbc-2.7- SNAPSHOT.jar which means, IF geotools build such a jar file, I can [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=53&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>the testing can be broken down into three parts:<br />
1. the JUnit tests<br />
2. the entire application stack (i.e. OpenGeo)</p>
<p>3. programmatically debugging using GeoServer</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>The breakpoints to PostgisNGDataStoreFactory also got hit and hence I<br />
also confirmed that its using a<br />
.m2/repository/gt-jdbc-2.7-</p>
<div id=":33">SNAPSHOT.jar which means, IF geotools build<br />
such a jar file, I can REPLACE that SOURCE-ATTACHED jar file for<br />
debugging!</div>
<div>&#8212;&#8212;-</div>
<div></div>
<div>What I need to do this week:</div>
<div>1.getting a gt-jdbc-ingres project into eclipse</div>
<div>2.research the difference in the actually implementation of oracle, postgis, and db2&#8242;s jdbc (should have done it last week, but computer crashed when I was working on this on Saturday)</div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/movingapple.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/movingapple.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/movingapple.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/movingapple.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/movingapple.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/movingapple.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/movingapple.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/movingapple.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/movingapple.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/movingapple.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/movingapple.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/movingapple.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/movingapple.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/movingapple.wordpress.com/53/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=53&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://movingapple.wordpress.com/2010/02/01/info-from-wave-jan-25-feb-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11b11c9b966120189d4aee68ec6bfe47?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">George's Ingres Blog</media:title>
		</media:content>
	</item>
		<item>
		<title>GeoTools Data Access Sample – Oracle</title>
		<link>http://movingapple.wordpress.com/2010/01/25/geotools-data-access-sample-%e2%80%93-oracle/</link>
		<comments>http://movingapple.wordpress.com/2010/01/25/geotools-data-access-sample-%e2%80%93-oracle/#comments</comments>
		<pubDate>Mon, 25 Jan 2010 13:29:06 +0000</pubDate>
		<dc:creator>George</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://movingapple.wordpress.com/?p=44</guid>
		<description><![CDATA[classes with similar purpose in DB2 example are in bold. It seems that to implement data access for Ingres, these common classes should be implemented. For test cases to write, see the info in the google wave post A natural question: how to configure which database to use? In org.geotools.data.oracle 1.OracleDateConverterFactory Implements ConverterFactory 2.OracleDialect extends [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=44&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>classes with similar purpose in DB2 example are <strong>in bold</strong>. It seems that to implement data access for Ingres, these common classes should be implemented.</p>
<p>For test cases to write, see the info <a href="http://movingapple.wordpress.com/2010/01/25/info-from-wave-jan-24/" target="_blank">in the google wave post</a></p>
<p>A natural question: how to configure which database to use?</p>
<p>In org.geotools.data.oracle</p>
<p>1.OracleDateConverterFactory</p>
<p>Implements ConverterFactory</p>
<p>2<strong>.OracleDialect</strong></p>
<p>extends PreparedStatementSQLDialect, which in turn implements SQLDialect</p>
<p>3.<strong>OracleFilterToSQL</strong></p>
<p>Oracle specific filter encoder, extends PreparedFilterToSQL</p>
<p><strong>OracleNGDataStoreFactory<br />
OracleNGJNDIDataStoreFactory<br />
OracleNGOCIDataStoreFactory<br />
SDO11OracleDialect<br />
SDOOracleDialect</strong><br />
<strong>OracleConnectionFactory</strong><br />
<strong>OracleDataStore</strong><br />
<strong>OracleDataStoreFactory</strong><br />
<strong>OracleFeatureLocking</strong><br />
<strong>OracleFeatureSource</strong><br />
<strong>OracleFeatureStore</strong><br />
<strong>OracleFeatureWriter</strong><br />
<strong>OracleOCIDataStoreFactory</strong></p>
<p>In org.geotools.data.oracle.attributeio</p>
<p>SDOAttributeIO</p>
<p>In org.geotools.data.oracle.sdo</p>
<p>GeometryConverter</p>
<p>In org.geotools.referencing.factory.epsg</p>
<ol>
<li>FactoryUsingOracleSQL</li>
<li>OracleDialectEpsgMediator</li>
<li>ThreadedOracleEpsgFactory</li>
</ol>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/movingapple.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/movingapple.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/movingapple.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/movingapple.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/movingapple.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/movingapple.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/movingapple.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/movingapple.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/movingapple.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/movingapple.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/movingapple.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/movingapple.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/movingapple.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/movingapple.wordpress.com/44/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=44&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://movingapple.wordpress.com/2010/01/25/geotools-data-access-sample-%e2%80%93-oracle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11b11c9b966120189d4aee68ec6bfe47?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">George's Ingres Blog</media:title>
		</media:content>
	</item>
		<item>
		<title>Info from wave &#8211; Jan 17 &#8211; 24</title>
		<link>http://movingapple.wordpress.com/2010/01/25/info-from-wave-jan-24/</link>
		<comments>http://movingapple.wordpress.com/2010/01/25/info-from-wave-jan-24/#comments</comments>
		<pubDate>Mon, 25 Jan 2010 13:16:32 +0000</pubDate>
		<dc:creator>George</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://movingapple.wordpress.com/?p=42</guid>
		<description><![CDATA[I just copy information about code and plan from wave and sum them up a bit 1. UML designed is updated 2. Test basic plan:Example geospatial data, loaded into Ingres, feeding it to GeoServer (leveraging Geotools with support for Ingres). run pre existing tests in http://svn.osgeo.org/geotools/branches/2.6.x/modules/library/jdbc/src/test/java/org/geotools/jdbc as well as create our own tests in http://svn.osgeo.org/geotools/branches/2.6.x/modules/unsupported/jdbc/jdbc-ingres/src/test/java/org/geotools/data/ingres [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=42&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I just copy information about code and plan from wave and sum them up a bit</p>
<p>1. UML designed is updated</p>
<p>2. Test</p>
<p>basic plan:Example geospatial data, loaded into Ingres, feeding it to GeoServer (leveraging Geotools with support for Ingres).</p>
<p>run pre existing tests in <a href="http://svn.osgeo.org/geotools/branches/2.6.x/modules/library/jdbc/src/test/java/org/geotools/jdbc" target="_blank">http://svn.osgeo.org/geotools/branches/2.6.x/modules/library/jdbc/src/test/java/org/geotools/jdbc</a> as well as create our own tests in <a href="http://svn.osgeo.org/geotools/branches/2.6.x/modules/unsupported/jdbc/jdbc-ingres/src/test/java/org/geotools/data/ingres" target="_blank">http://svn.osgeo.org/geotools/branches/2.6.x/modules/unsupported/jdbc/jdbc-ingres/src/test/java/org/geotools/data/ingres</a> (at least one per class).</p>
<p>&#8212;&#8212;</p>
<p>3.</p>
<p>look into OpenGeo <a href="http://opengeo.org/community/suite/download/" target="_blank">http</a><a href="http://opengeo.org/community/suite/download/" target="_blank">://opengeo.org/community/suite/download/</a><br />
in particular the GeoServer workshop here: <a href="http://workshops.opengeo.org/stack-intro/" target="_blank">http://workshops.opengeo.org/stack-intro/</a><br />
diagram in workshop shows GeoServer interacting directly with database. In this diagram geotools would be part of the GeoServer component as GeoServer is built on the geotoolslibary<br />
had trouble installing QGIS, potentially looking into uDig as an alternative for putting data into postgis</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/movingapple.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/movingapple.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/movingapple.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/movingapple.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/movingapple.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/movingapple.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/movingapple.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/movingapple.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/movingapple.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/movingapple.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/movingapple.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/movingapple.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/movingapple.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/movingapple.wordpress.com/42/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=42&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://movingapple.wordpress.com/2010/01/25/info-from-wave-jan-24/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11b11c9b966120189d4aee68ec6bfe47?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">George's Ingres Blog</media:title>
		</media:content>
	</item>
		<item>
		<title>GeoTools Data Access Sample &#8211; DB2</title>
		<link>http://movingapple.wordpress.com/2010/01/17/geotools-data-access-sample-db2/</link>
		<comments>http://movingapple.wordpress.com/2010/01/17/geotools-data-access-sample-db2/#comments</comments>
		<pubDate>Sun, 17 Jan 2010 14:37:48 +0000</pubDate>
		<dc:creator>George</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://movingapple.wordpress.com/?p=33</guid>
		<description><![CDATA[Search for types with &#8220;DB2&#8243; in their names. I assume that is all database-specific classes we need to implement for Ingres Data access architecture: http://docs.codehaus.org/display/GEOT/8.4+Data+Access package org.geotools.data.db2; 1.DB2ConnectionFactory: deprecated Use {@link DataSource}, {@link DataSourceUtil} and {@link DataSourceFinder} instead 2.DB2DataStore: DataStore is central in data access Instances of this class should only be obtained via DB2DataStoreFactory.createDataStore [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=33&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Search for types with &#8220;DB2&#8243; in their names. I assume that is all database-specific classes we need to implement for Ingres</p>
<p>Data access architecture: http://docs.codehaus.org/display/GEOT/8.4+Data+Access</p>
<p>package org.geotools.data.db2;</p>
<p>1.DB2ConnectionFactory:</p>
<p>deprecated Use {@link DataSource}, {@link DataSourceUtil} and {@link DataSourceFinder} instead</p>
<p>2.DB2DataStore:</p>
<p>DataStore is central in data access</p>
<p>Instances of this class should only be obtained via DB2DataStoreFactory.createDataStore or DataStoreFinder.getDataStore.</p>
<p>3.DB2DataStoreFactory</p>
<p>Implements the DataStoreFactorySpi interface to create an instance of a DB2DataStore.</p>
<p>4.DB2FeatureLocking (extends DB2FeatureStore)</p>
<p>FeatureLocking is used in writing to database.</p>
<p>5.DB2FeatureSource (extends JDBCFeatureSource)</p>
<p>FeatureSource is central in data access.</p>
<p>DB2 Feature Source implementation. Overrides functionality in JDBCFeatureSource to provide more efficient or more appropriate DB2-specific implementation.</p>
<p>6.DB2FeatureStore (extends JDBCFeatureStore)</p>
<p>FeatureStore is used in database wrting.</p>
<p>DB2 FeatureStore implementation. Overrides functionality in JDBCFeatureStore to provide more efficient or more appropriate DB2-specific implementation.</p>
<p>7.DB2FeatureTypeHandler (extends FeatureTypeHandler)</p>
<p>Override methods from FeatureTypeHandler for DB2-specific handling.</p>
<p>(need to research how it is used)</p>
<p>8.DB2FeatureWriter (extends JDBCTextFeatureWriter)</p>
<p>used in writing to DB</p>
<p>9.DB2FIDMapperFactory (extends DefaultFIDMapperFactory)</p>
<p>* Overrides DefaultFIDMapperFactory methods for DB2-specific handling.</p>
<p>(need to research how it is used)</p>
<p>10.DB2GeometryColumn</p>
<p>Hold information about a DB2 geometry column and provide access.</p>
<p>(need to research how it is used)</p>
<p>11.DB2SpatialCatalog</p>
<p>(need to research how it is used)</p>
<p>Manage the DB2 Spatial Extender spatial catalog information in memory to improve performance.</p>
<p>This class is not intended to be used outside the DB2 plug-in package.</p>
<p>Currently, a different catalog is managed for each DB2 database and schema specified in the creation of a DB2DataStore.  Multiple data stores created for the same database and schema can share the same catalog.</p>
<p>All schema, table and column names are case sensitive.</p>
<p>Convenience methods provided for access to various types of catalog information like type names, srid, etc.</p>
<p>* &lt;b&gt;Note: the &#8216;srid&#8217; value in DB2 is different from the srid value referenced<br />
* in OGC documents.  The OGC srid corresponds more closely to the DB2 &#8216;csid&#8217;<br />
* value. This makes life quite confusing because the DB2 &#8216;srid&#8217; is needed to<br />
* construct geometries in the database.  GeoTools needs the &#8216;csid&#8217; which<br />
* generally corresponds to an EPSG coordinate system identifier in order to<br />
* create an OGC coordinate system reference. &lt;/b&gt;</p>
<p>* &lt;b&gt; We also assume that there is a single &#8216;srid&#8217; associated with all the<br />
* geometries in a particular geometry column.  This is not required by DB2.</p>
<p>* Do we need to consider freeing this up at some point as the HashMap of<br />
* catalogs is stored in a class variable?<br />
* &lt;/p&gt;</p>
<p>12.DB2SQLBuilder (extends GeoAPISQLBuilder)</p>
<p>A DB2-specific subclass of DefaultSQLBuilder, which supports DB2 Spatial Extender geometry datatypes.</p>
<p>13.DB2NGDataStoreFactory (extends JDBCDataStoreFactory)</p>
<p>DataStoreFactory for DB2 database.</p>
<p>(Notice there are several DataStoreFactory, need to know the difference)</p>
<p>14.DB2NGJNDIDataStoreFactory (extends JDBCJNDIDataStoreFactory)</p>
<p>DataStoreFactory for DB2 database.</p>
<p>15.DB2SQLDialect (extends SQLDialect)</p>
<p>16.DB2SQLDialectBasic (extends BasicSQLDialect)</p>
<p>17.DB2SQLDialectPrepared (extends PreparedStatementSQLDialect)</p>
<p>18.DB2WKBReader</p>
<p>Version of JTS WKB Reader adjusted for DB2</p>
<p>19.DB2WKBWriter</p>
<p>Version of JTS WKB Writer adjusted for DB2</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/movingapple.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/movingapple.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/movingapple.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/movingapple.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/movingapple.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/movingapple.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/movingapple.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/movingapple.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/movingapple.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/movingapple.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/movingapple.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/movingapple.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/movingapple.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/movingapple.wordpress.com/33/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=33&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://movingapple.wordpress.com/2010/01/17/geotools-data-access-sample-db2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11b11c9b966120189d4aee68ec6bfe47?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">George's Ingres Blog</media:title>
		</media:content>
	</item>
		<item>
		<title>GeoTools Code Review &#8211; 2</title>
		<link>http://movingapple.wordpress.com/2010/01/16/geotools-code-review-2/</link>
		<comments>http://movingapple.wordpress.com/2010/01/16/geotools-code-review-2/#comments</comments>
		<pubDate>Sat, 16 Jan 2010 15:00:48 +0000</pubDate>
		<dc:creator>George</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://movingapple.wordpress.com/?p=28</guid>
		<description><![CDATA[SQLDialect /** * The driver used by JDBCDataStore to directly communicate with the database. * &#60;p&#62; * This class encapsulates all the database specific operations that JDBCDataStore * needs to function. It is implemented on a per-database basis. * &#60;/p&#62; * &#60;p&#62; *  &#60;h3&#62;Type Mapping&#60;/h3&#62; * One of the jobs of a dialect is to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=28&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>SQLDialect</p>
<p>/**<br />
* The driver used by JDBCDataStore to directly communicate with the database.<br />
* &lt;p&gt;<br />
* This class encapsulates all the database specific operations that JDBCDataStore<br />
* needs to function. It is implemented on a per-database basis.<br />
* &lt;/p&gt;<br />
* &lt;p&gt;<br />
*  &lt;h3&gt;Type Mapping&lt;/h3&gt;<br />
* One of the jobs of a dialect is to map sql types to java types and vice<br />
* versa. This abstract implementation provides default mappings for &#8220;primitive&#8221;<br />
* java types. The following mappings are provided. A &#8216;*&#8217; denotes that the<br />
* mapping is the default java to sql mapping as well.<br />
* &lt;ul&gt;<br />
*   &lt;li&gt;VARCHAR -&gt; String *<br />
*   &lt;li&gt;CHAR -&gt; String<br />
*   &lt;li&gt;LONGVARCHAR -&gt; String<br />
*   &lt;li&gt;BIT -&gt; Boolean<br />
*   &lt;li&gt;BOOLEAN -&gt; Boolean *<br />
*   &lt;li&gt;SMALLINT -&gt; Short *<br />
*   &lt;li&gt;TINYINT -&gt; Short<br />
*   &lt;li&gt;INTEGER -&gt; Integer *<br />
*   &lt;li&gt;BIGINT -&gt; Long *<br />
*   &lt;li&gt;REAL -&gt; Float *<br />
*   &lt;li&gt;DOUBLE -&gt; Double *<br />
*   &lt;li&gt;FLOAT -&gt; Double<br />
*   &lt;li&gt;NUMERIC -&gt; BigDecimal *<br />
*   &lt;li&gt;DECIMAL -&gt; BigDecimal<br />
*   &lt;li&gt;DATE -&gt; java.sql.Date *<br />
*   &lt;li&gt;TIME -&gt; java.sql.Time *<br />
*   &lt;li&gt;TIMESTAMP -&gt; java.sql.Timestmap *<br />
* &lt;/ul&gt;<br />
* Subclasses should &lt;b&gt;extend&lt;/b&gt; (not override) the following methods to<br />
* configure the mappings:<br />
* &lt;ul&gt;<br />
*   &lt;li&gt;{@link #registerSqlTypeToClassMappings(Map)}<br />
*   &lt;li&gt;{@link #registerSqlTypeNameToClassMappings(Map)}<br />
*   &lt;li&gt;{@link #registerClassToSqlMappings(Map)}<br />
* &lt;/ul&gt;<br />
* &lt;/p&gt;<br />
* &lt;p&gt;<br />
*<br />
* &lt;/p&gt;<br />
* &lt;p&gt;<br />
* This class is intended to be stateless, therefore subclasses should not<br />
* maintain any internal state. If for some reason a subclass must keep some<br />
* state around (not recommended), it must ensure that the state is accessed in<br />
* a thread safe manner.<br />
* &lt;/p&gt;</p>
<p>Hierachy:</p>
<p>-&gt;BasicSQLDialect-&gt;DB2,H2, MySQL,PostGIS,SpatialLite,SQLServer</p>
<p>-&gt;DB2SQLDialect</p>
<p>-&gt;H2Dialect</p>
<p>-&gt;My SQL Dialect</p>
<p>-&gt;PreparedStatementSQLDialect-&gt;DB2,H2,MySQL, Oracle, PostGIS</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/movingapple.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/movingapple.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/movingapple.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/movingapple.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/movingapple.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/movingapple.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/movingapple.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/movingapple.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/movingapple.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/movingapple.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/movingapple.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/movingapple.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/movingapple.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/movingapple.wordpress.com/28/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=movingapple.wordpress.com&amp;blog=10969142&amp;post=28&amp;subd=movingapple&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://movingapple.wordpress.com/2010/01/16/geotools-code-review-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/11b11c9b966120189d4aee68ec6bfe47?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">George's Ingres Blog</media:title>
		</media:content>
	</item>
	</channel>
</rss>
