On Fri, Jul 1, 2011 at 5:40 AM, Michael Bedward
<michael.bedw...@gmail.com> wrote:
> Meanwhile, for Sergey's problem perhaps we could add a function
> function to GeoTools: ie. a filter function that takes a user supplied
> function, implementing some simple interface, as a parameter.

The core of the problem is cloneability of that.
The code that clones functions is this:

        public Object visit(Function expression, Object extraData) {
                List old = expression.getParameters();
                Expression[] args = new Expression[old.size()];
                int i = 0;
                for (Iterator iter = old.iterator(); iter.hasNext(); i++) {
                        Expression exp = (Expression) iter.next();
                        args[i]= visit(exp, extraData);
                }
                return getFactory(extraData).function(expression.getName(), 
args);
        }

        public Object visit(Literal expression, Object extraData) {
                return getFactory(extraData).literal(expression.getValue());
        }

So let's say this delegate is stored in a literal so that it's still
a parameter of tha main function. How would the function
talk to the delegate? Passing down a array of objects?

public interface FunctionDelegate {
  Object doSomething(Object... params);
}

Cheers
Andrea

-- 
-------------------------------------------------------
Ing. Andrea Aime
GeoSolutions S.A.S.
Tech lead

Via Poggio alle Viti 1187
55054  Massarosa (LU)
Italy

phone: +39 0584 962313
fax:      +39 0584 962313

http://www.geo-solutions.it
http://geo-solutions.blogspot.com/
http://www.youtube.com/user/GeoSolutionsIT
http://www.linkedin.com/in/andreaaime
http://twitter.com/geowolf

-------------------------------------------------------

------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
Geotools-gt2-users mailing list
Geotools-gt2-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users

Reply via email to