21 #include <com/sun/star/lang/XMultiComponentFactory.hpp>
22 #include <com/sun/star/awt/XRequestCallback.hpp>
23 #include <com/sun/star/frame/Desktop.hpp>
24 #include <com/sun/star/beans/XPropertySet.hpp>
27 #include <rtl/ref.hxx>
40 throw uno::RuntimeException();
43 ::osl::MutexGuard aGuard(
m_aMutex );
60 uno::Reference< lang::XMultiComponentFactory >
xFactory(
m_xContext->getServiceManager(), uno::UNO_SET_THROW );
62 uno::Reference< awt::XRequestCallback > xRequestCallback(
64 "com.sun.star.awt.AsyncCallback",
66 uno::UNO_QUERY_THROW );
68 xRequestCallback->addCallback(
this,
uno::Any() );
70 catch ( uno::Exception& )
80 ::osl::MutexGuard aGuard(
m_aMutex );
94 bool bSuccess =
false;
98 uno::Reference< frame::XDesktop2 > xDesktop = frame::Desktop::create(
m_xContext);
101 uno::Reference< beans::XPropertySet > xPropertySet( xDesktop, uno::UNO_QUERY_THROW );
102 OUString aVetoPropName(
"SuspendQuickstartVeto" );
105 xPropertySet->setPropertyValue( aVetoPropName, aValue );
109 bSuccess = xDesktop->terminate();
110 }
catch( uno::Exception& )
116 xPropertySet->setPropertyValue( aVetoPropName, aValue );
123 catch( uno::Exception& )
134 return "com.sun.star.comp.task.OfficeRestartManager";
144 return {
"com.sun.star.comp.task.OfficeRestartManager" };
150 extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface *
152 css::uno::XComponentContext *context,
153 css::uno::Sequence<css::uno::Any>
const &)
bool m_bOfficeInitialized
virtual void SAL_CALL notify(const css::uno::Any &aData) override
SAL_DLLPUBLIC_EXPORT css::uno::XInterface * com_sun_star_comp_task_OfficeRestartManager(css::uno::XComponentContext *context, css::uno::Sequence< css::uno::Any > const &)
bool CPPUHELPER_DLLPUBLIC supportsService(css::lang::XServiceInfo *implementation, rtl::OUString const &name)
css::uno::Reference< css::uno::XComponentContext > m_xContext
virtual sal_Bool SAL_CALL supportsService(const OUString &ServiceName) override
virtual sal_Bool SAL_CALL isRestartRequested(sal_Bool bInitialized) override
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
virtual OUString SAL_CALL getImplementationName() override
Reference< XSingleServiceFactory > xFactory
virtual void SAL_CALL requestRestart(const css::uno::Reference< css::task::XInteractionHandler > &xInteractionHandler) override