1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2025-07-20 16:43:05 +03:00

applied patch from Brent M Hendricks adding binding for xmlCatalogAddLocal

* python/libxml.c python/libxml.py: applied patch from
  Brent M Hendricks adding binding for xmlCatalogAddLocal
Daniel
This commit is contained in:
Daniel Veillard
2003-04-23 07:36:50 +00:00
parent 45269b8bb9
commit 5439624bd9
3 changed files with 41 additions and 0 deletions

View File

@ -2545,6 +2545,36 @@ libxml_xmlNewNode(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)
return (py_retval);
}
/************************************************************************
* *
* Local Catalog stuff *
* *
************************************************************************/
static PyObject *
libxml_addLocalCatalog(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)
{
xmlChar *URL;
xmlParserCtxtPtr ctxt;
PyObject *pyobj_ctxt;
if (!PyArg_ParseTuple(args, (char *)"Os:addLocalCatalog", &pyobj_ctxt, &URL))
return(NULL);
ctxt = (xmlParserCtxtPtr) PyparserCtxt_Get(pyobj_ctxt);
if (URL != NULL) {
ctxt->catalogs = xmlCatalogAddLocal(ctxt->catalogs, URL);
}
#ifdef DEBUG
printf("LocalCatalog: %s\n", URL);
#endif
Py_INCREF(Py_None);
return (Py_None);
}
/************************************************************************
* *
* The registration stuff *
@ -2574,6 +2604,7 @@ static PyMethodDef libxmlMethods[] = {
{(char *)"xmlTextReaderSetErrorHandler", libxml_xmlTextReaderSetErrorHandler, METH_VARARGS, NULL },
{(char *)"xmlTextReaderGetErrorHandler", libxml_xmlTextReaderGetErrorHandler, METH_VARARGS, NULL },
{(char *)"xmlFreeTextReader", libxml_xmlFreeTextReader, METH_VARARGS, NULL },
{(char *)"addLocalCatalog", libxml_addLocalCatalog, METH_VARARGS, NULL },
{NULL, NULL, 0, NULL}
};

View File

@ -511,6 +511,11 @@ class parserCtxtCore:
or (None,None)."""
return libxml2mod.xmlParserCtxtGetErrorHandler(self._o)
def addLocalCatalog(self, uri):
"""Register a local catalog with the parser"""
return libxml2mod.addLocalCatalog(self._o, uri)
def _xmlTextReaderErrorFunc((f,arg),msg,severity,locator):
"""Intermediate callback to wrap the locator"""
return f(arg,msg,severity,xmlTextReaderLocator(locator))