Package org.openoffice.xmerge

Examples of org.openoffice.xmerge.ConvertData


        
       }
       else
       {
           cv.addInputStream(name,(InputStream)xis,false);
           ConvertData dataOut = cv.convert();
        
           Enumeration docEnum = dataOut.getDocumentEnumeration();
        
           if (docEnum.hasMoreElements()){
             Document docOut      = (Document)docEnum.nextElement();
             String fileName      = docOut.getFileName();
             docOut.write(newxos);
            
             newxos.flush();
             newxos.close();
            
         
             int i=1;
             while (docEnum.hasMoreElements() && sURL.startsWith("file:")) {
           //URI uri=new URI(sFileName);
           URI uri=new URI(sURL);
           String  newFileName= getPath(uri);
          
              
           //System.out.println("\nURI: "+uri.getPath());
           File newFile=null;
           if (newFileName.lastIndexOf(".")!=-1){
               newFile =new File(newFileName.substring(0,newFileName.lastIndexOf("."))+String.valueOf(i)+newFileName.substring(newFileName.lastIndexOf(".")));
           }
           else{
              newFile =new File(newFileName.concat(String.valueOf(i)));
           }
              
           FileOutputStream fos = new FileOutputStream(newFile);
           docOut      = (Document)docEnum.nextElement();
           fileName      = docOut.getFileName();
           docOut.write(fos);
           fos.flush();
           fos.close();
           i++;
          
             }
       
           }  
       }
       ConverterInfoMgr.removeByJar(jarName);
     }
     catch (StackOverflowError sOE){
         System.out.println("\nERROR : Stack OverFlow. \n Increase of the JRE by adding the following line to the end of the javarc file \n \"-Xss1m\"\n");
    
     }
     catch (Exception e) {
         System.out.println("Error:"+e);
          throw new IOException("Xmerge Exception");
         }
       }
       else{
   
     try {
          //Check to see if jar contains a plugin Impl
             ConverterInfoMgr.addPlugIn(ciEnum);
             ConverterFactory cf = new ConverterFactory();
       Convert cv = cf.getConverter(ConverterInfoMgr.findConverterInfo(sdMime,offMime),true);
       if (cv == null) {
           System.out.println("\nNo plug-in exists to convert to <staroffice/sxw> from <specified format>");
       }
       else
       {
                             /*
                             ByteArrayOutputStream bout = new ByteArrayOutputStream();
                             byte[][] buf = new byte[1][4096];
                             int n=0;
                             while ((n=xml.readSomeBytes(buf, 4096))>0)
                                 bout.write(buf[0], 0, n);
                             ByteArrayInputStream bin = new ByteArrayInputStream(bout.toByteArray());
                             cv.addInputStream(name, bin, false);
                            */
           cv.addInputStream(name,(InputStream)xis,false);
           //System.out.println("\nConverting");
           ConvertData dataIn = cv.convert();
           //System.out.println("\nFinished Converting");
           Enumeration docEnum = dataIn.getDocumentEnumeration();
           while (docEnum.hasMoreElements()) {
         OfficeDocument docIn      = (OfficeDocument)docEnum.nextElement();      
       
         docIn.write(newxos,false);
           }
View Full Code Here


  String docName = sxwDoc.getName();
  org.w3c.dom.Document domDoc = sxwDoc.getContentDOM();
  org.w3c.dom.Document metaDoc = sxwDoc.getMetaDOM();
  org.w3c.dom.Document styleDoc = sxwDoc.getStyleDOM();
  ByteArrayOutputStream baos= new ByteArrayOutputStream();
         ConvertData cd = new ConvertData();
  Node offnode = (Node)domDoc.getDocumentElement();
  if (!(offnode.getNodeName()).equals("office:document")){
      try{
      DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
      DocumentBuilder builder= builderFactory.newDocumentBuilder();
      DOMImplementation domImpl = builder.getDOMImplementation();
      DocumentType docType =domImpl.createDocumentType("office:document","-//OpenOffice.org//DTD OfficeDocument 1.0//EN",null);
      org.w3c.dom.Document newDoc = domImpl.createDocument("http://openoffice.org/2000/office","office:document",docType);

     
      Element rootElement=newDoc.getDocumentElement();
      rootElement.setAttribute("xmlns:office","http://openoffice.org/2000/office");
      rootElement.setAttribute("xmlns:style","http://openoffice.org/2000/style" );
      rootElement.setAttribute("xmlns:text","http://openoffice.org/2000/text");
       rootElement.setAttribute("xmlns:table","http://openoffice.org/2000/table");

      rootElement.setAttribute("xmlns:draw","http://openoffice.org/2000/drawing");
      rootElement.setAttribute("xmlns:fo","http://www.w3.org/1999/XSL/Format" );
      rootElement.setAttribute("xmlns:xlink","http://www.w3.org/1999/xlink" );
      rootElement.setAttribute("xmlns:dc","http://purl.org/dc/elements/1.1/" );
      rootElement.setAttribute("xmlns:meta","http://openoffice.org/2000/meta" );
      rootElement.setAttribute("xmlns:number","http://openoffice.org/2000/datastyle" );
      rootElement.setAttribute("xmlns:svg","http://www.w3.org/2000/svg" );
      rootElement.setAttribute("xmlns:chart","http://openoffice.org/2000/chart" );
      rootElement.setAttribute("xmlns:dr3d","http://openoffice.org/2000/dr3d" );
      rootElement.setAttribute("xmlns:math","http://www.w3.org/1998/Math/MathML" );
      rootElement.setAttribute("xmlns:form","http://openoffice.org/2000/form" );
      rootElement.setAttribute("xmlns:script","http://openoffice.org/2000/script" );
      rootElement.setAttribute("xmlns:config","http://openoffice.org/2001/config" );
      rootElement.setAttribute("office:class","text" );
      rootElement.setAttribute("office:version","1.0");

      NodeList nodeList;
      Node tmpNode;
      Node rootNode = (Node)rootElement;
      if (metaDoc !=null){
    nodeList= metaDoc.getElementsByTagName(TAG_OFFICE_META);
    if (nodeList.getLength()>0){
        tmpNode = newDoc.importNode(nodeList.item(0),true);
        rootNode.appendChild(tmpNode);
    }
      } if (styleDoc !=null){
    nodeList= styleDoc.getElementsByTagName(TAG_OFFICE_STYLES);
    if (nodeList.getLength()>0){
        tmpNode = newDoc.importNode(nodeList.item(0),true);
        rootNode.appendChild(tmpNode);
    }
      }if (domDoc !=null){
    nodeList= domDoc.getElementsByTagName(TAG_OFFICE_AUTOMATIC_STYLES);
    if (nodeList.getLength()>0){
        tmpNode = newDoc.importNode(nodeList.item(0),true);
        rootNode.appendChild(tmpNode);
    }
    nodeList= domDoc.getElementsByTagName(TAG_OFFICE_BODY)
    if (nodeList.getLength()>0){
        tmpNode = newDoc.importNode(nodeList.item(0),true);
        rootNode.appendChild(tmpNode);
    }
      }
      domDoc=newDoc;
      }catch(Exception e){
    System.out.println("\nAn Exception occurred with Xslt Serializer"+e);
      }
    
  }
 
  try{
       baos=transform(domDoc);
  }
  catch (Exception e){
    System.out.println("\n Error with Xslt\n");
  }
 
  String ext = pluginFactory.getDeviceFileExtension()
        DOMDocument resultDomDoc=(DOMDocument)pluginFactory.createDeviceDocument(docName,new ByteArrayInputStream(baos.toByteArray()));
  cd.addDocument (resultDomDoc);
  return cd;
    }
View Full Code Here

     *
     *  @throws  ConvertException  If any conversion error occurs.
     *  @throws  IOException       If any I/O error occurs.
     */
    public ConvertData serialize() throws IOException, ConvertException {     
        ConvertData cd = new ConvertData();
       
        org.w3c.dom.Document doc = sxwDoc.getContentDOM();
       
        // Load any style info before traversing the document content tree
        loadStyles();
       
        NodeList list = doc.getElementsByTagName(TAG_OFFICE_BODY);
       
        int len = list.getLength();
        if (len > 0) {
            Node node = list.item(0);
            traverseBody(node);
        }
       
        cd.addDocument(pswDoc);
       
        return cd;
    }
View Full Code Here

        }

        // create a ConvertData object.
        //
        Record records[] = encoder.getRecords();
        ConvertData cd = new ConvertData();
       
        PalmDocument palmDoc = new PalmDocument(docName,
            DocConstants.CREATOR_ID, DocConstants.TYPE_ID,
            0, PalmDB.PDB_HEADER_ATTR_BACKUP, records);

        cd.addDocument(palmDoc);
        return cd;
    }
