Java Code Examples for com.sun.star.lang.XComponent#dispose()
The following examples show how to use
com.sun.star.lang.XComponent#dispose() .
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: AbstractConversionTask.java From kkFileViewOfficeEdit with Apache License 2.0 | 6 votes |
public void execute(OfficeContext context) throws OfficeException { XComponent document = null; try { document = loadDocument(context, inputFile); modifyDocument(document); storeDocument(document, outputFile); } catch (OfficeException officeException) { throw officeException; } catch (Exception exception) { throw new OfficeException("conversion failed", exception); } finally { if (document != null) { XCloseable closeable = cast(XCloseable.class, document); if (closeable != null) { try { closeable.close(true); } catch (CloseVetoException closeVetoException) { // whoever raised the veto should close the document } } else { document.dispose(); } } } }
Example 2
Source File: AbstractConversionTask.java From kkFileView with Apache License 2.0 | 6 votes |
public void execute(OfficeContext context) throws OfficeException { XComponent document = null; try { document = loadDocument(context, inputFile); modifyDocument(document); storeDocument(document, outputFile); } catch (OfficeException officeException) { throw officeException; } catch (Exception exception) { throw new OfficeException("conversion failed", exception); } finally { if (document != null) { XCloseable closeable = cast(XCloseable.class, document); if (closeable != null) { try { closeable.close(true); } catch (CloseVetoException closeVetoException) { // whoever raised the veto should close the document } } else { document.dispose(); } } } }
Example 3
Source File: AbstractConversionTask.java From wenku with MIT License | 6 votes |
public void execute(OfficeContext context) throws OfficeException { XComponent document = null; try { document = loadDocument(context, inputFile); modifyDocument(document); storeDocument(document, outputFile); } catch (OfficeException officeException) { throw officeException; } catch (Exception exception) { throw new OfficeException("conversion failed", exception); } finally { if (document != null) { XCloseable closeable = cast(XCloseable.class, document); if (closeable != null) { try { closeable.close(true); } catch (CloseVetoException closeVetoException) { // whoever raised the veto should close the document } } else { document.dispose(); } } } }
Example 4
Source File: RemoteOfficeConnection.java From noa-libre with GNU Lesser General Public License v2.1 | 6 votes |
/** * Closes connection to OpenOffice.org. */ public void closeConnection() { xMultiComponentFactory = null; xMultiServiceFactory = null; xRemoteContext = null; XComponent xComponent = (XComponent)UnoRuntime.queryInterface(XComponent.class, xBridge); if(xComponent != null) { try { xComponent.dispose(); isConnectionEstablished = false; } catch(Exception exception) { //do nothing } } xBridge = null; }
Example 5
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 6
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 7
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 8
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 9
Source File: OfficeResourceProvider.java From yarg with Apache License 2.0 | 5 votes |
public void closeXComponent(XComponent xComponent) { XCloseable xCloseable = as(XCloseable.class, xComponent); try { xCloseable.close(false); } catch (com.sun.star.util.CloseVetoException e) { xComponent.dispose(); } FileUtils.deleteQuietly(temporaryFile); }
Example 10
Source File: JodConverterMetadataExtracterWorker.java From alfresco-repository with GNU Lesser General Public License v3.0 | 4 votes |
public void execute(OfficeContext context) { if (logger.isDebugEnabled()) { logger.debug("Extracting metadata from file " + inputFile); } XComponent document = null; try { if (!inputFile.exists()) { throw new OfficeException("input document not found"); } XComponentLoader loader = cast(XComponentLoader.class, context .getService(SERVICE_DESKTOP)); // Need to set the Hidden property to ensure that OOo GUI does not appear. PropertyValue hiddenOOo = new PropertyValue(); hiddenOOo.Name = "Hidden"; hiddenOOo.Value = Boolean.TRUE; PropertyValue readOnly = new PropertyValue(); readOnly.Name = "ReadOnly"; readOnly.Value = Boolean.TRUE; try { document = loader.loadComponentFromURL(toUrl(inputFile), "_blank", 0, new PropertyValue[]{hiddenOOo, readOnly}); } catch (IllegalArgumentException illegalArgumentException) { throw new OfficeException("could not load document: " + inputFile.getName(), illegalArgumentException); } catch (ErrorCodeIOException errorCodeIOException) { throw new OfficeException("could not load document: " + inputFile.getName() + "; errorCode: " + errorCodeIOException.ErrCode, errorCodeIOException); } catch (IOException ioException) { throw new OfficeException("could not load document: " + inputFile.getName(), ioException); } if (document == null) { throw new OfficeException("could not load document: " + inputFile.getName()); } XRefreshable refreshable = cast(XRefreshable.class, document); if (refreshable != null) { refreshable.refresh(); } XDocumentInfoSupplier docInfoSupplier = cast(XDocumentInfoSupplier.class, document); XPropertySet propSet = cast(XPropertySet.class, docInfoSupplier.getDocumentInfo()); // The strings below are property names as used by OOo. They need upper-case // initial letters. Object author = getPropertyValueIfAvailable(propSet, "Author"); Object description = getPropertyValueIfAvailable(propSet, "Subject"); Object title = getPropertyValueIfAvailable(propSet, "Title"); Map<String, Serializable> results = new HashMap<String, Serializable>(3); results.put(KEY_AUTHOR, author == null ? null : author.toString()); results.put(KEY_DESCRIPTION, description == null ? null : description.toString()); results.put(KEY_TITLE, title == null ? null : title.toString()); callback.setResults(results); } catch (OfficeException officeException) { throw officeException; } catch (Exception exception) { throw new OfficeException("conversion failed", exception); } finally { if (document != null) { XCloseable closeable = cast(XCloseable.class, document); if (closeable != null) { try { closeable.close(true); } catch (CloseVetoException closeVetoException) { // whoever raised the veto should close the document } } else { document.dispose(); } } } }
Example 11
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 12
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 13
Source File: TextFieldMaster.java From noa-libre with GNU Lesser General Public License v2.1 | 4 votes |
/** * Removes the master of a textfield from the document. * * @author Andreas Bröker */ public void remove() { XComponent xComponent = (XComponent)UnoRuntime.queryInterface(XComponent.class, xPropertySet); if(xComponent != null) xComponent.dispose(); }
Example 14
Source File: VariableTextFieldMaster.java From noa-libre with GNU Lesser General Public License v2.1 | 2 votes |
/** * Removes the master of a variable text field from the document. * * @author Markus Krüger * @date 30.05.2007 */ public void remove() { XComponent xComponent = (XComponent)UnoRuntime.queryInterface(XComponent.class, xPropertySet); if(xComponent != null) xComponent.dispose(); }