/*
* Copyright Aduna (http://www.aduna-software.com/) (c) 2008.
*
* Licensed under the Aduna BSD-style license.
*/
package org.openrdf.sail.rdbms.algebra.base;
import org.openrdf.query.algebra.QueryModelNodeBase;
import org.openrdf.query.algebra.QueryModelVisitor;
/**
* An extension to {@link QueryModelNodeBase} for SQL query algebra.
*
* @author James Leigh
*
*/
public abstract class RdbmsQueryModelNodeBase extends QueryModelNodeBase {
public <X extends Exception> void visit(QueryModelVisitor<X> visitor)
throws X
{
if (visitor instanceof RdbmsQueryModelVisitorBase) {
visit((RdbmsQueryModelVisitorBase<X>)visitor);
}
else {
visitor.meetOther(this);
}
}
public abstract <X extends Exception> void visit(RdbmsQueryModelVisitorBase<X> visitor)
throws X;
}