View Full Code Here

        FileInputStream fis = new FileInputStream(srcFile);
        FileOutputStream fos = new FileOutputStream(dstFile);
       
        conv.addInputStream(srcFile, fis);
       
        ConvertData dataOut;
        try {
            dataOut = conv.convert();
        }
        catch (Exception e) {
            return false;
        }
       
        if (dataOut == null) {
            return false;
        }

        // Get the document and write it out.
        Document doc = (Document)dataOut.getDocumentEnumeration().nextElement();     
        if (doc == null) {
            return false;
        }
       
        doc.write(fos);
View Full Code Here

    public Document deserialize() throws IOException, ConvertException {

        int numberOfPDBs = cd.getNumDocuments();
        Document doc = null;
        int i=0;
        ConvertData cdOut;
        Enumeration e = cd.getDocumentEnumeration();
        while (e.hasMoreElements()) {
            PalmDocument palmDoc = (PalmDocument) e.nextElement();
            PalmDB pdb = palmDoc.getPdb();
View Full Code Here

            System.out.println("\nFile <" + processFile + "> is not in <" +
                fromMime + "> format");
            throw new IllegalArgumentException();
        }

        ConvertData dataOut = null;

        try {
            dataOut = myConvert.convert();
        } catch (Exception convertExcept) {
            System.out.println("\nThere was an error in the conversion");
            convertExcept.printStackTrace();
        }

        if (dataOut != null ) {

            if (mergeFile == null) {
                Enumeration docEnum = dataOut.getDocumentEnumeration();
                while (docEnum.hasMoreElements()) {
                    Document docOut      = (Document)docEnum.nextElement();
                    String fileName      = docOut.getFileName();
                    try {
                        FileOutputStream fos = new FileOutputStream(fileName);
                        docOut.write(fos);
                        fos.flush();
                        fos.close();
                    } catch (Exception writeExcept) {
                        System.out.println("\nThere was an writing out file <" +
                            fileName + ">");
                        writeExcept.printStackTrace();
                    }
                }
            } else {
                try {
                    FileInputStream mergeIS = new FileInputStream(mergeFile);
                    Document mergeDoc = myConvert.getOfficeDocument(mergeFile, mergeIS);
                    DocumentMerger merger = myConvert.getDocumentMerger(mergeDoc);
                    Enumeration mergeDocEnum = dataOut.getDocumentEnumeration();
                    Document convertedFile = (Document)mergeDocEnum.nextElement();

                    merger.merge(convertedFile);
          mergeIS.close();
View Full Code Here

          }
    }

        // Get the number of sheets in the workbook
        // This will equal the number of PDBs we need
        ConvertData cd = new ConvertData();
    Workbook wb = ((PocketExcelEncoder) encoder).getWorkbook();
    cd.addDocument(wb);

        return cd;
    }
View Full Code Here

        boolean bFlat = sFileName.toLowerCase().endsWith(".xml");
        // Determine the type of document by the extension:
        boolean bCalc = sFileName.toLowerCase().endsWith(".sxc");
        boolean bImpress = sFileName.toLowerCase().endsWith(".sxi");

        ConvertData dataOut = null;

        // Create and use the converter
        // No longer uses the XMerge interface
        // Somewhat messy, should be changed if XMerge is discarded
        OfficeDocument oooDoc;
        if (bCalc) {
            oooDoc = new SxcDocument(sFileName);
        }
        else if (bImpress) {
            oooDoc = new SxiDocument(sFileName);
        }
        else {
            oooDoc = new SxwDocument(sFileName);
        }
        File f = new File(sFileName);
        // Make sure the input file actually exists before using it
        try {
            if (!f.exists()) {
                System.out.println("I'm sorry, I can't find "+sFileName);
                System.exit(0);
            }
            FileInputStream fis = new FileInputStream(f);
            oooDoc.read(fis,!bFlat);
        }
        catch (IOException e) {
               System.out.println("Oops, there was an error reading "+sFileName);
               e.printStackTrace();
        }

        try {
            if (toMime.equals(MIMETypes.LATEX)) {
                writer2latex.latex.ConverterPalette converter
                    = new writer2latex.latex.ConverterPalette((SxwDocument)oooDoc,sConfigFileName);
                converter.setOutFileName(sOutFileName);
                dataOut = converter.convert();
            }
            else if (toMime.equals(MIMETypes.BIBTEX)) {
                writer2latex.bibtex.DocumentSerializerImpl converter
                    = new writer2latex.bibtex.DocumentSerializerImpl((SxwDocument)oooDoc);
                converter.setOutFileName(sOutFileName);
                dataOut = converter.serialize();
            }
/* disabled XHTML filter part     
            else if (toMime.equals(MIMETypes.XHTML)) {
                writer2latex.xhtml.DocumentSerializerImpl converter
                    = new writer2latex.xhtml.DocumentSerializerImpl(oooDoc,
                            XhtmlDocument.XHTML10, sConfigFileName);
                converter.setOutFileName(sOutFileName);
                dataOut = converter.serialize();
            }
            else if (toMime.equals(MIMETypes.XHTML_MATHML)) {
                writer2latex.xhtml.DocumentSerializerImpl converter
                    = new writer2latex.xhtml.DocumentSerializerImpl(oooDoc,
                            XhtmlDocument.XHTML_MATHML, sConfigFileName);
                converter.setOutFileName(sOutFileName);
                dataOut = converter.serialize();
            }
            else if (toMime.equals(MIMETypes.XHTML_MATHML_XSL)) {
                writer2latex.xhtml.DocumentSerializerImpl converter
                    = new writer2latex.xhtml.DocumentSerializerImpl(oooDoc,
                            XhtmlDocument.XHTML_MATHML_XSL, sConfigFileName);
                converter.setOutFileName(sOutFileName);
                dataOut = converter.serialize();
            }
      */
        }
        catch (Exception e) {
            System.out.println("Conversion failed");
            e.printStackTrace();
        }

        // TODO: Should do some further checking on the feasability of writing
        // the directory and the files.
        File dir = new File(sOutPathName);
        if (!dir.exists()) { dir.mkdirs(); }

        Enumeration docEnum = dataOut.getDocumentEnumeration();
        while (docEnum.hasMoreElements()) {
            Document docOut      = (Document)docEnum.nextElement();
            String fileName      = sOutPathName+docOut.getFileName();
            try {
                FileOutputStream fos = new FileOutputStream(fileName);
View Full Code Here

        }

        // create a ConvertData object.
        //
        Record records[] = encoder.getRecords();
        ConvertData cd = new ConvertData();
       
        PalmDocument palmDoc = new PalmDocument(docName,
            DocConstants.CREATOR_ID, DocConstants.TYPE_ID,
            0, PalmDB.PDB_HEADER_ATTR_BACKUP, records);

        cd.addDocument(palmDoc);
        return cd;
    }
View Full Code Here

TOP

Related Classes of org.openoffice.xmerge.ConvertData

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.