Class FilterFilter

    • Field Detail

      • insideFilter

        protected boolean insideFilter
        Whether Whether we are currently processing a filter.
    • Constructor Detail

      • FilterFilter

        public FilterFilter​(FilterHandler parent,
                            SimpleFeatureType schema)
        Constructor with parent, which must implement GMLHandlerJTS.
        Parameters:
        parent - The parent of this filter, to recieve the filters created.
        schema - The schema that the filter will be used against.
      • FilterFilter

        public FilterFilter​(FilterHandler parent,
                            SimpleFeatureType schema,
                            boolean convertLiteralToNumber)
        Constructor with parent, which must implement GMLHandlerJTS.
        Parameters:
        parent - The parent of this filter, to recieve the filters created.
        schema - The schema that the filter will be used against.
    • Method Detail

      • startElement

        public void startElement​(String namespaceURI,
                                 String localName,
                                 String qName,
                                 Attributes atts)
                          throws SAXException
        Checks the name of the element, and sends to the appropriate filter creation factory.
        Specified by:
        startElement in interface ContentHandler
        Overrides:
        startElement in class XMLFilterImpl
        Parameters:
        namespaceURI - The namespace of the element.
        localName - The local name of the element.
        qName - The full name of the element, including namespace prefix.
        atts - The element attributes.
        Throws:
        SAXException - Some parsing error occured while reading filter.
      • characters

        public void characters​(char[] chars,
                               int start,
                               int length)
                        throws SAXException
        Reads the only internal characters read by filters. If we are in a distance filter than the distance is set in the filter factory, if not we forward directly along to the expression factory.
        Specified by:
        characters in interface ContentHandler
        Overrides:
        characters in class XMLFilterImpl
        Parameters:
        chars - Raw coordinate string from the filter document.
        start - Beginning character position of raw string.
        length - Length of the character string.
        Throws:
        SAXException - Some parsing error occurred while reading coordinates.
      • endElement

        public void endElement​(String namespaceURI,
                               String localName,
                               String qName)
                        throws SAXException
        Checks for filter element end and - if not a Filter then sends it directly to the appropriate filter factory.
        Specified by:
        endElement in interface ContentHandler
        Overrides:
        endElement in class XMLFilterImpl
        Parameters:
        namespaceURI - Namespace of the element.
        localName - Local name of the element.
        qName - Full name of the element, including namespace prefix.
        Throws:
        SAXException - Parsing error occurred while reading coordinates.
      • geometry

        public void geometry​(Geometry geometry)
                      throws RuntimeException
        Recieves a geometry from its child filter.
        Specified by:
        geometry in interface GMLHandlerJTS
        Parameters:
        geometry - The geometry from the filter.
        Throws:
        RuntimeException - if the filterFactory can't handle the geometry
        TODO:
        REVISIT: can we throw another exception?
      • convertType

        protected static short convertType​(String filterType)
        Converts the string representation of the expression to the AbstractFilter or DefaultExpression short type.
        Parameters:
        filterType - Type of filter for check.
        Returns:
        the short representation of the filter.