SourceForge.net Logo
Main Overview Wiki Issues Forum Build Fisheye
Issue Details (XML | Word | Printable)

Key: CMP-462
Type: Improvement Improvement
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Shay Banon
Reporter: Ben Dotte
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Compass

Simplify hit retrieval with unmarshalling off - return the object with only its ids set

Created: 24/Sep/07 09:42 AM   Updated: 11/Mar/08 02:50 AM
Component/s: Compass::Core
Affects Version/s: 1.2 RC1
Fix Version/s: 1.2 GA


 Description  « Hide
Currently when the setting compass.osem.supportUnmarshall is set to false, calling CompassHits.data() will still cause unmarshalling to occur. It is implicitly assumed that CompassHits.resource() will get called instead to retrieve the properties stored in the index. A couple of options were presented on the mailing list to address this problem:

1. Have the ability to get the id object from the resource (if possible).
2. Have data return the object instance with only its id initialized.

The second option would be nice because Hibernate needs both the class and id to load the object, and I have not yet found an elegant way to get the class given just the data available from CompassHits.resource().

It would also be nice to be able to turn the supportUnmarshall setting off and not have to change the way search hits are retrieved.



 All   Comments   Change History      Sort Order: Ascending order - Click to sort in descending order
Shay Banon added a comment - 28/Sep/07 05:13 PM
Fixed. The object returned is the actual object with its ids set. It would be great if you could test that it works (ontop of Compass internal tests).

Ben Dotte added a comment - 05/Oct/07 02:10 PM
Works great, I can now access data() with nonmarshalling turned off and I don't get any unmarshalling exceptions anymore. Thanks!