本文整理汇总了Java中com.sun.star.lang.XMultiComponentFactory类的典型用法代码示例。如果您正苦于以下问题:Java XMultiComponentFactory类的具体用法?Java XMultiComponentFactory怎么用?Java XMultiComponentFactory使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
XMultiComponentFactory类属于com.sun.star.lang包,在下文中一共展示了XMultiComponentFactory类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: openConnection
import com.sun.star.lang.XMultiComponentFactory; //导入依赖的package包/类
/**
* Opens connection to OpenOffice.org.
*
* @return information whether the connection is available
*
* @throws Exception if any error occurs
*/
public boolean openConnection() throws Exception {
String unoUrl = "uno:socket,host=" + host + ",port=" + port +";urp;StarOffice.ServiceManager";
XComponentContext xLocalContext = Bootstrap.createInitialComponentContext(null);
Object connector = xLocalContext.getServiceManager().createInstanceWithContext("com.sun.star.connection.Connector", xLocalContext);
XConnector xConnector = (XConnector) UnoRuntime.queryInterface(XConnector.class, connector);
String url[] = parseUnoUrl(unoUrl);
if (null == url) {
throw new com.sun.star.uno.Exception("Couldn't parse UNO URL "+ unoUrl);
}
XConnection connection = xConnector.connect(url[0]);
Object bridgeFactory = xLocalContext.getServiceManager().createInstanceWithContext("com.sun.star.bridge.BridgeFactory", xLocalContext);
XBridgeFactory xBridgeFactory = (XBridgeFactory) UnoRuntime.queryInterface(XBridgeFactory.class, bridgeFactory);
xBridge = xBridgeFactory.createBridge("", url[1], connection ,null);
bridgeFactory = xBridge.getInstance(url[2]);
xMultiComponentFactory = (XMultiComponentFactory)UnoRuntime.queryInterface(XMultiComponentFactory.class, bridgeFactory);
XPropertySet xProperySet = (XPropertySet)UnoRuntime.queryInterface(XPropertySet.class, xMultiComponentFactory);
Object remoteContext = xProperySet.getPropertyValue("DefaultContext");
xRemoteContext = (XComponentContext) UnoRuntime.queryInterface(XComponentContext.class, remoteContext);
xMultiServiceFactory = (XMultiServiceFactory)UnoRuntime.queryInterface(XMultiServiceFactory.class, xMultiComponentFactory);
isConnectionEstablished = true;
return true;
}
示例2: insertImage
import com.sun.star.lang.XMultiComponentFactory; //导入依赖的package包/类
protected void insertImage(XComponent document, OfficeResourceProvider officeResourceProvider, XText destination, XTextRange textRange,
Image image) throws Exception {
XMultiServiceFactory xFactory = as(XMultiServiceFactory.class, document);
XComponentContext xComponentContext = officeResourceProvider.getXComponentContext();
XMultiComponentFactory serviceManager = xComponentContext.getServiceManager();
Object oImage = xFactory.createInstance(TEXT_GRAPHIC_OBJECT);
Object oGraphicProvider = serviceManager.createInstanceWithContext(GRAPHIC_PROVIDER_OBJECT, xComponentContext);
XGraphicProvider xGraphicProvider = as(XGraphicProvider.class, oGraphicProvider);
XPropertySet imageProperties = buildImageProperties(xGraphicProvider, oImage, image.imageContent);
XTextContent xTextContent = as(XTextContent.class, oImage);
destination.insertTextContent(textRange, xTextContent, true);
setImageSize(image.width, image.height, oImage, imageProperties);
}
示例3: open
import com.sun.star.lang.XMultiComponentFactory; //导入依赖的package包/类
public void open() throws OpenOfficeException {
if (this.closed) {
try {
XComponentContext localContext = bsc.connect("127.0.0.1", port);
String connectionString = "socket,host=127.0.0.1,port=" + port;
XMultiComponentFactory localServiceManager = localContext.getServiceManager();
XConnector connector = as(XConnector.class,
localServiceManager.createInstanceWithContext("com.sun.star.connection.Connector", localContext));
XConnection connection = connector.connect(connectionString);
XBridgeFactory bridgeFactory = as(XBridgeFactory.class,
localServiceManager.createInstanceWithContext("com.sun.star.bridge.BridgeFactory", localContext));
String bridgeName = "yarg_" + bridgeIndex.incrementAndGet();
XBridge bridge = bridgeFactory.createBridge(bridgeName, "urp", connection, null);
XMultiComponentFactory serviceManager = as(XMultiComponentFactory.class, bridge.getInstance("StarOffice.ServiceManager"));
XPropertySet properties = as(XPropertySet.class, serviceManager);
xComponentContext = as(XComponentContext.class, properties.getPropertyValue("DefaultContext"));
officeResourceProvider = new OfficeResourceProvider(xComponentContext, officeIntegration);
closed = false;
} catch (Exception e) {
close();
throw new OpenOfficeException("Unable to create Open office components.", e);
}
}
}
示例4: getCurrentDesktop
import com.sun.star.lang.XMultiComponentFactory; //导入依赖的package包/类
/**
* Returns the current XDesktop
* Returns null if it fails
*/
@Nullable
private static XDesktop getCurrentDesktop(XComponentContext xContext) throws Exception {
try {
if (xContext == null) {
return null;
}
XMultiComponentFactory xMCF = UnoRuntime.queryInterface(XMultiComponentFactory.class,
xContext.getServiceManager());
if (xMCF == null) {
return null;
}
Object desktop = xMCF.createInstanceWithContext("com.sun.star.frame.Desktop", xContext);
if (desktop == null) {
return null;
}
return UnoRuntime.queryInterface(XDesktop.class, desktop);
} catch (Exception e) {
printException(e); // all Exceptions thrown by UnoRuntime.queryInterface are caught
return null; // Return null as method failed
}
}
示例5: getCurrentDesktop
import com.sun.star.lang.XMultiComponentFactory; //导入依赖的package包/类
/**
* Returns the current XDesktop
* Returns null if it fails
*/
@Nullable
private static XDesktop getCurrentDesktop(XComponentContext xContext) {
try {
if (xContext == null) {
return null;
}
XMultiComponentFactory xMCF = UnoRuntime.queryInterface(XMultiComponentFactory.class,
xContext.getServiceManager());
if (xMCF == null) {
return null;
}
Object desktop = xMCF.createInstanceWithContext("com.sun.star.frame.Desktop", xContext);
if (desktop == null) {
return null;
}
return UnoRuntime.queryInterface(XDesktop.class, desktop);
} catch (Exception e) {
printException(e); // all Exceptions thrown by UnoRuntime.queryInterface are caught
return null; // Return null as method failed
}
}
示例6: initContext
import com.sun.star.lang.XMultiComponentFactory; //导入依赖的package包/类
private static XComponentLoader initContext() {
try {
XComponentContext xContext = Bootstrap.bootstrap();
XMultiComponentFactory xMCF = xContext.getServiceManager();
Object oDesktop = xMCF.createInstanceWithContext("com.sun.star.frame.Desktop", xContext);
return UnoRuntime.queryInterface(XComponentLoader.class, oDesktop);
} catch (Exception e) {
throw new LibreOfficeException(e);
}
}
示例7: getFilterNames
import com.sun.star.lang.XMultiComponentFactory; //导入依赖的package包/类
public static List getFilterNames(XMultiComponentFactory xmulticomponentfactory) throws Exception {
XPropertySet xPropertySet = (XPropertySet)UnoRuntime.queryInterface(XPropertySet.class, xmulticomponentfactory);
Object oDefaultContext = xPropertySet.getPropertyValue("DefaultContext");
XComponentContext xComponentContext = (XComponentContext) UnoRuntime.queryInterface(XComponentContext.class, oDefaultContext);
Object filterFactory = xmulticomponentfactory.createInstanceWithContext("com.sun.star.document.FilterFactory", xComponentContext);
XNameAccess xNameAccess = (XNameAccess)UnoRuntime.queryInterface(XNameAccess.class, filterFactory);
String [] filterNames = xNameAccess.getElementNames();
//String [] serviceNames = filterFactory.getAvailableServiceNames();
for (int i=0; i < filterNames.length; i++) {
String s = filterNames[i];
Debug.logInfo(s, module);
/*
if (s.toLowerCase().indexOf("filter") >= 0) {
Debug.logInfo("FILTER: " + s, module);
}
if (s.toLowerCase().indexOf("desktop") >= 0) {
Debug.logInfo("DESKTOP: " + s, module);
}
*/
}
List filterNameList = UtilMisc.toListArray(filterNames);
return filterNameList;
}
示例8: getCurrentDesktop
import com.sun.star.lang.XMultiComponentFactory; //导入依赖的package包/类
/** Returns the curerent XDesktop */
public static XDesktop getCurrentDesktop(XComponentContext xContext) {
XMultiComponentFactory xMCF = (XMultiComponentFactory) UnoRuntime.queryInterface(XMultiComponentFactory.class,
xContext.getServiceManager());
Object desktop = null;
try {
desktop = xMCF.createInstanceWithContext("com.sun.star.frame.Desktop", xContext);
} catch (Exception e) {
return null;
}
return (XDesktop) UnoRuntime.queryInterface(com.sun.star.frame.XDesktop.class, desktop);
}
示例9: connect
import com.sun.star.lang.XMultiComponentFactory; //导入依赖的package包/类
public void connect() throws ConnectException {
logger.fine(String.format("connecting with connectString '%s'", unoUrl));
try {
XComponentContext localContext = Bootstrap.createInitialComponentContext(null);
XMultiComponentFactory localServiceManager = localContext.getServiceManager();
XConnector connector = OfficeUtils.cast(XConnector.class, localServiceManager.createInstanceWithContext("com.sun.star.connection.Connector", localContext));
XConnection connection = connector.connect(unoUrl.getConnectString());
XBridgeFactory bridgeFactory = OfficeUtils.cast(XBridgeFactory.class, localServiceManager.createInstanceWithContext("com.sun.star.bridge.BridgeFactory", localContext));
String bridgeName = "jodconverter_" + bridgeIndex.getAndIncrement();
XBridge bridge = bridgeFactory.createBridge(bridgeName, "urp", connection, null);
bridgeComponent = OfficeUtils.cast(XComponent.class, bridge);
bridgeComponent.addEventListener(bridgeListener);
serviceManager = OfficeUtils.cast(XMultiComponentFactory.class, bridge.getInstance("StarOffice.ServiceManager"));
XPropertySet properties = OfficeUtils.cast(XPropertySet.class, serviceManager);
componentContext = OfficeUtils.cast(XComponentContext.class, properties.getPropertyValue("DefaultContext"));
connected = true;
logger.info(String.format("connected: '%s'", unoUrl));
OfficeConnectionEvent connectionEvent = new OfficeConnectionEvent(this);
for (OfficeConnectionEventListener listener : connectionEventListeners) {
listener.connected(connectionEvent);
}
} catch (NoConnectException connectException) {
throw new ConnectException(String.format("connection failed: '%s'; %s", unoUrl, connectException.getMessage()));
} catch (Exception exception) {
throw new OfficeException("connection failed: "+ unoUrl, exception);
}
}
示例10: stopOffice
import com.sun.star.lang.XMultiComponentFactory; //导入依赖的package包/类
private void stopOffice() {
try {
if (componentContext != null) {
// Only the uno test suite which started the office can stop it
XMultiComponentFactory xMngr = componentContext.getServiceManager();
Object oDesktop = xMngr.createInstanceWithContext("com.sun.star.frame.Desktop", componentContext);
XDesktop xDesktop = (XDesktop)UnoRuntime.queryInterface(XDesktop.class, oDesktop);
xDesktop.terminate();
}
} catch (Exception e) {
e.printStackTrace();
}
}
示例11: getWriterDocument
import com.sun.star.lang.XMultiComponentFactory; //导入依赖的package包/类
public static XTextDocument getWriterDocument() throws Exception {
XMultiComponentFactory xMngr = UnoSuite.getComponentContext().getServiceManager();
Object oDesktop = xMngr.createInstanceWithContext("com.sun.star.frame.Desktop", UnoSuite.getComponentContext());
XComponentLoader xLoader = (XComponentLoader)UnoRuntime.queryInterface(
XComponentLoader.class, oDesktop);
XComponent xDoc = xLoader.loadComponentFromURL("private:factory/swriter", "_default",
FrameSearchFlag.ALL, new PropertyValue[0]);
return (XTextDocument)UnoRuntime.queryInterface(XTextDocument.class, xDoc);
}
示例12: connect
import com.sun.star.lang.XMultiComponentFactory; //导入依赖的package包/类
/**
* To set up connection.
* @throws ConnectException if failure occurs
*/
public void connect() throws ConnectException {
LOGGER.fine(String.format("connecting with connectString '%s'", unoUrl));
try {
XComponentContext localContext = Bootstrap.createInitialComponentContext(null);
XMultiComponentFactory localServiceManager = localContext.getServiceManager();
Object urlResolver = localServiceManager.createInstanceWithContext("com.sun.star.bridge.UnoUrlResolver", localContext);
XUnoUrlResolver unoUrlResolver = (XUnoUrlResolver) UnoRuntime.queryInterface(XUnoUrlResolver.class, urlResolver);
Object initialObject = unoUrlResolver.resolve(unoUrl.getConnectString());
XPropertySet properties = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, initialObject);
componentContext = OfficeUtils.cast(XComponentContext.class, properties.getPropertyValue("DefaultContext"));
serviceManager = componentContext.getServiceManager();
connected = true;
LOGGER.info(String.format("connected: '%s'", unoUrl));
OfficeConnectionEvent connectionEvent = new OfficeConnectionEvent(this);
for (OfficeConnectionEventListener listener : connectionEventListeners) {
listener.connected(connectionEvent);
}
} catch (NoConnectException connectException) {
throw new ConnectException(String.format("connection failed: '%s'; %s", unoUrl, connectException.getMessage()));
} catch (Exception exception) {
throw new OfficeException("connection failed: " + unoUrl, exception);
}
}
示例13: connect
import com.sun.star.lang.XMultiComponentFactory; //导入依赖的package包/类
/**
* To set up connection.
* @throws ConnectException if connection fails
*/
public void connect() throws ConnectException {
logger.fine(String.format("connecting with connectString '%s'", unoUrl));
try {
XComponentContext localContext = Bootstrap.createInitialComponentContext(null);
XMultiComponentFactory localServiceManager = localContext.getServiceManager();
XConnector connector = OfficeUtils.cast(XConnector.class, localServiceManager.createInstanceWithContext(
"com.sun.star.connection.Connector", localContext));
XConnection connection = connector.connect(unoUrl.getConnectString());
XBridgeFactory bridgeFactory = OfficeUtils.cast(XBridgeFactory.class, localServiceManager.createInstanceWithContext(
"com.sun.star.bridge.BridgeFactory", localContext));
String bridgeName = "jodconverter_" + bridgeIndex.getAndIncrement();
XBridge bridge = bridgeFactory.createBridge(bridgeName, "urp", connection, null);
bridgeComponent = OfficeUtils.cast(XComponent.class, bridge);
bridgeComponent.addEventListener(bridgeListener);
serviceManager = OfficeUtils.cast(XMultiComponentFactory.class, bridge.getInstance("StarOffice.ServiceManager"));
XPropertySet properties = OfficeUtils.cast(XPropertySet.class, serviceManager);
componentContext = OfficeUtils.cast(XComponentContext.class, properties.getPropertyValue("DefaultContext"));
connected = true;
logger.info(String.format("connected: '%s'", unoUrl));
OfficeConnectionEvent connectionEvent = new OfficeConnectionEvent(this);
for (OfficeConnectionEventListener listener : connectionEventListeners) {
listener.connected(connectionEvent);
}
} catch (NoConnectException connectException) {
throw new ConnectException(String.format("connection failed: '%s'; %s", unoUrl, connectException.getMessage()));
} catch (Exception exception) {
throw new OfficeException("connection failed: " + unoUrl, exception);
}
}
示例14: connect
import com.sun.star.lang.XMultiComponentFactory; //导入依赖的package包/类
/**
* (non-Javadoc)
* @see net.heartsome.cat.converter.ooconnect.OPconnect#connect()
* @throws ConnectException
*/
public void connect() throws ConnectException {
try {
XComponentContext localContext;
localContext = Bootstrap.createInitialComponentContext(null);
XMultiComponentFactory localServiceManager = localContext.getServiceManager();
XConnector connector = (XConnector) UnoRuntime.queryInterface(XConnector.class, localServiceManager
.createInstanceWithContext("com.sun.star.connection.Connector", localContext)); //$NON-NLS-1$
XConnection connection = connector.connect(strConnection);
XBridgeFactory bridgeFactory = (XBridgeFactory) UnoRuntime.queryInterface(XBridgeFactory.class,
localServiceManager.createInstanceWithContext("com.sun.star.bridge.BridgeFactory", localContext)); //$NON-NLS-1$
bridge = bridgeFactory.createBridge("ms2ooBridge", "urp", connection, null); //$NON-NLS-1$ //$NON-NLS-2$
bgComponent = (XComponent) UnoRuntime.queryInterface(XComponent.class, bridge);
// bgComponent.addEventListener(this);
serviceMg = (XMultiComponentFactory) UnoRuntime.queryInterface(XMultiComponentFactory.class, bridge
.getInstance("StarOffice.ServiceManager")); //$NON-NLS-1$
XPropertySet properties = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, serviceMg);
componentContext = (XComponentContext) UnoRuntime.queryInterface(XComponentContext.class, properties
.getPropertyValue("DefaultContext")); //$NON-NLS-1$
connected = true;
if (connected) {
System.out.println("has already connected"); //$NON-NLS-1$
} else {
System.out.println("connect to Openoffice fail,please check OpenOffice service that have to open"); //$NON-NLS-1$
}
} catch (NoConnectException connectException) {
throw new ConnectException(MessageFormat.format(Messages.getString("ooconnect.OPConnection.msg"), strConnection + ": " + connectException.getMessage())); //$NON-NLS-1$ //$NON-NLS-2$
} catch (Exception exception) {
throw new OPException(MessageFormat.format(Messages.getString("ooconnect.OPConnection.msg"), strConnection), exception); //$NON-NLS-1$
} catch (java.lang.Exception e) {
if (Converter.DEBUG_MODE) {
e.printStackTrace();
}
}
}
示例15: getConfigValue
import com.sun.star.lang.XMultiComponentFactory; //导入依赖的package包/类
private static String getConfigValue(String path, String name)
{
try
{
XMultiComponentFactory xMultiComponentFactory =
UNO.defaultContext.getServiceManager();
Object oProvider =
xMultiComponentFactory.createInstanceWithContext(
"com.sun.star.configuration.ConfigurationProvider", UNO.defaultContext);
XMultiServiceFactory xConfigurationServiceFactory =
UnoRuntime.queryInterface(XMultiServiceFactory.class,
oProvider);
PropertyValue[] lArgs = new PropertyValue[1];
lArgs[0] = new PropertyValue();
lArgs[0].Name = "nodepath";
lArgs[0].Value = path;
Object configAccess =
xConfigurationServiceFactory.createInstanceWithArguments(
"com.sun.star.configuration.ConfigurationAccess", lArgs);
XNameAccess xNameAccess =
UnoRuntime.queryInterface(XNameAccess.class, configAccess);
return xNameAccess.getByName(name).toString();
}
catch (Exception ex)
{
Logger.log(ex);
return "";
}
}