diff options
Diffstat (limited to 'desktop/source/deployment/registry/package/dp_package.cxx')
-rw-r--r-- | desktop/source/deployment/registry/package/dp_package.cxx | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/desktop/source/deployment/registry/package/dp_package.cxx b/desktop/source/deployment/registry/package/dp_package.cxx index 2f6a0091e2..98f80df964 100644 --- a/desktop/source/deployment/registry/package/dp_package.cxx +++ b/desktop/source/deployment/registry/package/dp_package.cxx @@ -205,6 +205,12 @@ class BackendImpl : public ImplBaseT css::ucb::CommandAbortedException, css::uno::RuntimeException); + virtual ::sal_Bool SAL_CALL checkDependencies( + const css::uno::Reference< css::ucb::XCommandEnvironment >& xCmdEnv ) + throw (css::deployment::DeploymentException, + css::ucb::CommandFailedException, + css::uno::RuntimeException); + virtual beans::Optional<OUString> SAL_CALL getIdentifier() throw (RuntimeException); @@ -702,6 +708,22 @@ bool BackendImpl::PackageImpl::checkDependencies( && checkLicense(xCmdEnv, *spDescription, bInstalled, aContextName); } +::sal_Bool BackendImpl::PackageImpl::checkDependencies( + const css::uno::Reference< css::ucb::XCommandEnvironment >& xCmdEnv ) + throw (css::deployment::DeploymentException, + css::ucb::CommandFailedException, + css::uno::RuntimeException) +{ + std::auto_ptr<ExtensionDescription> spDescription; + try { + spDescription.reset( + new ExtensionDescription( getMyBackend()->getComponentContext(), m_url_expanded, xCmdEnv )); + } catch (NoDescriptionException& ) { + return sal_True; + } + return checkDependencies(xCmdEnv, *spDescription); +} + beans::Optional<OUString> BackendImpl::PackageImpl::getIdentifier() throw (RuntimeException) { |