Changeset 879


Ignore:
Timestamp:
11/11/10 22:14:24 (14 years ago)
Author:
gaba
Message:
 
Location:
MDService2/trunk/MDService2/src/eu/clarin/cmdi/mdservice
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • MDService2/trunk/MDService2/src/eu/clarin/cmdi/mdservice/action/CompRegistryProxyAction.java

    r849 r879  
    9292                                        Admin.notifyUser("CCCRPA." + getFullFormat());
    9393                                        MDTransformer.getMDTransformer().setSrcFile(getTargetRequest());
    94                                         _sourceStream = MDTransformer.getMDTransformer().transformXML(__sourceStream, getFullFormat(),null,null,null,null,null,null);
     94                                        MDTransformer.getMDTransformer().setParams(createTransformerParams());
     95                                        _sourceStream = MDTransformer.getMDTransformer().transformXML(__sourceStream);//, getFullFormat(),null,null,null,null,null,null);
    9596                                        Admin.notifyUser("CRPA.- elements");
    9697                                        setActionkey("elements");
     
    118119                                // set URL as srcFile (for MDTransformer to pass to xsl-scripts)
    119120                                MDTransformer.getMDTransformer().setSrcFile(getTargetRequest());
    120                                 _resultStream = MDTransformer.getMDTransformer().transformXML(_sourceStream, getFullFormat());
     121                                MDTransformer.getMDTransformer().setParams(MDTransformer.createParamsMap(getFullFormat()));
     122                                _resultStream = MDTransformer.getMDTransformer().transformXML(_sourceStream);//, getFullFormat());
    121123                                       
    122124                        }
  • MDService2/trunk/MDService2/src/eu/clarin/cmdi/mdservice/action/GenericProxyAction.java

    r870 r879  
    1111import java.net.URISyntaxException;
    1212import java.net.URL;
     13import java.util.HashMap;
    1314
    1415import javax.servlet.http.HttpServletRequest;
     
    367368               
    368369                MDTransformer.getMDTransformer().setSrcFile(file.toURL());
    369                 InputStream jsonstream = MDTransformer.getMDTransformer().transformXML(in, "xml2json");
     370                MDTransformer.getMDTransformer().setParams(MDTransformer.createParamsMap("xml2json"));
     371                InputStream jsonstream = MDTransformer.getMDTransformer().transformXML(in);
    370372               
    371373                JSONObject json = JSONObject.fromObject(convertStreamToString(jsonstream));
     
    437439                req_key += duration_d + "//-";
    438440                return req_key;
     441        }
     442       
     443        public HashMap<String,String> createTransformerParams(){
     444               
     445                HashMap<String,String> hm = new HashMap<String,String>();
     446               
     447            if (getFullFormat() != null){
     448                        hm.put("format", getFullFormat());
     449            }
     450                if (getColumns() != null){
     451                        hm.put("cols", getColumns());
     452                }
     453                if (getStartRecord() != null){
     454                        hm.put("startRecord", getStartRecord());
     455                }
     456                if (getMaximumRecords() != null){
     457                        hm.put("maximumRecords", getMaximumRecords()); 
     458                }
     459                if (getLang() != null){
     460                        hm.put("lang", getLang());
     461                }
     462                if (getQ() != null){
     463                        hm.put("q", getQ());
     464                }
     465                if (getRepository() == 0){
     466                hm.put("repository_uri", String.valueOf(getRepository()));     
     467                }
     468       
     469                return hm;
     470               
    439471        }
    440472       
     
    481513                        // getColumns
    482514                        Admin.notifyUser("GPA.getRepository, before xsl:" + getRepository());
    483                         resultStream = MDTransformer.getMDTransformer().transformXML(sourceStream, getFullFormat(), getColumns(), getStartRecord(), getMaximumRecords(),getLang(),getQ(),String.valueOf(getRepository()));
     515                        MDTransformer.getMDTransformer().setParams(createTransformerParams());
     516                        resultStream = MDTransformer.getMDTransformer().transformXML(sourceStream);//, getFullFormat(), getColumns(), getStartRecord(), getMaximumRecords(),getLang(),getQ(),String.valueOf(getRepository()));
    484517                }
    485518                       
  • MDService2/trunk/MDService2/src/eu/clarin/cmdi/mdservice/action/GenericWorkspaceAction.java

    r676 r879  
    181181                        MDTransformer.getMDTransformer().setSrcFile(getURL());
    182182                        //InputStream tmp_s =  MDTransformer.getMDTransformer().transformXML(sourceStream, "attr2elements");
    183                         InputStream s =  MDTransformer.getMDTransformer().transformXML(sourceStream, getFullFormat());
     183                        MDTransformer.getMDTransformer().setParams(MDTransformer.createParamsMap(getFullFormat()));
     184                        InputStream s =  MDTransformer.getMDTransformer().transformXML(sourceStream);//, getFullFormat());
    184185                        resultStream = getPart(s);
    185186                }
  • MDService2/trunk/MDService2/src/eu/clarin/cmdi/mdservice/action/MDTransformer.java

    r849 r879  
    1313import java.io.StringWriter;
    1414import java.net.URL;
     15import java.util.HashMap;
     16import java.util.Iterator;
     17import java.util.Map;
     18import java.util.Set;
    1519
    1620import javax.xml.parsers.DocumentBuilder;
     
    2731import javax.xml.transform.stream.StreamSource;
    2832
     33import ognl.IntHashMap.Entry;
     34
    2935import org.w3c.dom.Document;
    3036import org.w3c.dom.Element;
     
    4551
    4652        private URL srcFile ;
    47        
     53        private HashMap<String,String> params;
    4854               
    4955        private static MDTransformer singleton;
     
    7076        }
    7177
     78        public void setParams(HashMap<String,String> params){
     79                this.params = params;
     80        }
     81       
     82        public HashMap<String,String> getParams(){
     83                return this.params;
     84        }
    7285        /**
    7386         * get the path to the transform-xsl file from properties, based on the key
     
    156169        }
    157170       
     171        public String getTranskey(){
     172                return params.get("format");
     173        }
     174       
     175        public void SetTransformerParameters(Transformer transformer){
     176               
     177                Set<Map.Entry<String,String>> set = params.entrySet();
     178                Iterator<Map.Entry<String,String>> i = set.iterator();
     179
     180            while(i.hasNext()){
     181              Map.Entry<String,String> e = (Map.Entry<String,String>)i.next();
     182              transformer.setParameter((String)e.getKey(), (String)e.getValue());
     183            }
     184        }
     185       
    158186        /**
    159187         * The main method for transforming, applies the appropriate (based on the transkey) stylesheet on the xml-stream
     
    164192         * @throws TransformerException
    165193         * @throws IOException
    166          */             
    167         public void transformXML (InputStream in, String transkey, String cols, String startRecord, String maximumRecords, String lang, String q, String repositoryURI, OutputStream out ) throws TransformerException, IOException {
     194         */
     195        public void transformXML (InputStream in, OutputStream out ) throws TransformerException, IOException {
     196        //public void transformXML (InputStream in, String transkey, String cols, String startRecord, String maximumRecords, String lang, String q, String repositoryURI, OutputStream out ) throws TransformerException, IOException {
    168197       
    169198                // Create a transform factory instance.
     
    175204                        //String xslpath = getXSLPath(transkey);               
    176205                Transformer transformer = tfactory.newTransformer(
    177                                                                         getXSLStreamSource(transkey));
    178                
    179                 transformer.setParameter("q", q);
     206                                                                        getXSLStreamSource(getTranskey()));
     207                SetTransformerParameters(transformer);
     208/*              transformer.setParameter("q", q);
    180209                transformer.setParameter("lang", lang);
    181210                transformer.setParameter("format", transkey);
     
    190219                        transformer.setParameter("repository_uri", repositoryURI);
    191220                }
     221                */
    192222                /*       transformer.setParameter("cols", "<col label='id'>Id</col>" +
    193223                                                                                 "<col label='id'>idno</col>" +
     
    238268         * @throws TransformerException
    239269         */
    240         public InputStream transformXML ( InputStream xmlStream, String transkey, String cols, String startRecord, String maximumRecords, String lang, String q, String repositoryURI) throws IOException, InterruptedException, TransformerException {
     270        public InputStream transformXML ( InputStream xmlStream) throws IOException, InterruptedException, TransformerException {
     271        //public InputStream transformXML ( InputStream xmlStream, String transkey, String cols, String startRecord, String maximumRecords, String lang, String q, String repositoryURI) throws IOException, InterruptedException, TransformerException {
    241272               
    242273                ByteArrayOutputStream out = new ByteArrayOutputStream();
    243                 transformXML(xmlStream, transkey, cols, startRecord, maximumRecords, lang, q, repositoryURI, out);             
     274                transformXML(xmlStream, out);
     275                //transformXML(xmlStream, transkey, cols, startRecord, maximumRecords, lang, q, repositoryURI, out);           
    244276            InputStream transformedStream = new ByteArrayInputStream(out.toByteArray());
    245277            //Admin.notifyUser("transformedStream:" + transformedStream.toString());
     
    256288         * @throws TransformerException
    257289         */
     290        /*
    258291        public InputStream transformXML ( InputStream xmlStream, String transkey) throws IOException, InterruptedException, TransformerException {
    259292               
     
    264297            return transformedStream;
    265298        }
    266 
     299*/
    267300        /**
    268301         * another wrapper for the main method allowing to directly pass a URL to the source-xml   
     
    273306         * @throws IOException
    274307         */
    275         public InputStream transformXML (URL xmlFile, String transkey ) throws IOException, InterruptedException, TransformerException {
     308        public InputStream transformXML (URL xmlFile ) throws IOException, InterruptedException, TransformerException {
     309        //public InputStream transformXML (URL xmlFile, String transkey ) throws IOException, InterruptedException, TransformerException {
    276310                srcFile= xmlFile;
    277311                InputStream  xmlStream =
    278312             new BufferedInputStream(new FileInputStream(xmlFile.getPath()));
    279313           
    280                 return transformXML ( xmlStream, transkey);
     314                return transformXML ( xmlStream);
    281315        }
    282316
     
    289323         * @return
    290324         */
    291         public String transformXML (String xml, String transkey ) {
     325        public String transformXML (String xml) {
     326        //public String transformXML (String xml, String transkey ) {
    292327                String result="";
    293328                try {
     
    299334                // Create a transformer for the stylesheet.
    300335                Transformer transformer = tfactory.newTransformer(
    301                                                 getXSLStreamSource(transkey));
     336                                                getXSLStreamSource(getTranskey()));
    302337/* instead of:
    303338                InputStream  xslIS       =
     
    307342                    tfactory.newTransformer(new StreamSource(xslIS));
    308343                    */
    309                 transformer.setParameter("format", transkey);
     344                this.SetTransformerParameters(transformer);
     345                //transformer.setParameter("format", transkey);
    310346               
    311347                //Admin.notifyUser("transformer.parmformat" + transformer.getParameter("format"));
     
    329365
    330366       
    331 
     367        public static HashMap<String,String> createParamsMap(String transkey){
     368                HashMap<String,String> hm = new HashMap<String,String>();
     369               
     370            if (transkey != null){
     371                        hm.put("format", transkey);
     372            }
     373            return hm;
     374        }
    332375}
  • MDService2/trunk/MDService2/src/eu/clarin/cmdi/mdservice/action/TermsProxyAction.java

    r862 r879  
    3838        }
    3939       
     40        @Override
     41        public String getFullFormat() {         
     42                return "terms2extract";
     43        }
    4044        /*
    4145         @Override
     
    125129                        InputStream resultStream=null;
    126130                        try {
    127                                 resultStream = MDTransformer.getMDTransformer().transformXML(stream_matrix_all, "terms2extract", getColumns(), getStartRecord(), getMaximumRecords(),getLang(),getQ(), getRepositoryPath());
     131                                MDTransformer.getMDTransformer().setParams(createTransformerParams());
     132                                resultStream = MDTransformer.getMDTransformer().transformXML(stream_matrix_all);//, "terms2extract", getColumns(), getStartRecord(), getMaximumRecords(),getLang(),getQ(), getRepositoryPath());
    128133                        } catch (InterruptedException e) {                             
    129134                                Admin.notifyUser("TPA.getSourceStream(): "+ e.getMessage());
  • MDService2/trunk/MDService2/src/eu/clarin/cmdi/mdservice/action/WorkspaceAction.java

    r860 r879  
    273273                        // set srcFile (for MDTransformer to pass to xsl-scripts)
    274274                        MDTransformer.getMDTransformer().setSrcFile(getURL());
    275                         setResultStream(MDTransformer.getMDTransformer().transformXML(in, getFullFormat()));
     275                        MDTransformer.getMDTransformer().setParams(MDTransformer.createParamsMap(getFullFormat()));
     276                        setResultStream(MDTransformer.getMDTransformer().transformXML(in));//, getFullFormat()));
    276277                        //setSessionData(getResultStream());
    277278                }
  • MDService2/trunk/MDService2/src/eu/clarin/cmdi/mdservice/model/Query.java

    r774 r879  
    393393         */
    394394        public String toXPath() {       
    395                 return MDTransformer.getMDTransformer().transformXML(toXCQL(), "XCQL2XPATH");
     395                MDTransformer.getMDTransformer().setParams(MDTransformer.createParamsMap("XCQL2XPATH"));
     396                return MDTransformer.getMDTransformer().transformXML(toXCQL());
    396397        }
    397398
  • MDService2/trunk/MDService2/src/eu/clarin/cmdi/mdservice/model/Result.java

    r627 r879  
    5858                        transformkey = parentQuery.getType() + "2" + format;
    5959                        Admin.notifyUser("transformkey: " + transformkey );
    60                         return MDTransformer.getMDTransformer().transformXML(rawresult, transformkey);
     60                        MDTransformer.getMDTransformer().setParams(MDTransformer.createParamsMap(transformkey));
     61                        return MDTransformer.getMDTransformer().transformXML(rawresult);//, transformkey);
    6162                }       
    6263        }
Note: See TracChangeset for help on using the changeset viewer.