15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26 package javax.xml.xpath; 27 28 import java.util.List; 29 30 /** 31 * <p><code>XPathFunction</code> provides access to XPath functions.</p> 32 * 33 * <p>Functions are identified by QName and arity in XPath.</p> 34 * 35 * @author <a href="mailto:Norman.Walsh@Sun.com">Norman Walsh</a> 36 * @author <a href="mailto:Jeff.Suttor@Sun.com">Jeff Suttor</a> 37 * @since 1.5 38 */ 39 public interface XPathFunction { 40 /** 41 * <p>Evaluate the function with the specified arguments.</p> 42 * 43 * <p>To the greatest extent possible, side-effects should be avoided in the 44 * definition of extension functions. The implementation evaluating an 45 * XPath expression is under no obligation to call extension functions in 46 * any particular order or any particular number of times.</p> 47 * 48 * @param args The arguments, <code>null</code> is a valid value. 49 * 50 * @return The result of evaluating the <code>XPath</code> function as an <code>Object</code>. 51 * 52 * @throws XPathFunctionException If <code>args</code> cannot be evaluated with this <code>XPath</code> function. 53 */ 54 public Object evaluate(List<?> args) 55 throws XPathFunctionException; 56 } | 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26 package javax.xml.xpath; 27 28 import java.util.List; 29 30 /** 31 * <p><code>XPathFunction</code> provides access to XPath functions.</p> 32 * 33 * <p>Functions are identified by QName and arity in XPath.</p> 34 * 35 * @author Norman Walsh 36 * @author Jeff Suttor 37 * @since 1.5 38 */ 39 public interface XPathFunction { 40 /** 41 * <p>Evaluate the function with the specified arguments.</p> 42 * 43 * <p>To the greatest extent possible, side-effects should be avoided in the 44 * definition of extension functions. The implementation evaluating an 45 * XPath expression is under no obligation to call extension functions in 46 * any particular order or any particular number of times.</p> 47 * 48 * @param args The arguments, <code>null</code> is a valid value. 49 * 50 * @return The result of evaluating the <code>XPath</code> function as an <code>Object</code>. 51 * 52 * @throws XPathFunctionException If <code>args</code> cannot be evaluated with this <code>XPath</code> function. 53 */ 54 public Object evaluate(List<?> args) 55 throws XPathFunctionException; 56 } |