com.sun.star.frame.XStorable Java Examples
The following examples show how to use
com.sun.star.frame.XStorable.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: DocumentExporter.java From noa-libre with GNU Lesser General Public License v2.1 | 6 votes |
/** * Exports document on the basis of the submitted filter and URL. * * @param document document to be exported * @param URL URL to be used * @param filter OpenOffice.org filter to be used * @param properties properties properties for OpenOffice.org * * @throws IOException if any error occurs */ public static void exportDocument(IDocument document, String URL, IFilter filter, PropertyValue[] properties) throws IOException { if(properties == null) { properties = new PropertyValue[0]; } PropertyValue[] newProperties = new PropertyValue[properties.length + 1]; for(int i=0; i<properties.length; i++) { newProperties[i] = properties[i]; } newProperties[properties.length] = new PropertyValue(); newProperties[properties.length].Name = "FilterName"; newProperties[properties.length].Value = filter.getFilterDefinition(document); XStorable xStorable = (XStorable)UnoRuntime.queryInterface(XStorable.class, document.getXComponent()); try { xStorable.storeToURL(URL, newProperties); } catch(com.sun.star.io.IOException ioException) { throw new IOException(ioException.getMessage()); } }
Example #2
Source File: DocumentWriter.java From noa-libre with GNU Lesser General Public License v2.1 | 6 votes |
/** * Stores document to the submitted URL. * * @param document document to be stored * @param URL URL to be used * @param properties properties for OpenOffice.org * * @throws IOException if any error occurs */ public static void storeDocument(IDocument document, String URL, PropertyValue[] properties) throws IOException { if(URL == null) { URL = ""; } if(properties == null && URL.length() == 0) { properties = new PropertyValue[0]; } XStorable xStorable = (XStorable)UnoRuntime.queryInterface(XStorable.class, document.getXComponent()); try { if(URL.length() != 0) { xStorable.storeToURL(URL, properties); } else { xStorable.store(); } } catch(com.sun.star.io.IOException ioException) { throw new IOException(ioException.getMessage()); } }
Example #3
Source File: DocumentWriter.java From noa-libre with GNU Lesser General Public License v2.1 | 6 votes |
/** * Stores document on the basis of the submitted xOutputStream implementation. * * @param document document to be stored * @param xOutputStream OpenOffice.org XOutputStream inplementation * @param properties properties for OpenOffice.org * * @throws IOException if any error occurs */ public static void storeDocument(IDocument document, XOutputStream xOutputStream, PropertyValue[] properties) throws IOException { if(properties == null) { properties = new PropertyValue[0]; } PropertyValue[] newProperties = new PropertyValue[properties.length + 1]; for(int i=0; i<properties.length; i++) { newProperties[i] = properties[i]; } newProperties[properties.length] = new PropertyValue(); newProperties[properties.length].Name = "OutputStream"; newProperties[properties.length].Value = xOutputStream; XStorable xStorable = (XStorable)UnoRuntime.queryInterface(XStorable.class, document.getXComponent()); try { xStorable.storeToURL("private:stream", newProperties); } catch(com.sun.star.io.IOException ioException) { throw new IOException(ioException.getMessage()); } }
Example #4
Source File: StreamOpenOfficeDocumentConverter.java From translationstudio8 with GNU General Public License v2.0 | 6 votes |
/** * Load and export. * @param inputStream * the input stream * @param importOptions * the import options * @param outputStream * the output stream * @param exportOptions * the export options * @throws Exception * the exception */ @SuppressWarnings("unchecked") private void loadAndExport(InputStream inputStream, Map/* <String,Object> */importOptions, OutputStream outputStream, Map/* <String,Object> */exportOptions) throws Exception { XComponentLoader desktop = openOfficeConnection.getDesktopObject(); Map/* <String,Object> */loadProperties = new HashMap(); loadProperties.putAll(getDefaultLoadProperties()); loadProperties.putAll(importOptions); // doesn't work using InputStreamToXInputStreamAdapter; probably because // it's not XSeekable // property("InputStream", new // InputStreamToXInputStreamAdapter(inputStream)) loadProperties.put("InputStream", new ByteArrayToXInputStreamAdapter(IOUtils.toByteArray(inputStream))); //$NON-NLS-1$ XComponent document = desktop.loadComponentFromURL( "private:stream", "_blank", 0, toPropertyValues(loadProperties)); //$NON-NLS-1$ //$NON-NLS-2$ if (document == null) { throw new OPException(Messages.getString("ooconverter.StreamOpenOfficeDocumentConverter.6")); //$NON-NLS-1$ } refreshDocument(document); Map/* <String,Object> */storeProperties = new HashMap(); storeProperties.putAll(exportOptions); storeProperties.put("OutputStream", new OutputStreamToXOutputStreamAdapter(outputStream)); //$NON-NLS-1$ try { XStorable storable = (XStorable) UnoRuntime.queryInterface(XStorable.class, document); storable.storeToURL("private:stream", toPropertyValues(storeProperties)); //$NON-NLS-1$ } finally { document.dispose(); } }
Example #5
Source File: OpenOfficeDocumentConverter.java From translationstudio8 with GNU General Public License v2.0 | 6 votes |
/** * Store document. * @param document * the document * @param outputUrl * the output url * @param storeProperties * the store properties */ @SuppressWarnings("unchecked") private void storeDocument(XComponent document, String outputUrl, Map storeProperties) throws com.sun.star.io.IOException { try { XStorable storable = (XStorable) UnoRuntime.queryInterface(XStorable.class, document); storable.storeToURL(outputUrl, toPropertyValues(storeProperties)); } finally { XCloseable closeable = (XCloseable) UnoRuntime.queryInterface(XCloseable.class, document); if (closeable != null) { try { closeable.close(true); } catch (CloseVetoException closeVetoException) { if (Converter.DEBUG_MODE) { closeVetoException.printStackTrace(); } } } else { document.dispose(); } } }
Example #6
Source File: OpenOfficeDocumentConverter.java From tmxeditor8 with GNU General Public License v2.0 | 6 votes |
/** * Store document. * @param document * the document * @param outputUrl * the output url * @param storeProperties * the store properties */ @SuppressWarnings("unchecked") private void storeDocument(XComponent document, String outputUrl, Map storeProperties) throws com.sun.star.io.IOException { try { XStorable storable = (XStorable) UnoRuntime.queryInterface(XStorable.class, document); storable.storeToURL(outputUrl, toPropertyValues(storeProperties)); } finally { XCloseable closeable = (XCloseable) UnoRuntime.queryInterface(XCloseable.class, document); if (closeable != null) { try { closeable.close(true); } catch (CloseVetoException closeVetoException) { if (Converter.DEBUG_MODE) { closeVetoException.printStackTrace(); } } } else { document.dispose(); } } }
Example #7
Source File: AbstractConversionTask.java From kkFileViewOfficeEdit with Apache License 2.0 | 5 votes |
private void storeDocument(XComponent document, File outputFile) throws OfficeException { Map<String,?> storeProperties = getStoreProperties(outputFile, document); if (storeProperties == null) { throw new OfficeException("unsupported conversion"); } try { cast(XStorable.class, document).storeToURL(toUrl(outputFile), toUnoProperties(storeProperties)); } catch (ErrorCodeIOException errorCodeIOException) { throw new OfficeException("could not store document: " + outputFile.getName() + "; errorCode: " + errorCodeIOException.ErrCode, errorCodeIOException); } catch (IOException ioException) { throw new OfficeException("could not store document: " + outputFile.getName(), ioException); } }
Example #8
Source File: AbstractConversionTask.java From kkFileView with Apache License 2.0 | 5 votes |
private void storeDocument(XComponent document, File outputFile) throws OfficeException { Map<String,?> storeProperties = getStoreProperties(outputFile, document); if (storeProperties == null) { throw new OfficeException("unsupported conversion"); } try { cast(XStorable.class, document).storeToURL(toUrl(outputFile), toUnoProperties(storeProperties)); } catch (ErrorCodeIOException errorCodeIOException) { throw new OfficeException("could not store document: " + outputFile.getName() + "; errorCode: " + errorCodeIOException.ErrCode, errorCodeIOException); } catch (IOException ioException) { throw new OfficeException("could not store document: " + outputFile.getName(), ioException); } }
Example #9
Source File: AbstractConversionTask.java From wenku with MIT License | 5 votes |
private void storeDocument(XComponent document, File outputFile) throws OfficeException { Map<String,?> storeProperties = getStoreProperties(outputFile, document); if (storeProperties == null) { throw new OfficeException("unsupported conversion"); } try { cast(XStorable.class, document).storeToURL(toUrl(outputFile), toUnoProperties(storeProperties)); } catch (ErrorCodeIOException errorCodeIOException) { throw new OfficeException("could not store document: " + outputFile.getName() + "; errorCode: " + errorCodeIOException.ErrCode, errorCodeIOException); } catch (IOException ioException) { throw new OfficeException("could not store document: " + outputFile.getName(), ioException); } }
Example #10
Source File: DocumentExporter.java From noa-libre with GNU Lesser General Public License v2.1 | 5 votes |
/** * Exports document on the basis of the submitted filter and XOutputStream implementation. * * @param document document to be stored * @param xOutputStream OpenOffice.org XOutputStream inplementation * @param filter filter to be used * @param properties properties properties for OpenOffice.org * * @throws IOException if any error occurs */ public static void exportDocument(IDocument document, XOutputStream xOutputStream, IFilter filter, PropertyValue[] properties) throws IOException { if(properties == null) { properties = new PropertyValue[0]; } PropertyValue[] newProperties = new PropertyValue[properties.length + 2]; for(int i=0; i<properties.length; i++) { newProperties[i] = properties[i]; } newProperties[properties.length] = new PropertyValue(); newProperties[properties.length].Name = "OutputStream"; newProperties[properties.length].Value = xOutputStream; newProperties[properties.length + 1] = new PropertyValue(); newProperties[properties.length + 1].Name = "FilterName"; newProperties[properties.length + 1].Value = filter.getFilterDefinition(document); XStorable xStorable = (XStorable)UnoRuntime.queryInterface(XStorable.class, document.getXComponent()); try { xStorable.storeToURL("private:stream", newProperties); } catch(com.sun.star.io.IOException ioException) { throw new IOException(ioException.getMessage()); } }
Example #11
Source File: AbstractDocument.java From noa-libre with GNU Lesser General Public License v2.1 | 5 votes |
/** * Returns persistence service. * * @return persistence service * * @author Andreas Bröker */ public IPersistenceService getPersistenceService() { if (persistenceService == null) { XStorable xStorable = (XStorable) UnoRuntime.queryInterface( XStorable.class, xComponent); persistenceService = new PersistenceService(this, xStorable); } return persistenceService; }
Example #12
Source File: StreamOpenOfficeDocumentConverter.java From tmxeditor8 with GNU General Public License v2.0 | 5 votes |
/** * Load and export. * @param inputStream * the input stream * @param importOptions * the import options * @param outputStream * the output stream * @param exportOptions * the export options * @throws Exception * the exception */ @SuppressWarnings("unchecked") private void loadAndExport(InputStream inputStream, Map/* <String,Object> */importOptions, OutputStream outputStream, Map/* <String,Object> */exportOptions) throws Exception { XComponentLoader desktop = openOfficeConnection.getDesktopObject(); Map/* <String,Object> */loadProperties = new HashMap(); loadProperties.putAll(getDefaultLoadProperties()); loadProperties.putAll(importOptions); // doesn't work using InputStreamToXInputStreamAdapter; probably because // it's not XSeekable // property("InputStream", new // InputStreamToXInputStreamAdapter(inputStream)) loadProperties.put("InputStream", new ByteArrayToXInputStreamAdapter(IOUtils.toByteArray(inputStream))); //$NON-NLS-1$ XComponent document = desktop.loadComponentFromURL( "private:stream", "_blank", 0, toPropertyValues(loadProperties)); //$NON-NLS-1$ //$NON-NLS-2$ if (document == null) { throw new OPException(Messages.getString("ooconverter.StreamOpenOfficeDocumentConverter.6")); //$NON-NLS-1$ } refreshDocument(document); Map/* <String,Object> */storeProperties = new HashMap(); storeProperties.putAll(exportOptions); storeProperties.put("OutputStream", new OutputStreamToXOutputStreamAdapter(outputStream)); //$NON-NLS-1$ try { XStorable storable = (XStorable) UnoRuntime.queryInterface(XStorable.class, document); storable.storeToURL("private:stream", toPropertyValues(storeProperties)); //$NON-NLS-1$ } finally { document.dispose(); } }
Example #13
Source File: OfficeResourceProvider.java From yarg with Apache License 2.0 | 5 votes |
public void saveXComponent(XComponent xComponent, XOutputStream xOutputStream, String filterName) throws IOException { PropertyValue[] props = new PropertyValue[2]; props[0] = new PropertyValue(); props[1] = new PropertyValue(); props[0].Name = "OutputStream"; props[0].Value = xOutputStream; props[1].Name = "FilterName"; props[1].Value = filterName; XStorable xStorable = as(XStorable.class, xComponent); xStorable.storeToURL("private:stream", props); }
Example #14
Source File: OpenOfficeWorker.java From scipio-erp with Apache License 2.0 | 4 votes |
public static void convertOODocToFile(XMultiComponentFactory xmulticomponentfactory, String fileInPath, String fileOutPath, String outputMimeType) throws FileNotFoundException, IOException, MalformedURLException, Exception { // Converting the document to the favoured type // Query for the XPropertySet interface. XPropertySet xpropertysetMultiComponentFactory = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, xmulticomponentfactory); // Get the default context from the office server. Object objectDefaultContext = xpropertysetMultiComponentFactory.getPropertyValue("DefaultContext"); // Query for the interface XComponentContext. XComponentContext xcomponentcontext = (XComponentContext) UnoRuntime.queryInterface(XComponentContext.class, objectDefaultContext); /* A desktop environment contains tasks with one or more frames in which components can be loaded. Desktop is the environment for components which can instanciate within frames. */ Object desktopObj = xmulticomponentfactory.createInstanceWithContext("com.sun.star.frame.Desktop", xcomponentcontext); //XDesktop desktop = (XDesktop) UnoRuntime.queryInterface(XDesktop.class, desktopObj); XComponentLoader xcomponentloader = (XComponentLoader) UnoRuntime.queryInterface(XComponentLoader.class, desktopObj); // Preparing properties for loading the document PropertyValue propertyvalue[] = new PropertyValue[ 2 ]; // Setting the flag for hidding the open document propertyvalue[ 0 ] = new PropertyValue(); propertyvalue[ 0 ].Name = "Hidden"; propertyvalue[ 0 ].Value = Boolean.valueOf(false); propertyvalue[ 1 ] = new PropertyValue(); propertyvalue[ 1 ].Name = "UpdateDocMode"; propertyvalue[ 1 ].Value = "1"; // Loading the wanted document String stringUrl = convertToUrl(fileInPath, xcomponentcontext); Debug.logInfo("stringUrl:" + stringUrl, module); Object objectDocumentToStore = xcomponentloader.loadComponentFromURL(stringUrl, "_blank", 0, propertyvalue); // Getting an object that will offer a simple way to store a document to a URL. XStorable xstorable = (XStorable) UnoRuntime.queryInterface(XStorable.class, objectDocumentToStore); // Preparing properties for converting the document propertyvalue = new PropertyValue[ 3 ]; // Setting the flag for overwriting propertyvalue[ 0 ] = new PropertyValue(); propertyvalue[ 0 ].Name = "Overwrite"; propertyvalue[ 0 ].Value = Boolean.valueOf(true); // Setting the filter name // Preparing properties for converting the document String filterName = getFilterNameFromMimeType(outputMimeType); propertyvalue[ 1 ] = new PropertyValue(); propertyvalue[ 1 ].Name = "FilterName"; propertyvalue[ 1 ].Value = filterName; propertyvalue[2] = new PropertyValue(); propertyvalue[2].Name = "CompressionMode"; propertyvalue[2].Value = "1"; // Storing and converting the document //File newFile = new File(stringConvertedFile); //newFile.createNewFile(); String stringConvertedFile = convertToUrl(fileOutPath, xcomponentcontext); Debug.logInfo("stringConvertedFile: "+stringConvertedFile, module); xstorable.storeToURL(stringConvertedFile, propertyvalue); // Getting the method dispose() for closing the document XComponent xcomponent = (XComponent) UnoRuntime.queryInterface(XComponent.class, xstorable); // Closing the converted document xcomponent.dispose(); return; }
Example #15
Source File: OpenOfficeWorker.java From scipio-erp with Apache License 2.0 | 4 votes |
public static OpenOfficeByteArrayOutputStream convertOODocByteStreamToByteStream(XMultiComponentFactory xmulticomponentfactory, OpenOfficeByteArrayInputStream is, String inputMimeType, String outputMimeType) throws Exception { // Query for the XPropertySet interface. XPropertySet xpropertysetMultiComponentFactory = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, xmulticomponentfactory); // Get the default context from the office server. Object objectDefaultContext = xpropertysetMultiComponentFactory.getPropertyValue("DefaultContext"); // Query for the interface XComponentContext. XComponentContext xcomponentcontext = (XComponentContext) UnoRuntime.queryInterface(XComponentContext.class, objectDefaultContext); /* A desktop environment contains tasks with one or more frames in which components can be loaded. Desktop is the environment for components which can instanciate within frames. */ Object desktopObj = xmulticomponentfactory.createInstanceWithContext("com.sun.star.frame.Desktop", xcomponentcontext); //XDesktop desktop = (XDesktop) UnoRuntime.queryInterface(XDesktop.class, desktopObj); XComponentLoader xcomponentloader = (XComponentLoader) UnoRuntime.queryInterface(XComponentLoader.class, desktopObj); // Preparing properties for loading the document PropertyValue propertyvalue[] = new PropertyValue[2]; // Setting the flag for hidding the open document propertyvalue[0] = new PropertyValue(); propertyvalue[0].Name = "Hidden"; propertyvalue[0].Value = Boolean.TRUE; // propertyvalue[1] = new PropertyValue(); propertyvalue[1].Name = "InputStream"; propertyvalue[1].Value = is; // Loading the wanted document Object objectDocumentToStore = xcomponentloader.loadComponentFromURL("private:stream", "_blank", 0, propertyvalue); if (objectDocumentToStore == null) { Debug.logError("Could not get objectDocumentToStore object from xcomponentloader.loadComponentFromURL", module); } // Getting an object that will offer a simple way to store a document to a URL. XStorable xstorable = (XStorable) UnoRuntime.queryInterface(XStorable.class, objectDocumentToStore); if (xstorable == null) { Debug.logError("Could not get XStorable object from UnoRuntime.queryInterface", module); } // Preparing properties for converting the document String filterName = getFilterNameFromMimeType(outputMimeType); propertyvalue = new PropertyValue[4]; propertyvalue[0] = new PropertyValue(); propertyvalue[0].Name = "OutputStream"; OpenOfficeByteArrayOutputStream os = new OpenOfficeByteArrayOutputStream(); propertyvalue[0].Value = os; // Setting the filter name propertyvalue[1] = new PropertyValue(); propertyvalue[1].Name = "FilterName"; propertyvalue[1].Value = filterName; // Setting the flag for overwriting propertyvalue[3] = new PropertyValue(); propertyvalue[3].Name = "Overwrite"; propertyvalue[3].Value = Boolean.TRUE; // For PDFs propertyvalue[2] = new PropertyValue(); propertyvalue[2].Name = "CompressionMode"; propertyvalue[2].Value = "1"; xstorable.storeToURL("private:stream", propertyvalue); //xstorable.storeToURL("file:///home/byersa/testdoc1_file.pdf", propertyvalue); // Getting the method dispose() for closing the document XComponent xcomponent = (XComponent) UnoRuntime.queryInterface(XComponent.class, xstorable); // Closing the converted document xcomponent.dispose(); return os; }
Example #16
Source File: PersistenceService.java From noa-libre with GNU Lesser General Public License v2.1 | 3 votes |
/** * Constructs new PersistenceService. * * @param document document to be used * @param xStorable OpenOffice.org XStorable interface to be used * * @throws IllegalArgumentException if the submitted document or the OpenOffice.org XStorable interface * is not valid * * @author Andreas Bröker */ public PersistenceService(IDocument document, XStorable xStorable) throws IllegalArgumentException { if (document == null) throw new IllegalArgumentException(Messages.getString("PersistenceService.exception_document_invalid")); //$NON-NLS-1$ this.document = document; if (xStorable == null) throw new IllegalArgumentException(Messages.getString("PersistenceService.exception_xstorable_interface_invalid")); //$NON-NLS-1$ this.xStorable = xStorable; }