Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Listing 2
- // C++
- #include "SimpleOOConnection.hpp"
- // int SimpleOOConnection::iNoOfConnection_=0;
- SimpleOOConnection::SimpleOOConnection()
- {
- iNoOfConnection_++;
- }
- Reference< XMultiServiceFactory > SimpleOOConnection::connect_ooffice(const char *url)
- {
- // create the initial component context
- cout<<endl;
- cout<<url<<"HI"<<endl;
- //Initiating Local Component Context
- Reference< XComponentContext > rComponentContext =
- defaultBootstrap_InitialComponentContext();
- /**
- * This local Context contents small Service Manager tha konws how to create services that are neccessary to talk to other
- * component context.One such service is com.sun.star.bridge.UnoUrlResolver So it ask local Service Manager to create this
- * service.
- */
- // retrieve the Local Service Manager from the Local context i.e We get Just servicemanager here
- Reference< XMultiComponentFactory > rServiceManager =
- rComponentContext->getServiceManager();
- // here we instantiate a sample service with the service com.sun.star.bridge.UnoUrlResolver . Created by local service manager.
- Reference< XInterface > rInstance =
- rServiceManager->createInstanceWithContext(
- OUString::createFromAscii("com.sun.star.bridge.UnoUrlResolver" ),rComponentContext );
- // Query for the XUnoUrlResolver interface fro sample service
- Reference< XUnoUrlResolver > rResolver( rInstance, UNO_QUERY );
- //Now it uses UnoUrlResolver to get component context together with service manager from server side
- try
- {
- // resolve the uno-url
- rInstance = rResolver->resolve( OUString::createFromAscii(url ) );
- // query for the simpler XMultiServiceFactory interface, sufficient for scripting
- Reference< XMultiServiceFactory > rOfficeServiceManager (rInstance, UNO_QUERY);
- return(rOfficeServiceManager);
- }
- catch( Exception &e )
- {
- OString o = OUStringToOString( e.Message, RTL_TEXTENCODING_ASCII_US );
- printf( "Error: %s\n", o.pData->buffer );
- return('\0');
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment