Changeset 8184 for mauRepo


Ignore:
Timestamp:
22/03/12 22:57:51 (8 years ago)
Author:
mnagni
Message:

Can execute parametrised XQuery

File:
1 edited

Legend:

Unmodified
Added
Removed
  • mauRepo/newmoonProject/trunk/project/xmi2rdbms/src/main/java/ndg/services/newmoon/gml/ValidateXMIModel.java

    r8175 r8184  
    3030 
    3131import java.io.File; 
     32import java.io.FileInputStream; 
    3233import java.io.IOException; 
    3334import java.io.InputStream; 
     
    3940import javax.xml.namespace.QName; 
    4041import javax.xml.parsers.ParserConfigurationException; 
     42import javax.xml.stream.XMLInputFactory; 
     43import javax.xml.stream.XMLStreamException; 
     44import javax.xml.stream.XMLStreamReader; 
    4145import javax.xml.xpath.XPathExpressionException; 
    4246import javax.xml.xquery.XQConnection; 
     
    4549import javax.xml.xquery.XQException; 
    4650import javax.xml.xquery.XQExpression; 
    47 import javax.xml.xquery.XQItemType; 
    48 import javax.xml.xquery.XQPreparedExpression; 
    4951import javax.xml.xquery.XQResultSequence; 
    5052import javax.xml.xquery.XQSequence; 
     
    122124                List items = new ArrayList();            
    123125                Iterator<String> iter = urls.iterator(); 
    124                 Document doc = null; 
    125                 InputStream is = null; 
    126126                while (iter.hasNext()) { 
    127127                        try {                            
    128                                 is = HTTPHelper.getResponseFromURL(iter.next()); 
    129                                 items.add(getXQConnection().createItemFromDocument(is, null, null)); 
     128                                items.add(getXMLStreamReader(iter.next())); 
    130129                                //is.close(); 
    131130                        } catch (NdgExecutionException e) { 
     
    135134                return getXQConnection().createSequence(items.iterator());               
    136135        }  
     136 
     137        private XMLStreamReader getXMLStreamReader(String url) throws NdgExecutionException { 
     138                XMLInputFactory factory = XMLInputFactory.newInstance(); 
     139                InputStream is = HTTPHelper.getResponseFromURL("http://jenkins.badc.rl.ac.uk/xqueries/ISO19136-V3.2-AnxE_XMI-V1.1/mapping/Register_ExternalPackages.xml"); 
     140                try { 
     141                        return factory.createXMLStreamReader(is); 
     142                } catch (XMLStreamException e) { 
     143                        throw new NdgExecutionException(e); 
     144                } 
     145        } 
    137146         
    138147        private final void doTest(final InputStream inputXML) throws XPathExpressionException, XQException, 
    139148                        ParserConfigurationException, SAXException, IOException, ResourceNotAvailable { 
    140                 Document doc = dh.parseDocument(inputXML); 
    141                  
     149                Document doc = dh.parseDocument(inputXML);               
    142150                try { 
    143151                        List<String> urls = new ArrayList<String>(); 
    144152                        urls.add("http://jenkins.badc.rl.ac.uk/xqueries/ISO19136-V3.2-AnxE_XMI-V1.1/mapping/Register_ExternalPackages.xml"); 
    145                         XQSequence sequence = getDocsSequence(urls); 
    146  
    147                          
    148                         InputStream xquery = HTTPHelper.getResponseFromURL("http://jenkins.badc.rl.ac.uk/xqueries/ISO19136-V3.2-AnxE_XMI-V1.1/test-010.xq"); 
     153                        //InputStream xquery = HTTPHelper.getResponseFromURL("http://jenkins.badc.rl.ac.uk/xqueries/ISO19136-V3.2-AnxE_XMI-V1.1/test-012.xq");                   
     154                        //InputStream xquery = HTTPHelper.getResponseFromURL("http://jenkins.badc.rl.ac.uk/xqueries/ISO19136-V3.2-AnxE_XMI-V1.1/test-018.xq"); 
     155                        InputStream xquery = HTTPHelper.getResponseFromURL("http://jenkins.badc.rl.ac.uk/xqueries/ISO19136-V3.2-AnxE_XMI-V1.1/test-027.xq");                     
    149156                        XQExpression xqpe = getXQConnection().createExpression(); 
    150                         xqpe.bindSequence(new QName("reg_external_packages") , sequence); 
     157                        xqpe.bindNode(XQConstants.CONTEXT_ITEM, doc, null); 
     158                        //xqpe.bindSequence(new QName("reg_external_packages") , getDocsSequence(urls)); 
    151159                        XQSequence res = xqpe.executeQuery(xquery); 
    152160                        while(res.next()) { 
     
    159167                } 
    160168                 
    161                 XQExpression xqe = getXQConnection().createExpression(); 
    162                 xqe.bindNode(XQConstants.CONTEXT_ITEM, doc, null); 
    163                 executeQuery(xqe); 
     169                //XQExpression xqe = getXQConnection().createExpression(); 
     170                //xqe.bindNode(XQConstants.CONTEXT_ITEM, doc, null); 
     171                //executeQuery(xqe); 
    164172        } 
    165173 
Note: See TracChangeset for help on using the changeset viewer.