import javax.inject.Inject;
import javax.inject.Singleton;
+import org.opendaylight.yangtools.yang.common.QNameModule;
+import org.opendaylight.yangtools.yang.common.YangNamespaceContext;
+import org.opendaylight.yangtools.yang.xpath.api.YangXPathMathMode;
+import org.opendaylight.yangtools.yang.xpath.api.YangXPathParser;
+import org.opendaylight.yangtools.yang.xpath.api.YangXPathParser.QualifiedBound;
+import org.opendaylight.yangtools.yang.xpath.api.YangXPathParser.UnqualifiedBound;
+import org.opendaylight.yangtools.yang.xpath.api.YangXPathParserFactory;
import org.opendaylight.yangtools.yang.xpath.impl.AntlrXPathParserFactory;
+/**
+ * Default implementation of {@link YangXPathParserFactory} for {@code javax.inject}-based dependency injection
+ * frameworks.
+ */
@Singleton
-public final class DefaultXPathParserFactory extends AntlrXPathParserFactory {
+public final class DefaultXPathParserFactory implements YangXPathParserFactory {
+ private final AntlrXPathParserFactory delegate = new AntlrXPathParserFactory();
+
+ /**
+ * Construct a parser factory.
+ */
@Inject
public DefaultXPathParserFactory() {
// Noop
}
+
+ @Override
+ public YangXPathParser newParser(YangXPathMathMode mathMode) {
+ return delegate.newParser(mathMode);
+ }
+
+ @Override
+ public QualifiedBound newParser(final YangXPathMathMode mathMode, final YangNamespaceContext namespaceContext) {
+ return delegate.newParser(mathMode, namespaceContext);
+ }
+
+ @Override
+ public UnqualifiedBound newParser(final YangXPathMathMode mathMode, final YangNamespaceContext namespaceContext,
+ final QNameModule defaultNamespace) {
+ return delegate.newParser(mathMode, namespaceContext, defaultNamespace);
+ }
}