Looks like you have been busy Jody. One thing I ask, can you separate 
"cleanup" commits. It makes commit logs hard to follow when they are 
riddled with formatting changes. I am all for cleaning up the 
formatting, just prefer they be done in a separate commit.

Jody Garnett wrote:
> Turns out the JDBCFeatureReader copy constructor just missed the
> feature source field; all tests now pass with the event notification
> code in.
> 
> I am going to go on to write test cases covering the event
> notification code; I think I am being held up over some of the tests
> not working for postgis; perhaps I will switch to hibernate.
> 
> Jody
> 
> On Sun, May 10, 2009 at 11:27 AM, Jody Garnett <[email protected]> wrote:
>> Hi Justin:
>>
>> A bit more debugging:
>> - featureSource is only set to null during a call to cleanup()
>> - the only test that is failing here is the
>> JDBCDataStoreAPITest.testGetFeaturesWriterAdd. This test skips over
>> all the content and then starts adding stuff to the end
>>
>> I suspect that cleanup() is getting automatically called...checking it out 
>> now.
>>
>> Okay that was not the case - what happens is when
>> JDBCUpdateInsertFeatureWriter runs off the end and goes to pass over
>> control to an internal JDBCInsertFeatureWriter:
>>        if ( !hasNext ) {
>>            //update phase is up, switch to insert mode
>>            inserter = new JDBCInsertFeatureWriter( this );
>>            return inserter.hasNext();
>>        }
>> The origional JDBCUpdateInsertFeatureWriter has already cleaned up
>> itself; so a null value for dataStore and featureSource are copied
>> over.
>>
>> Aside: I also had to add some implementation to your ResultSetFeature
>> in order to have access to the before and after bounds (I made sure to
>> only calculate the bounds if we actually have anyone at all
>> listening).
>>
>> Jody
>>
>> On Sun, May 10, 2009 at 2:23 AM, Jody Garnett <[email protected]> wrote:
>>> Hi Justin:
>>>
>>> I have added event notification methods to ContentDataStore; and am
>>> having a bit of fun hooking up things in jdbc-ng for testing...
>>> consider the following JDBCInsertFeatureWriter method as an example:
>>>
>>>    public void write() throws IOException {
>>>        try {
>>>            //do the insert
>>>            dataStore.insert(last, featureType, st.getConnection());
>>>
>>>            //the datastore sets as userData, grab it and update the fid
>>>            String fid = (String) last.getUserData().get( "fid" );
>>>            last.setID( fid );
>>>
>>>            ContentEntry entry = featureSource.getEntry();
>>>            ContentState state = entry.getState( this.tx );
>>>            state.fireFeatureAdded( featureSource, last );
>>>        } catch (SQLException e) {
>>>            throw (IOException) new IOException().initCause(e);
>>>        }
>>>    }
>>>
>>> I expected to have access to the ContentState directly when working;
>>> but JDBCInsertFeatureWriter  made me take a long walk to get it ...and
>>> then even that did not work as  this.featureSource is null.
>>>
>>> I am calling it a night; I can commit the changes to the
>>> ContentDataStore classes and send you the patch for jdbc-ng. I have
>>> only hooked up the basics (add,modify,remove) and gotten batched
>>> feature events populated; I still need to find out where the
>>> commit/rollback code is and make sure they actually issue the batch
>>> feature event notification.
>>>
>>> Jody
>>>


-- 
Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.

------------------------------------------------------------------------------
The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your
production scanning environment may not be a perfect world - but thanks to
Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700
Series Scanner you'll get full speed at 300 dpi even with all image 
processing features enabled. http://p.sf.net/sfu/kodak-com
_______________________________________________
Geotools-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to