[ 
https://issues.apache.org/jira/browse/LUCENE-4167?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402888#comment-13402888
 ] 

David Smiley commented on LUCENE-4167:
--------------------------------------

Thanks for your input Ryan.

bq. Chris proposes that the operation should be parsed before it gets to the 
strategy and have real java functions for each operation.

makeFilter & makeQuery receives a SpatialArgs object which has already been 
parsed; it's not a string anymore.  (The "Command" design pattern, by the way). 
 And he's also proposing that SpatialArgs is gone, at least from these methods, 
and instead you get a Shape + distancePrecision pair of args.

Somewhat related to this is the Filter/Query distinction.  Minutes ago I had 
the realization that makeQuery() could have a fixed implementation based on 
makeFilter() with makeValueSource() (for the distance). It's already committed 
so you can see.  Assuming you also think it makes a good default 
implementation, this suggests any variety of makeXXXXQuery would call the same 
method, which seems less than ideal but not terrible.
                
> Remove the use of SpatialOperation
> ----------------------------------
>
>                 Key: LUCENE-4167
>                 URL: https://issues.apache.org/jira/browse/LUCENE-4167
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: modules/spatial
>            Reporter: Chris Male
>         Attachments: LUCENE-4167.patch
>
>
> Looking at the code in TwoDoublesStrategy I noticed 
> SpatialOperations.BBoxWithin vs isWithin which confused me.  Looking over the 
> other Strategys I see that really only isWithin and Intersects is supported.  
> Only TwoDoublesStrategy supports IsDisjointTo.  The remainder of 
> SpatialOperations are not supported.
> I don't think we should use SpatialOperation as this stage since it is not 
> clear what Operations are supported by what Strategys, many Operations are 
> not supported, and the code for handling the Operations is usually the same.  
> We can spin off the code for TwoDoublesStrategy's IsDisjointTo support into a 
> different Strategy.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to