diff options
Diffstat (limited to 'desktop/test/deployment')
360 files changed, 5817 insertions, 0 deletions
diff --git a/desktop/test/deployment/active/Addons.xcu b/desktop/test/deployment/active/Addons.xcu new file mode 100644 index 000000000..d3b481ef4 --- /dev/null +++ b/desktop/test/deployment/active/Addons.xcu @@ -0,0 +1,58 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + --> + +<o:component-data xmlns:o="http://openoffice.org/2001/registry" + o:package="org.openoffice.Office" o:name="Addons"> + <node o:name="AddonUI"> + <node o:name="OfficeMenuBar"> + <node o:name="org.openoffice.test.desktop.deployment.active" + o:op="replace"> + <prop o:name="Title" xml:lang="en-US"> + <value>active</value> + </prop> + <node o:name="Submenu"> + <node o:name="1" o:op="replace"> + <prop o:name="URL"> + <value>vnd.org.openoffice.test.desktop.deployment.active_native:</value> + </prop> + <prop o:name="Title" xml:lang="en-US"> + <value>native</value> + </prop> + </node> + <node o:name="2" o:op="replace"> + <prop o:name="URL"> + <value>vnd.org.openoffice.test.desktop.deployment.active_java:</value> + </prop> + <prop o:name="Title" xml:lang="en-US"> + <value>java</value> + </prop> + </node> + <node o:name="3" o:op="replace"> + <prop o:name="URL"> + <value>vnd.org.openoffice.test.desktop.deployment.active_python:</value> + </prop> + <prop o:name="Title" xml:lang="en-US"> + <value>python</value> + </prop> + </node> + </node> + </node> + </node> + </node> +</o:component-data> diff --git a/desktop/test/deployment/active/MANIFEST.MF b/desktop/test/deployment/active/MANIFEST.MF new file mode 100644 index 000000000..63480874d --- /dev/null +++ b/desktop/test/deployment/active/MANIFEST.MF @@ -0,0 +1,3 @@ +Sealed: true +RegistrationClassName: com.sun.star.comp.test.deployment.active_java.Services +UNO-Type-Path: diff --git a/desktop/test/deployment/active/META-INF/manifest.xml b/desktop/test/deployment/active/META-INF/manifest.xml new file mode 100644 index 000000000..7cca7841d --- /dev/null +++ b/desktop/test/deployment/active/META-INF/manifest.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + --> + +<m:manifest xmlns:m="http://openoffice.org/2001/manifest"> + <m:file-entry m:media-type="application/vnd.sun.star.configuration-data" + m:full-path="Addons.xcu"/> + <m:file-entry m:media-type="application/vnd.sun.star.configuration-data" + m:full-path="ProtocolHandler.xcu"/> + <m:file-entry + m:media-type="application/vnd.sun.star.uno-component;type=native;platform=@PLATFORM@" + m:full-path="active_native.uno@SHARED_EXTENSION@"/> + <m:file-entry + m:media-type="application/vnd.sun.star.uno-component;type=Java" + m:full-path="active_java.jar"/> + <m:file-entry + m:media-type="application/vnd.sun.star.uno-component;type=Python" + m:full-path="active_python.py"/> +</m:manifest> diff --git a/desktop/test/deployment/active/ProtocolHandler.xcu b/desktop/test/deployment/active/ProtocolHandler.xcu new file mode 100644 index 000000000..984ed981d --- /dev/null +++ b/desktop/test/deployment/active/ProtocolHandler.xcu @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + --> + +<o:component-data xmlns:o="http://openoffice.org/2001/registry" + o:package="org.openoffice.Office" o:name="ProtocolHandler"> + <node o:name="HandlerSet"> + <node o:name="com.sun.star.test.deployment.active_native" o:op="replace"> + <prop o:name="Protocols"> + <value>vnd.org.openoffice.test.desktop.deployment.active_native:*</value> + </prop> + </node> + <node o:name="com.sun.star.test.deployment.active_java" o:op="replace"> + <prop o:name="Protocols"> + <value>vnd.org.openoffice.test.desktop.deployment.active_java:*</value> + </prop> + </node> + <node o:name="com.sun.star.test.deployment.active_python" o:op="replace"> + <prop o:name="Protocols"> + <value>vnd.org.openoffice.test.desktop.deployment.active_python:*</value> + </prop> + </node> + </node> +</o:component-data> diff --git a/desktop/test/deployment/active/active_native.cxx b/desktop/test/deployment/active/active_native.cxx new file mode 100644 index 000000000..753f0da77 --- /dev/null +++ b/desktop/test/deployment/active/active_native.cxx @@ -0,0 +1,276 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#include <sal/config.h> + +#include <cassert> + +#include <com/sun/star/awt/MessageBoxButtons.hpp> +#include <com/sun/star/awt/Rectangle.hpp> +#include <com/sun/star/awt/Toolkit.hpp> +#include <com/sun/star/awt/XMessageBox.hpp> +#include <com/sun/star/awt/XWindowPeer.hpp> +#include <com/sun/star/beans/PropertyValue.hpp> +#include <com/sun/star/frame/DispatchDescriptor.hpp> +#include <com/sun/star/frame/Desktop.hpp> +#include <com/sun/star/frame/XDispatch.hpp> +#include <com/sun/star/frame/XDispatchProvider.hpp> +#include <com/sun/star/frame/XFrame.hpp> +#include <com/sun/star/frame/XStatusListener.hpp> +#include <com/sun/star/lang/XComponent.hpp> +#include <com/sun/star/lang/XServiceInfo.hpp> +#include <com/sun/star/registry/XRegistryKey.hpp> +#include <com/sun/star/uno/DeploymentException.hpp> +#include <com/sun/star/uno/Exception.hpp> +#include <com/sun/star/uno/Reference.hxx> +#include <com/sun/star/uno/RuntimeException.hpp> +#include <com/sun/star/uno/Sequence.hxx> +#include <com/sun/star/uno/XComponentContext.hpp> +#include <com/sun/star/uno/XInterface.hpp> +#include <com/sun/star/util/URL.hpp> +#include <cppuhelper/factory.hxx> +#include <cppuhelper/implbase2.hxx> +#include <cppuhelper/implementationentry.hxx> +#include <cppuhelper/supportsservice.hxx> +#include <cppuhelper/weak.hxx> +#include <rtl/textenc.h> +#include <rtl/ustring.hxx> +#include <sal/log.hxx> +#include <sal/types.h> +#include <uno/lbnames.h> + +namespace { + +class Provider: + public cppu::WeakImplHelper2< + css::lang::XServiceInfo, css::frame::XDispatchProvider > +{ +public: + Provider(const Provider&) = delete; + const Provider& operator=(const Provider&) = delete; + + static css::uno::Reference< css::uno::XInterface > SAL_CALL static_create( + css::uno::Reference< css::uno::XComponentContext > const & xContext) + { return static_cast< cppu::OWeakObject * >(new Provider(xContext)); } + + static rtl::OUString SAL_CALL static_getImplementationName(); + + static css::uno::Sequence< rtl::OUString > SAL_CALL + static_getSupportedServiceNames(); + +private: + explicit Provider( + css::uno::Reference< css::uno::XComponentContext > const & context): + context_(context) { assert(context.is()); } + + virtual ~Provider() {} + + virtual rtl::OUString SAL_CALL getImplementationName() override + { return static_getImplementationName(); } + + virtual sal_Bool SAL_CALL supportsService(rtl::OUString const & ServiceName) override + { return cppu::supportsService(this, ServiceName); } + + virtual css::uno::Sequence< rtl::OUString > SAL_CALL + getSupportedServiceNames() override + { return static_getSupportedServiceNames(); } + + virtual css::uno::Reference< css::frame::XDispatch > SAL_CALL queryDispatch( + css::util::URL const &, rtl::OUString const &, sal_Int32) override; + + virtual css::uno::Sequence< css::uno::Reference< css::frame::XDispatch > > + SAL_CALL queryDispatches( + css::uno::Sequence< css::frame::DispatchDescriptor > const & Requests) override; + + css::uno::Reference< css::uno::XComponentContext > context_; +}; + +rtl::OUString Provider::static_getImplementationName() { + return rtl::OUString("com.sun.star.comp.test.deployment.active_native"); +} + +css::uno::Sequence< rtl::OUString > Provider::static_getSupportedServiceNames() +{ + rtl::OUString name("com.sun.star.test.deployment.active_native"); + return css::uno::Sequence< rtl::OUString >(&name, 1); +} + +css::uno::Reference< css::frame::XDispatch > Provider::queryDispatch( + css::util::URL const &, rtl::OUString const &, sal_Int32) +{ + css::uno::Reference< css::frame::XDispatch > dispatch; + if (!(context_->getValueByName( + "/singletons/com.sun.star.test.deployment." + "active_native_singleton") >>= + dispatch) || + !dispatch.is()) + { + throw css::uno::DeploymentException( + "component context fails to supply singleton" + " com.sun.star.test.deployment.active_native_singleton of type" + " com.sun.star.frame.XDispatch", + context_); + } + return dispatch; +} + +css::uno::Sequence< css::uno::Reference< css::frame::XDispatch > > +Provider::queryDispatches( + css::uno::Sequence< css::frame::DispatchDescriptor > const & Requests) +{ + css::uno::Sequence< css::uno::Reference< css::frame::XDispatch > > s( + Requests.getLength()); + for (sal_Int32 i = 0; i < s.getLength(); ++i) { + s[i] = queryDispatch( + Requests[i].FeatureURL, Requests[i].FrameName, + Requests[i].SearchFlags); + } + return s; +} + +class Dispatch: + public cppu::WeakImplHelper2< + css::lang::XServiceInfo, css::frame::XDispatch > +{ +public: + Dispatch(const Dispatch&) = delete; + const Dispatch& operator=(const Dispatch&) = delete; + + static css::uno::Reference< css::uno::XInterface > SAL_CALL static_create( + css::uno::Reference< css::uno::XComponentContext > const & xContext) + { return static_cast< cppu::OWeakObject * >(new Dispatch(xContext)); } + + static rtl::OUString SAL_CALL static_getImplementationName(); + + static css::uno::Sequence< rtl::OUString > SAL_CALL + static_getSupportedServiceNames() + { return css::uno::Sequence< rtl::OUString >(); } + +private: + explicit Dispatch( + css::uno::Reference< css::uno::XComponentContext > const & context): + context_(context) { assert(context.is()); } + + virtual ~Dispatch() {} + + virtual rtl::OUString SAL_CALL getImplementationName() override + { return static_getImplementationName(); } + + virtual sal_Bool SAL_CALL supportsService(rtl::OUString const & ServiceName) override + { return cppu::supportsService(this, ServiceName); } + + virtual css::uno::Sequence< rtl::OUString > SAL_CALL + getSupportedServiceNames() override + { return static_getSupportedServiceNames(); } + + virtual void SAL_CALL dispatch( + css::util::URL const &, + css::uno::Sequence< css::beans::PropertyValue > const &) override; + + virtual void SAL_CALL addStatusListener( + css::uno::Reference< css::frame::XStatusListener > const &, + css::util::URL const &) override + {} + + virtual void SAL_CALL removeStatusListener( + css::uno::Reference< css::frame::XStatusListener > const &, + css::util::URL const &) override + {} + + css::uno::Reference< css::uno::XComponentContext > context_; +}; + +rtl::OUString Dispatch::static_getImplementationName() { + return rtl::OUString( + "com.sun.star.comp.test.deployment.active_native_singleton"); +} + +void Dispatch::dispatch( + css::util::URL const &, + css::uno::Sequence< css::beans::PropertyValue > const &) +{ + css::uno::Reference< css::frame::XDesktop2 > xDesktop = css::frame::Desktop::create(context_); + css::uno::Reference< css::frame::XFrame > xFrame = xDesktop->getCurrentFrame(); + css::uno::Reference< css::awt::XWindowPeer > xWindowPeer( xFrame->getComponentWindow(), css::uno::UNO_QUERY_THROW ); + css::uno::Reference< css::awt::XToolkit2 > xToolkit = css::awt::Toolkit::create(context_); + css::uno::Reference< css::awt::XMessageBox > box( + xToolkit->createMessageBox( + xWindowPeer, + css::awt::MessageBoxType_INFOBOX, + css::awt::MessageBoxButtons::BUTTONS_OK, "active", "native"), + css::uno::UNO_SET_THROW); + + box->execute(); + + css::uno::Reference< css::lang::XComponent > xComponent(box, css::uno::UNO_QUERY_THROW); + xComponent->dispose(); +} + +cppu::ImplementationEntry const services[] = { + { &Provider::static_create, &Provider::static_getImplementationName, + &Provider::static_getSupportedServiceNames, + &cppu::createSingleComponentFactory, nullptr, 0 }, + { &Dispatch::static_create, &Dispatch::static_getImplementationName, + &Dispatch::static_getSupportedServiceNames, + &cppu::createSingleComponentFactory, nullptr, 0 }, + { nullptr, nullptr, nullptr, nullptr, nullptr, 0 } +}; + +} + +extern "C" SAL_DLLPUBLIC_EXPORT void * component_getFactory( + char const * pImplName, void * pServiceManager, void * pRegistryKey) +{ + return cppu::component_getFactoryHelper( + pImplName, pServiceManager, pRegistryKey, services); +} + +extern "C" SAL_DLLPUBLIC_EXPORT void +component_getImplementationEnvironment( + char const ** ppEnvTypeName, uno_Environment **) +{ + *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME; +} + +extern "C" SAL_DLLPUBLIC_EXPORT sal_Bool component_writeInfo( + void * pServiceManager, void * pRegistryKey) +{ + if (!component_writeInfoHelper(pServiceManager, pRegistryKey, services)) { + return false; + } + try { + css::uno::Reference< css::registry::XRegistryKey >( + (css::uno::Reference< css::registry::XRegistryKey >( + static_cast< css::registry::XRegistryKey * >(pRegistryKey))-> + createKey( + "/" + Dispatch::static_getImplementationName() + + ("/UNO/SINGLETONS/com.sun.star.test.deployment." + "active_native_singleton"))), + css::uno::UNO_SET_THROW)-> + setStringValue(Dispatch::static_getImplementationName()); + } catch (const css::uno::Exception & e) { + SAL_INFO( + "desktop.test", + "active_native component_writeInfo exception: " << e.Message); + return false; + } + return true; +} + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/desktop/test/deployment/active/active_python.py b/desktop/test/deployment/active/active_python.py new file mode 100644 index 000000000..7f6e5bbd4 --- /dev/null +++ b/desktop/test/deployment/active/active_python.py @@ -0,0 +1,112 @@ +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# This file incorporates work covered by the following license notice: +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed +# with this work for additional information regarding copyright +# ownership. The ASF licenses this file to you under the Apache +# License, Version 2.0 (the "License"); you may not use this file +# except in compliance with the License. You may obtain a copy of +# the License at http://www.apache.org/licenses/LICENSE-2.0 . +# + +import uno +import unohelper + +from com.sun.star.awt import Rectangle +from com.sun.star.awt.MessageBoxButtons import BUTTONS_OK +from com.sun.star.awt.MessageBoxType import INFOBOX +from com.sun.star.frame import XDispatch, XDispatchProvider +from com.sun.star.lang import XServiceInfo +from com.sun.star.registry import InvalidRegistryException + +class Provider(unohelper.Base, XServiceInfo, XDispatchProvider): + implementationName = "com.sun.star.comp.test.deployment.active_python" + + serviceNames = ("com.sun.star.test.deployment.active_python",) + + def __init__(self, context): + self.context = context + + def getImplementationName(self): + return self.implementationName + + def supportsService(self, ServiceName): + return ServiceName in self.serviceNames + + def getSupportedServiceNames(self): + return self.serviceNames + + def queryDispatch(self, URL, TargetFrame, SearchFlags): + return self.context.getValueByName( \ + "/singletons/com.sun.star.test.deployment.active_python_singleton") + + def queryDispatches(self, Requests): + tuple( \ + self.queryDispatch(i.FeatureURL, i.FrameName, i.SearchFlags) \ + for i in Requests) + +class Dispatch(unohelper.Base, XServiceInfo, XDispatch): + implementationName = \ + "com.sun.star.comp.test.deployment.active_python_singleton" + + serviceNames = () + + def __init__(self, context): + self.context = context + + def getImplementationName(self): + return self.implementationName + + def supportsService(self, ServiceName): + return ServiceName in self.serviceNames + + def getSupportedServiceNames(self): + return self.serviceNames + + def dispatch(self, URL, Arguments): + smgr = self.context.getServiceManager() + box = smgr.createInstanceWithContext( \ + "com.sun.star.awt.Toolkit", self.context).createMessageBox( \ + smgr.createInstanceWithContext( \ + "com.sun.star.frame.Desktop", self.context). \ + getCurrentFrame().getComponentWindow(), \ + INFOBOX, BUTTONS_OK, "active", "python") + box.execute(); + box.dispose(); + + def addStatusListener(self, Control, URL): + pass + + def removeStatusListener(self, Control, URL): + pass + +def getComponentFactory(implementationName, smgr, regKey): + if implementationName == Provider.implementationName: + return unohelper.createSingleServiceFactory( \ + Provider, Provider.implementationName, Provider.serviceNames) + elif implementationName == Dispatch.implementationName: + return unohelper.createSingleServiceFactory( \ + Dispatch, Dispatch.implementationName, Dispatch.serviceNames) + else: + return None + +def writeRegistryInfo(smgr, regKey): + try: + for i in (Provider, Dispatch): + key = regKey.createKey("/" + i.implementationName + "/UNO") + for j in i.serviceNames: + key.createKey("/SERVICES/" + j); + regKey.createKey( \ + "/" + Dispatch.implementationName + "/UNO/SINGLETONS/" \ + "com.sun.star.test.deployment.active_python_singleton"). \ + setStringValue(Dispatch.implementationName) + except InvalidRegistryException: + return False + return True diff --git a/desktop/test/deployment/active/com/sun/star/comp/test/deployment/Dispatch.java b/desktop/test/deployment/active/com/sun/star/comp/test/deployment/Dispatch.java new file mode 100644 index 000000000..e224c9418 --- /dev/null +++ b/desktop/test/deployment/active/com/sun/star/comp/test/deployment/Dispatch.java @@ -0,0 +1,95 @@ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +package com.sun.star.comp.test.deployment.active_java; + +import com.sun.star.awt.MessageBoxButtons; +import com.sun.star.awt.MessageBoxType; +import com.sun.star.awt.Rectangle; +import com.sun.star.awt.XMessageBox; +import com.sun.star.awt.XMessageBoxFactory; +import com.sun.star.awt.XWindowPeer; +import com.sun.star.beans.PropertyValue; +import com.sun.star.frame.DispatchDescriptor; +import com.sun.star.frame.XDesktop; +import com.sun.star.frame.XDispatch; +import com.sun.star.frame.XStatusListener; +import com.sun.star.lang.WrappedTargetRuntimeException; +import com.sun.star.lang.XComponent; +import com.sun.star.lang.XMultiComponentFactory; +import com.sun.star.lang.XServiceInfo; +import com.sun.star.lib.uno.helper.WeakBase; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.uno.XComponentContext; +import com.sun.star.util.URL; + +public final class Dispatch extends WeakBase implements XServiceInfo, XDispatch +{ + public Dispatch(XComponentContext context) { + this.context = context; + } + + public String getImplementationName() { return implementationName; } + + public boolean supportsService(String ServiceName) { + return false; //TODO + } + + public String[] getSupportedServiceNames() { + return serviceNames; + } + + public void dispatch(URL URL, PropertyValue[] Arguments) { + try { + XMultiComponentFactory smgr = UnoRuntime.queryInterface( + XMultiComponentFactory.class, context.getServiceManager()); + XMessageBox box = UnoRuntime.queryInterface( + XMessageBoxFactory.class, + smgr.createInstanceWithContext( + "com.sun.star.awt.Toolkit", context)). + createMessageBox( + UnoRuntime.queryInterface( + XWindowPeer.class, + (UnoRuntime.queryInterface( + XDesktop.class, + smgr.createInstanceWithContext( + "com.sun.star.frame.Desktop", context)). + getCurrentFrame().getComponentWindow())), + MessageBoxType.INFOBOX, MessageBoxButtons.BUTTONS_OK, + "active", "java"); + box.execute(); + UnoRuntime.queryInterface(XComponent.class, box).dispose(); + } catch (com.sun.star.uno.RuntimeException e) { + throw e; + } catch (com.sun.star.uno.Exception e) { + throw new WrappedTargetRuntimeException(e, + "wrapped: " + e.getMessage(), this, e); + } + } + + public void addStatusListener(XStatusListener Control, URL URL) {} + + public void removeStatusListener(XStatusListener Control, URL URL) {} + + private final XComponentContext context; + + static final String implementationName = + "com.sun.star.comp.test.deployment.active_java_singleton"; + + static final String[] serviceNames = new String[0]; +} diff --git a/desktop/test/deployment/active/com/sun/star/comp/test/deployment/Provider.java b/desktop/test/deployment/active/com/sun/star/comp/test/deployment/Provider.java new file mode 100644 index 000000000..3b9f8b88e --- /dev/null +++ b/desktop/test/deployment/active/com/sun/star/comp/test/deployment/Provider.java @@ -0,0 +1,74 @@ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +package com.sun.star.comp.test.deployment.active_java; + +import com.sun.star.frame.DispatchDescriptor; +import com.sun.star.frame.XDispatch; +import com.sun.star.frame.XDispatchProvider; +import com.sun.star.lang.XServiceInfo; +import com.sun.star.lib.uno.helper.WeakBase; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.uno.XComponentContext; +import com.sun.star.util.URL; + +public final class Provider extends WeakBase + implements XServiceInfo, XDispatchProvider +{ + public Provider(XComponentContext context) { + this.context = context; + } + + public String getImplementationName() { return implementationName; } + + public boolean supportsService(String ServiceName) { + return ServiceName.equals(getSupportedServiceNames()[0]); //TODO + } + + public String[] getSupportedServiceNames() { + return serviceNames; + } + + public XDispatch queryDispatch( + URL URL, String TargetFrameName, int SearchFlags) + { + return UnoRuntime.queryInterface( + XDispatch.class, + context.getValueByName( + "/singletons/" + + "com.sun.star.test.deployment.active_java_singleton")); + } + + public XDispatch[] queryDispatches(DispatchDescriptor[] Requests) { + XDispatch[] s = new XDispatch[Requests.length]; + for (int i = 0; i < s.length; ++i) { + s[i] = queryDispatch( + Requests[i].FeatureURL, Requests[i].FrameName, + Requests[i].SearchFlags); + } + return s; + } + + private final XComponentContext context; + + static final String implementationName = + "com.sun.star.comp.test.deployment.active_java"; + + static final String[] serviceNames = new String[] { + "com.sun.star.test.deployment.active_java" }; +} diff --git a/desktop/test/deployment/active/com/sun/star/comp/test/deployment/Services.java b/desktop/test/deployment/active/com/sun/star/comp/test/deployment/Services.java new file mode 100644 index 000000000..1af3f42b7 --- /dev/null +++ b/desktop/test/deployment/active/com/sun/star/comp/test/deployment/Services.java @@ -0,0 +1,65 @@ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +package com.sun.star.comp.test.deployment.active_java; + +import com.sun.star.lang.XSingleComponentFactory; +import com.sun.star.lib.uno.helper.Factory; +import com.sun.star.registry.InvalidRegistryException; +import com.sun.star.registry.XRegistryKey; + +public final class Services { + private Services() {} + + public static XSingleComponentFactory __getComponentFactory( + String implementation) + { + if (implementation.equals(Dispatch.implementationName)) { + return Factory.createComponentFactory( + Dispatch.class, Dispatch.implementationName, + Dispatch.serviceNames); + } else if (implementation.equals(Provider.implementationName)) { + return Factory.createComponentFactory( + Provider.class, Provider.implementationName, + Provider.serviceNames); + } else { + return null; + } + } + + public static boolean __writeRegistryServiceInfo(XRegistryKey key) { + if (!(Factory.writeRegistryServiceInfo( + Dispatch.implementationName, Dispatch.serviceNames, key) && + Factory.writeRegistryServiceInfo( + Provider.implementationName, Provider.serviceNames, key))) + { + return false; + } + try { + key. + createKey( + "/" + Dispatch.implementationName + + "/UNO/SINGLETONS/" + + "com.sun.star.test.deployment.active_java_singleton"). + setStringValue(Dispatch.implementationName); + } catch (InvalidRegistryException e) { + return false; + } + return true; + } +} diff --git a/desktop/test/deployment/active/description.xml b/desktop/test/deployment/active/description.xml new file mode 100644 index 000000000..685d72132 --- /dev/null +++ b/desktop/test/deployment/active/description.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + --> + +<d:description xmlns:d="http://openoffice.org/extensions/description/2006"> + <d:identifier + value="org.openoffice/framework/desktop/test/deployment/active"/> + <d:version value="1"/> + <d:dependencies> + <d:OpenOffice.org-minimal-version d:name="OpenOffice.org 3.4" value="3.4"/> + </d:dependencies> +</d:description> diff --git a/desktop/test/deployment/crashextension/Addons.xcu b/desktop/test/deployment/crashextension/Addons.xcu new file mode 100644 index 000000000..019a068e7 --- /dev/null +++ b/desktop/test/deployment/crashextension/Addons.xcu @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * +--> + +<o:items xmlns:o="http://openoffice.org/2001/registry"> + <item o:path="/org.openoffice.Office.Addons"> + <node o:name="AddonUI"> + <node o:name="Images"> + <node o:name="org.libreoffice.test.desktop.deployment.crashextension.imageCrash" o:op="replace"> + <prop o:name="URL"> + <value>vnd.org.libreoffice.test.desktop.deployment.crashextension:</value> + </prop> + <node o:name="UserDefinedImages"> + <prop o:name="ImageSmallURL"> + <value>%origin%/crash.png</value> + </prop> + <prop o:name="ImageBigURL"> + <value>%origin%/crash.png</value> + </prop> + </node> + </node> + </node> + <node o:name="OfficeToolbarMerging"> + <node o:name="org.libreoffice.test.desktop.deployment.crashextension.toolbarmerge" o:op="replace"> + <node o:name="T1" o:op="replace"> + <prop o:name="MergeToolBar"> + <value>standardbar</value> + </prop> + <prop o:name="MergePoint"> + <value>.uno:HelpIndex</value> + </prop> + <prop o:name="MergeCommand"> + <value>AddAfter</value> + </prop> + <prop o:name="MergeFallback"> + <value>AddLast</value> + </prop> + <prop o:name="MergeContext"> + <value/> + </prop> + <node o:name="ToolBarItems"> + <node o:name="B1" o:op="replace"> + <prop o:name="URL"> + <value>vnd.org.libreoffice.test.desktop.deployment.crashextension:</value> + </prop> + <prop o:name="Title"> + <value xml:lang="en-US">Crash LibreOffice</value> + </prop> + </node> + </node> + </node> + </node> + </node> + </node> + </item> +</o:items> diff --git a/desktop/test/deployment/crashextension/META-INF/manifest.xml b/desktop/test/deployment/crashextension/META-INF/manifest.xml new file mode 100644 index 000000000..cbb801947 --- /dev/null +++ b/desktop/test/deployment/crashextension/META-INF/manifest.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * +--> + +<m:manifest xmlns:m="http://openoffice.org/2001/manifest"> + <m:file-entry m:media-type="application/vnd.sun.star.configuration-data" + m:full-path="Addons.xcu"/> + <m:file-entry m:media-type="application/vnd.sun.star.configuration-data" + m:full-path="ProtocolHandler.xcu"/> + <m:file-entry m:media-type="application/vnd.sun.star.configuration-data" + m:full-path="ToolbarMerge.xcu"/> + <m:file-entry + m:media-type="application/vnd.sun.star.uno-components;platform=@PLATFORM@" + m:full-path="platform.components"/> +</m:manifest> diff --git a/desktop/test/deployment/crashextension/ProtocolHandler.xcu b/desktop/test/deployment/crashextension/ProtocolHandler.xcu new file mode 100644 index 000000000..f4011743b --- /dev/null +++ b/desktop/test/deployment/crashextension/ProtocolHandler.xcu @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * +--> + +<o:component-data xmlns:o="http://openoffice.org/2001/registry" + o:package="org.openoffice.Office" o:name="ProtocolHandler"> + <node o:name="HandlerSet"> + <node o:name="org.libreoffice.test.desktop.deployment.crashextension" o:op="replace"> + <prop o:name="Protocols"> + <value>vnd.org.libreoffice.test.desktop.deployment.crashextension:*</value> + </prop> + </node> + </node> +</o:component-data> diff --git a/desktop/test/deployment/crashextension/crash.png b/desktop/test/deployment/crashextension/crash.png Binary files differnew file mode 100644 index 000000000..693df038c --- /dev/null +++ b/desktop/test/deployment/crashextension/crash.png diff --git a/desktop/test/deployment/crashextension/crashextension.component b/desktop/test/deployment/crashextension/crashextension.component new file mode 100644 index 000000000..2597e444a --- /dev/null +++ b/desktop/test/deployment/crashextension/crashextension.component @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * +--> + +<component loader="com.sun.star.loader.SharedLibrary" + xmlns="http://openoffice.org/2010/uno-components"> + <implementation name="org.libreoffice.test.desktop.deployment.crashextension.impl"> + <service name="org.libreoffice.test.desktop.deployment.crashextension"/> + </implementation> +</component> diff --git a/desktop/test/deployment/crashextension/crashextension.cxx b/desktop/test/deployment/crashextension/crashextension.cxx new file mode 100644 index 000000000..2e64f3af0 --- /dev/null +++ b/desktop/test/deployment/crashextension/crashextension.cxx @@ -0,0 +1,152 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#include <sal/config.h> + +#include <cassert> +#include <cstddef> + +#include <com/sun/star/beans/PropertyValue.hpp> +#include <com/sun/star/frame/DispatchDescriptor.hpp> +#include <com/sun/star/frame/XDispatch.hpp> +#include <com/sun/star/frame/XDispatchProvider.hpp> +#include <com/sun/star/frame/XStatusListener.hpp> +#include <com/sun/star/lang/XServiceInfo.hpp> +#include <com/sun/star/uno/DeploymentException.hpp> +#include <com/sun/star/uno/Reference.hxx> +#include <com/sun/star/uno/Sequence.hxx> +#include <com/sun/star/uno/XComponentContext.hpp> +#include <com/sun/star/uno/XInterface.hpp> +#include <com/sun/star/util/URL.hpp> +#include <cppuhelper/implbase3.hxx> +#include <cppuhelper/implementationentry.hxx> +#include <cppuhelper/supportsservice.hxx> +#include <rtl/ustring.hxx> +#include <uno/lbnames.h> + +namespace +{ +class Provider : public cppu::WeakImplHelper3<css::lang::XServiceInfo, + css::frame::XDispatchProvider, css::frame::XDispatch> +{ +public: + Provider(const Provider&) = delete; + const Provider& operator=(const Provider&) = delete; + + static css::uno::Reference<css::uno::XInterface> + SAL_CALL static_create(css::uno::Reference<css::uno::XComponentContext> const& xContext) + { + return static_cast<cppu::OWeakObject*>(new Provider(xContext)); + } + + static rtl::OUString SAL_CALL static_getImplementationName(); + + static css::uno::Sequence<rtl::OUString> SAL_CALL static_getSupportedServiceNames(); + +private: + explicit Provider(css::uno::Reference<css::uno::XComponentContext> const& context) + : context_(context) + { + assert(context.is()); + } + + virtual ~Provider() {} + + virtual rtl::OUString SAL_CALL getImplementationName() override + { + return static_getImplementationName(); + } + + virtual sal_Bool SAL_CALL supportsService(rtl::OUString const& ServiceName) override + { + return cppu::supportsService(this, ServiceName); + } + + virtual css::uno::Sequence<rtl::OUString> SAL_CALL getSupportedServiceNames() override + { + return static_getSupportedServiceNames(); + } + + virtual css::uno::Reference<css::frame::XDispatch> + SAL_CALL queryDispatch(css::util::URL const&, rtl::OUString const&, sal_Int32) override; + + virtual css::uno::Sequence<css::uno::Reference<css::frame::XDispatch>> SAL_CALL + queryDispatches(css::uno::Sequence<css::frame::DispatchDescriptor> const& Requests) override; + + virtual void SAL_CALL dispatch(css::util::URL const&, + css::uno::Sequence<css::beans::PropertyValue> const&) override; + + virtual void SAL_CALL addStatusListener(css::uno::Reference<css::frame::XStatusListener> const&, + css::util::URL const&) override + { + } + + virtual void SAL_CALL removeStatusListener( + css::uno::Reference<css::frame::XStatusListener> const&, css::util::URL const&) override + { + } + + css::uno::Reference<css::uno::XComponentContext> context_; +}; + +rtl::OUString Provider::static_getImplementationName() +{ + return rtl::OUString("org.libreoffice.test.desktop.deployment.crashextension.impl"); +} + +css::uno::Sequence<rtl::OUString> Provider::static_getSupportedServiceNames() +{ + rtl::OUString name("org.libreoffice.test.desktop.deployment.crashextension"); + return css::uno::Sequence<rtl::OUString>(&name, 1); +} + +css::uno::Reference<css::frame::XDispatch> Provider::queryDispatch(css::util::URL const&, + rtl::OUString const&, sal_Int32) +{ + return this; +} + +css::uno::Sequence<css::uno::Reference<css::frame::XDispatch>> +Provider::queryDispatches(css::uno::Sequence<css::frame::DispatchDescriptor> const& Requests) +{ + css::uno::Sequence<css::uno::Reference<css::frame::XDispatch>> s(Requests.getLength()); + for (sal_Int32 i = 0; i < s.getLength(); ++i) + { + s[i] + = queryDispatch(Requests[i].FeatureURL, Requests[i].FrameName, Requests[i].SearchFlags); + } + return s; +} + +void Provider::dispatch(css::util::URL const&, css::uno::Sequence<css::beans::PropertyValue> const&) +{ + // Crash LibreOffice + *((char*)NULL) = 0; +} + +cppu::ImplementationEntry const services[] + = { { &Provider::static_create, &Provider::static_getImplementationName, + &Provider::static_getSupportedServiceNames, &cppu::createSingleComponentFactory, NULL, + 0 }, + { NULL, NULL, NULL, NULL, NULL, 0 } }; +} + +extern "C" SAL_DLLPUBLIC_EXPORT void* +component_getFactory(char const* pImplName, void* pServiceManager, void* pRegistryKey) +{ + return cppu::component_getFactoryHelper(pImplName, pServiceManager, pRegistryKey, services); +} + +extern "C" SAL_DLLPUBLIC_EXPORT void +component_getImplementationEnvironment(char const** ppEnvTypeName, uno_Environment**) +{ + *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME; +} + +/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ diff --git a/desktop/test/deployment/crashextension/description.xml b/desktop/test/deployment/crashextension/description.xml new file mode 100644 index 000000000..3084b17ae --- /dev/null +++ b/desktop/test/deployment/crashextension/description.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * +--> + +<d:description xmlns:d="http://openoffice.org/extensions/description/2006"> + <d:identifier + value="org.libreoffice.test.desktop.deployment.crashextension"/> + <d:version value="1.0"/> + <d:display-name> + <d:name lang="en">Crash LibreOffice</d:name> + </d:display-name> + <d:dependencies> + <d:OpenOffice.org-minimal-version d:name="OpenOffice.org 3.4" value="3.4"/> + </d:dependencies> +</d:description> diff --git a/desktop/test/deployment/dependencies/broken-dependency.oxt b/desktop/test/deployment/dependencies/broken-dependency.oxt Binary files differnew file mode 100644 index 000000000..11bab0a95 --- /dev/null +++ b/desktop/test/deployment/dependencies/broken-dependency.oxt diff --git a/desktop/test/deployment/dependencies/double-dependencies.oxt b/desktop/test/deployment/dependencies/double-dependencies.oxt Binary files differnew file mode 100644 index 000000000..055c27ea5 --- /dev/null +++ b/desktop/test/deployment/dependencies/double-dependencies.oxt diff --git a/desktop/test/deployment/dependencies/empty-dependencies.oxt b/desktop/test/deployment/dependencies/empty-dependencies.oxt Binary files differnew file mode 100644 index 000000000..ebb18dcbf --- /dev/null +++ b/desktop/test/deployment/dependencies/empty-dependencies.oxt diff --git a/desktop/test/deployment/dependencies/funny-dependency.oxt b/desktop/test/deployment/dependencies/funny-dependency.oxt Binary files differnew file mode 100644 index 000000000..9b683e6d1 --- /dev/null +++ b/desktop/test/deployment/dependencies/funny-dependency.oxt diff --git a/desktop/test/deployment/dependencies/license-dependency.oxt b/desktop/test/deployment/dependencies/license-dependency.oxt Binary files differnew file mode 100644 index 000000000..b01da4b5c --- /dev/null +++ b/desktop/test/deployment/dependencies/license-dependency.oxt diff --git a/desktop/test/deployment/dependencies/loversion35.oxt b/desktop/test/deployment/dependencies/loversion35.oxt Binary files differnew file mode 100644 index 000000000..ecd509cd9 --- /dev/null +++ b/desktop/test/deployment/dependencies/loversion35.oxt diff --git a/desktop/test/deployment/dependencies/loversion36.oxt b/desktop/test/deployment/dependencies/loversion36.oxt Binary files differnew file mode 100644 index 000000000..f38630e0c --- /dev/null +++ b/desktop/test/deployment/dependencies/loversion36.oxt diff --git a/desktop/test/deployment/dependencies/many-dependencies.oxt b/desktop/test/deployment/dependencies/many-dependencies.oxt Binary files differnew file mode 100644 index 000000000..367568143 --- /dev/null +++ b/desktop/test/deployment/dependencies/many-dependencies.oxt diff --git a/desktop/test/deployment/dependencies/maxversion33.oxt b/desktop/test/deployment/dependencies/maxversion33.oxt Binary files differnew file mode 100644 index 000000000..fe0998c81 --- /dev/null +++ b/desktop/test/deployment/dependencies/maxversion33.oxt diff --git a/desktop/test/deployment/dependencies/maxversion34.oxt b/desktop/test/deployment/dependencies/maxversion34.oxt Binary files differnew file mode 100644 index 000000000..0a284b388 --- /dev/null +++ b/desktop/test/deployment/dependencies/maxversion34.oxt diff --git a/desktop/test/deployment/dependencies/maxversion35.oxt b/desktop/test/deployment/dependencies/maxversion35.oxt Binary files differnew file mode 100644 index 000000000..e95b97cd6 --- /dev/null +++ b/desktop/test/deployment/dependencies/maxversion35.oxt diff --git a/desktop/test/deployment/dependencies/maxversion36.oxt b/desktop/test/deployment/dependencies/maxversion36.oxt Binary files differnew file mode 100644 index 000000000..786ed4ce1 --- /dev/null +++ b/desktop/test/deployment/dependencies/maxversion36.oxt diff --git a/desktop/test/deployment/dependencies/minattr22.oxt b/desktop/test/deployment/dependencies/minattr22.oxt Binary files differnew file mode 100644 index 000000000..a6c8e3758 --- /dev/null +++ b/desktop/test/deployment/dependencies/minattr22.oxt diff --git a/desktop/test/deployment/dependencies/minattr23.oxt b/desktop/test/deployment/dependencies/minattr23.oxt Binary files differnew file mode 100644 index 000000000..83d17938c --- /dev/null +++ b/desktop/test/deployment/dependencies/minattr23.oxt diff --git a/desktop/test/deployment/dependencies/minattr24.oxt b/desktop/test/deployment/dependencies/minattr24.oxt Binary files differnew file mode 100644 index 000000000..00f053f48 --- /dev/null +++ b/desktop/test/deployment/dependencies/minattr24.oxt diff --git a/desktop/test/deployment/dependencies/no-dependencies.oxt b/desktop/test/deployment/dependencies/no-dependencies.oxt Binary files differnew file mode 100644 index 000000000..6487eb66a --- /dev/null +++ b/desktop/test/deployment/dependencies/no-dependencies.oxt diff --git a/desktop/test/deployment/dependencies/no-description.oxt b/desktop/test/deployment/dependencies/no-description.oxt Binary files differnew file mode 100644 index 000000000..1e6579cd7 --- /dev/null +++ b/desktop/test/deployment/dependencies/no-description.oxt diff --git a/desktop/test/deployment/dependencies/readme.txt b/desktop/test/deployment/dependencies/readme.txt new file mode 100644 index 000000000..8ba90ce4a --- /dev/null +++ b/desktop/test/deployment/dependencies/readme.txt @@ -0,0 +1,73 @@ +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# This file incorporates work covered by the following license notice: +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed +# with this work for additional information regarding copyright +# ownership. The ASF licenses this file to you under the Apache +# License, Version 2.0 (the "License"); you may not use this file +# except in compliance with the License. You may obtain a copy of +# the License at http://www.apache.org/licenses/LICENSE-2.0 . +# + +no-description.oxt, no-dependencies.oxt, empty-dependencies.oxt effectively have +no dependencies and should thus install successfully. + +broken-dependencies.oxt contains a malformed description.xml and should thus +display an error and not install. + +double-dependencies.oxt contains a description.xml with two dependencies +elements. This is not allowed by the spec but behaviour is unspecified. In the +current implementation, it combines the two elements, and thus finds two +unsatisfied dependencies, displays the Unsatisfied Dependencies dialog and does +not install. + +version21.oxt contains a dependency on OOo 2.1 (and should thus only install in +OOo 2.1 or later); version21ns.oxt is the same, but with a different way of +using XML namespaces; version21other.oxt additionally contains an unsatisfied +dependency (and should thus not install in any OOo version). version22.oxt +contains a dependency on OOo 2.2 (and should thus only install in OOo 2.2 or +later). version23.oxt contains a dependency on OOo 2.3 (and should thus only +install in OOo 2.3 or later). version10000.oxt contains a dependency on the +hypothetical OOo version 10000 (and should thus not install in any OOo version). +versionempty.oxt contains an empty value attribute and versionnone.oxt lacks the +value attribute; neither is allowed by the spec, but the current implementation +treats both as pre OOo 2.1 versions (and the extensions should thus install in +OOo 2.1 or later). + +maxversion30.oxt contains a maximal version dependency on OOo 3.0 (and should +thus only install in OOo 3.0 or earlier, back to OOo 2.3, thanks to the +additionally specified OpenOffice.org-minimal-version attribute). +maxversion10000.oxt contains a maximal version dependency on the hypothetical +OOo version 10000 (and should thus install in any OOo version 3.1 or later; +OpenOffice.org-maximal-version was introduced in OOo 3.1, and no OpenOffice.org- +minimal-version attribute is specified). bad-minmaxversion.oxt contains a +minimal version dependency on OOo 3.2 and a maximal version dependency on +OOo 3.1 (and should thus not install in any OOo version). + +minattr22.oxt contains a (hypothetical, most probably never satisfied) +UNSATISFIED dependency with an OpenOffice.org-minimal-version attribute of +"2.2" (and should thus install in OOo 2.3 or later); minattr23.oxt is similar, +but with an OpenOffice.org-minimal-version attribute of "2.3" (and should thus +also install in OOo 2.3 or later); minattr24.oxt is similar, but with an +OpenOffice.org-minimal-version attribute of "2.4" (and should thus only install +in OOo 2.4 or later). + +All of the following testcases should result in the Unsatisfied Dependencies +dialog being displayed and the extension not being installed: + +unknown-dependency.oxt contains a dependency without a name attribute, and +should thus display "Unknown" (localized). + +funny-dependency.oxt, many-dependencies.oxt contain somewhat extreme input. + +license-dependency.oxt contains both a license to be accepted by the user and +dependencies. What is important here is that the Unsatisfied Dependencies +dialog is displayed, but not the license (as installation aborts as soon as +unsatisfied dependencies are found). diff --git a/desktop/test/deployment/dependencies/unknown-dependency.oxt b/desktop/test/deployment/dependencies/unknown-dependency.oxt Binary files differnew file mode 100644 index 000000000..7c2a22c6d --- /dev/null +++ b/desktop/test/deployment/dependencies/unknown-dependency.oxt diff --git a/desktop/test/deployment/dependencies/version10000.oxt b/desktop/test/deployment/dependencies/version10000.oxt Binary files differnew file mode 100644 index 000000000..c15b7a117 --- /dev/null +++ b/desktop/test/deployment/dependencies/version10000.oxt diff --git a/desktop/test/deployment/dependencies/version21.oxt b/desktop/test/deployment/dependencies/version21.oxt Binary files differnew file mode 100644 index 000000000..922b27955 --- /dev/null +++ b/desktop/test/deployment/dependencies/version21.oxt diff --git a/desktop/test/deployment/dependencies/version21ns.oxt b/desktop/test/deployment/dependencies/version21ns.oxt Binary files differnew file mode 100644 index 000000000..5efb2ed90 --- /dev/null +++ b/desktop/test/deployment/dependencies/version21ns.oxt diff --git a/desktop/test/deployment/dependencies/version21other.oxt b/desktop/test/deployment/dependencies/version21other.oxt Binary files differnew file mode 100644 index 000000000..d88a8155a --- /dev/null +++ b/desktop/test/deployment/dependencies/version21other.oxt diff --git a/desktop/test/deployment/dependencies/version22.oxt b/desktop/test/deployment/dependencies/version22.oxt Binary files differnew file mode 100644 index 000000000..4c8a207b6 --- /dev/null +++ b/desktop/test/deployment/dependencies/version22.oxt diff --git a/desktop/test/deployment/dependencies/version23.oxt b/desktop/test/deployment/dependencies/version23.oxt Binary files differnew file mode 100644 index 000000000..6c08d2949 --- /dev/null +++ b/desktop/test/deployment/dependencies/version23.oxt diff --git a/desktop/test/deployment/dependencies/version34.oxt b/desktop/test/deployment/dependencies/version34.oxt Binary files differnew file mode 100644 index 000000000..ee2a82d93 --- /dev/null +++ b/desktop/test/deployment/dependencies/version34.oxt diff --git a/desktop/test/deployment/dependencies/version35.oxt b/desktop/test/deployment/dependencies/version35.oxt Binary files differnew file mode 100644 index 000000000..6e99cf1b2 --- /dev/null +++ b/desktop/test/deployment/dependencies/version35.oxt diff --git a/desktop/test/deployment/dependencies/versionempty.oxt b/desktop/test/deployment/dependencies/versionempty.oxt Binary files differnew file mode 100644 index 000000000..a06bb0129 --- /dev/null +++ b/desktop/test/deployment/dependencies/versionempty.oxt diff --git a/desktop/test/deployment/dependencies/versionnone.oxt b/desktop/test/deployment/dependencies/versionnone.oxt Binary files differnew file mode 100644 index 000000000..ace2a1165 --- /dev/null +++ b/desktop/test/deployment/dependencies/versionnone.oxt diff --git a/desktop/test/deployment/description/desc1.oxt b/desktop/test/deployment/description/desc1.oxt Binary files differnew file mode 100644 index 000000000..e447fd6ea --- /dev/null +++ b/desktop/test/deployment/description/desc1.oxt diff --git a/desktop/test/deployment/description/desc2.oxt b/desktop/test/deployment/description/desc2.oxt Binary files differnew file mode 100644 index 000000000..8df2f33fa --- /dev/null +++ b/desktop/test/deployment/description/desc2.oxt diff --git a/desktop/test/deployment/description/desc3.oxt b/desktop/test/deployment/description/desc3.oxt Binary files differnew file mode 100644 index 000000000..fbd1136b0 --- /dev/null +++ b/desktop/test/deployment/description/desc3.oxt diff --git a/desktop/test/deployment/description/desc4.oxt b/desktop/test/deployment/description/desc4.oxt Binary files differnew file mode 100644 index 000000000..0c97f5fd4 --- /dev/null +++ b/desktop/test/deployment/description/desc4.oxt diff --git a/desktop/test/deployment/description/desc5.oxt b/desktop/test/deployment/description/desc5.oxt Binary files differnew file mode 100644 index 000000000..811007349 --- /dev/null +++ b/desktop/test/deployment/description/desc5.oxt diff --git a/desktop/test/deployment/description/readme.txt b/desktop/test/deployment/description/readme.txt new file mode 100644 index 000000000..bb133ba51 --- /dev/null +++ b/desktop/test/deployment/description/readme.txt @@ -0,0 +1,23 @@ +The folder contains extensions which use in the description.xml the following:
+-The <extension-description> element The element contains localized child
+elements.
+
+The following table shows what localized item is used, when the Office the locale
+en-US uses. The displayed extension description contains the locale.
+
+
+Localization:
+
+Installed office: en-US
+ | locale
+=========================
+desc1.oxt | en-US
+-------------------------
+desc2.oxt | en-US-region1
+--------------------------
+desc3.oxt | en
+--------------------------
+desc4.oxt | en-GB
+--------------------------
+desc5.oxt | de
+
diff --git a/desktop/test/deployment/display_name/name1.oxt b/desktop/test/deployment/display_name/name1.oxt Binary files differnew file mode 100644 index 000000000..5a53690d6 --- /dev/null +++ b/desktop/test/deployment/display_name/name1.oxt diff --git a/desktop/test/deployment/display_name/name2.oxt b/desktop/test/deployment/display_name/name2.oxt Binary files differnew file mode 100644 index 000000000..f6cbcae3b --- /dev/null +++ b/desktop/test/deployment/display_name/name2.oxt diff --git a/desktop/test/deployment/display_name/name3.oxt b/desktop/test/deployment/display_name/name3.oxt Binary files differnew file mode 100644 index 000000000..8df750ce6 --- /dev/null +++ b/desktop/test/deployment/display_name/name3.oxt diff --git a/desktop/test/deployment/display_name/name4.oxt b/desktop/test/deployment/display_name/name4.oxt Binary files differnew file mode 100644 index 000000000..6ce4822e3 --- /dev/null +++ b/desktop/test/deployment/display_name/name4.oxt diff --git a/desktop/test/deployment/display_name/name5.oxt b/desktop/test/deployment/display_name/name5.oxt Binary files differnew file mode 100644 index 000000000..56973be78 --- /dev/null +++ b/desktop/test/deployment/display_name/name5.oxt diff --git a/desktop/test/deployment/display_name/readme.txt b/desktop/test/deployment/display_name/readme.txt new file mode 100644 index 000000000..23173bde6 --- /dev/null +++ b/desktop/test/deployment/display_name/readme.txt @@ -0,0 +1,26 @@ +The folder contains extensions which use in the description.xml the following: +-The <display-name> element +The element contains localized child elements. + +To test the display name in the update dialog use the extensions in +desktop/test/deployment/update/simple + + +The following table shows what localized item is used, when the Office the locale +en-US uses. + + +Localization: + +Installed office: en-US + | publisher | release notes +============================================= +name1.oxt | en-US | en-US +--------------------------------------------- +name2.oxt | en-US-region1 | en-US-region1 +--------------------------------------------- +name3.oxt | en | en +--------------------------------------------- +name4.oxt | en-GB | en-GB +--------------------------------------------- +name5.oxt | de | de diff --git a/desktop/test/deployment/executable_content/build/hello.c b/desktop/test/deployment/executable_content/build/hello.c new file mode 100644 index 000000000..d527e7152 --- /dev/null +++ b/desktop/test/deployment/executable_content/build/hello.c @@ -0,0 +1,34 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#include <stdio.h> + +int main(int argc, char** argv, char** envp) +{ + //prevent warning about unused parameters + //we need to provide parameter names in C + (void)argc; + (void)argv; + (void)envp; + + fprintf(stdout, "Hello world!\n"); + return 0; +} + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/desktop/test/deployment/executable_content/build/makefile.mk b/desktop/test/deployment/executable_content/build/makefile.mk new file mode 100644 index 000000000..513d640cf --- /dev/null +++ b/desktop/test/deployment/executable_content/build/makefile.mk @@ -0,0 +1,42 @@ +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# This file incorporates work covered by the following license notice: +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed +# with this work for additional information regarding copyright +# ownership. The ASF licenses this file to you under the Apache +# License, Version 2.0 (the "License"); you may not use this file +# except in compliance with the License. You may obtain a copy of +# the License at http://www.apache.org/licenses/LICENSE-2.0 . +# + +PRJ = ..$/..$/..$/.. + +PRJNAME = desktop +TARGET = hello +LIBTARGET=NO +NO_DEFAULT_STL=TRUE +LIBSALCPPRT= + +.INCLUDE : settings.mk + + +APP1NOSAL = TRUE +APP1OBJS = \ + $(OBJ)$/hello.obj + + +APP1TARGET = $(TARGET) + +DEPOBJFILES = \ + $(OBJ)$/hello.obj + + +.INCLUDE : target.mk + diff --git a/desktop/test/deployment/executable_content/build/readme.txt b/desktop/test/deployment/executable_content/build/readme.txt new file mode 100644 index 000000000..4f956e573 --- /dev/null +++ b/desktop/test/deployment/executable_content/build/readme.txt @@ -0,0 +1,2 @@ +This folder contains the sources to build the hello executable which is contained +in the hello.oxt. diff --git a/desktop/test/deployment/executable_content/hello.oxt b/desktop/test/deployment/executable_content/hello.oxt Binary files differnew file mode 100644 index 000000000..97d6d14a3 --- /dev/null +++ b/desktop/test/deployment/executable_content/hello.oxt diff --git a/desktop/test/deployment/executable_content/readme.txt b/desktop/test/deployment/executable_content/readme.txt new file mode 100644 index 000000000..2c336de72 --- /dev/null +++ b/desktop/test/deployment/executable_content/readme.txt @@ -0,0 +1,12 @@ +When the executable is installed try to execute the executable "hello". The executable +file attribute (not on Windows) should be set. + +CD into the extension directory in /user|share)/uno_packages/cache/uno_packages/xyz_ +Then there are the directories for different platforms: + +windows, +solaris, +linux + +Each directory contains a hello executable. On linux one should execute it in a +shell with a build environment, so that the C++ runtime is found. diff --git a/desktop/test/deployment/identifier/explicit/identifier.oxt b/desktop/test/deployment/identifier/explicit/identifier.oxt Binary files differnew file mode 100644 index 000000000..3851e291c --- /dev/null +++ b/desktop/test/deployment/identifier/explicit/identifier.oxt diff --git a/desktop/test/deployment/identifier/legacy/identifier.oxt b/desktop/test/deployment/identifier/legacy/identifier.oxt Binary files differnew file mode 100644 index 000000000..df8bb8449 --- /dev/null +++ b/desktop/test/deployment/identifier/legacy/identifier.oxt diff --git a/desktop/test/deployment/identifier/readme.txt b/desktop/test/deployment/identifier/readme.txt new file mode 100644 index 000000000..c268ca4af --- /dev/null +++ b/desktop/test/deployment/identifier/readme.txt @@ -0,0 +1,24 @@ +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# This file incorporates work covered by the following license notice: +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed +# with this work for additional information regarding copyright +# ownership. The ASF licenses this file to you under the Apache +# License, Version 2.0 (the "License"); you may not use this file +# except in compliance with the License. You may obtain a copy of +# the License at http://www.apache.org/licenses/LICENSE-2.0 . +# + +legacy/identifier.oxt and explicit/identifier.oxt are two different extensions +that happen to have the same file name. legacy/identifier.oxt does not have an +explicit extension identifier, so it gets the implicit one "org.openoffice. +legacy.identifier.oxt". explicit/identifier.oxt has the +explicit extension identifier "org.openoffice/framework/desktop/test/deployment/ +identifier/explicit/identifier.oxt". diff --git a/desktop/test/deployment/locationtest/LocationTest.idl b/desktop/test/deployment/locationtest/LocationTest.idl new file mode 100644 index 000000000..9e7881ce1 --- /dev/null +++ b/desktop/test/deployment/locationtest/LocationTest.idl @@ -0,0 +1,34 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef _com_sun_star_comp_smoketest_LocationTest_idl_ +#define _com_sun_star_comp_smoketest_LocationTest_idl_ + +#include <com/sun/star/lang/XServiceInfo.idl> + + +module com { module sun { module star { module comp { module smoketest { + // example service, XServiceInfo is implemented here for demonstration + // issues. XServiceInfo must be implemented by all components. + service TestExtension: ::com::sun::star::lang::XServiceInfo; +};};};};}; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/desktop/test/deployment/locationtest/LocationTest.java b/desktop/test/deployment/locationtest/LocationTest.java new file mode 100644 index 000000000..ca70b5a1e --- /dev/null +++ b/desktop/test/deployment/locationtest/LocationTest.java @@ -0,0 +1,156 @@ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +package com.sun.star.comp.smoketest; + +import com.sun.star.lib.uno.helper.Factory; +import com.sun.star.lang.XMultiComponentFactory; +import com.sun.star.lang.XSingleComponentFactory; +import com.sun.star.lib.uno.helper.WeakBase; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.uno.XComponentContext; +import com.sun.star.registry.XRegistryKey; +import com.sun.star.lang.XInitialization; +import com.sun.star.lang.XTypeProvider; +import com.sun.star.lang.XServiceInfo; +import com.sun.star.uno.Type; + +/** This class capsulates the class, that implements the minimal component, a + * factory for creating the service (<CODE>__getComponentFactory</CODE>) and a + * method, that writes the information into the given registry key + * (<CODE>__writeRegistryServiceInfo</CODE>). + */ +public class LocationTest { + /** This class implements the component. At least the interfaces XServiceInfo, + * XTypeProvider, and XInitialization should be provided by the service. + */ + public static class _LocationTest extends WeakBase + implements XServiceInfo { + /** The service name, that must be used to get an instance of this service. + */ + private static final String __serviceName = + "com.sun.star.comp.smoketest.LocationTest"; + + /** The initial component contextr, that gives access to + * the service manager, supported singletons, ... + * It's often later used + */ + private XComponentContext m_cmpCtx; + + /** The service manager, that gives access to all registered services. + * It's often later used + */ + private XMultiComponentFactory m_xMCF; + + /** The constructor of the inner class has a XMultiServiceFactory parameter. + * @param xmultiservicefactoryInitialization A special service factory + * could be introduced while initializing. + */ + public _LocationTest(XComponentContext xCompContext) { + try { + m_cmpCtx = xCompContext; + m_xMCF = m_cmpCtx.getServiceManager(); + } + catch( Exception e ) { + e.printStackTrace(); + } + } + + /** This method returns an array of all supported service names. + * @return Array of supported service names. + */ + public String[] getSupportedServiceNames() { + return getServiceNames(); + } + + /** This method is a simple helper function to used in the + * static component initialisation functions as well as in + * getSupportedServiceNames. + */ + public static String[] getServiceNames() { + String[] sSupportedServiceNames = { __serviceName }; + return sSupportedServiceNames; + } + + /** This method returns true, if the given service will be + * supported by the component. + * @param sServiceName Service name. + * @return True, if the given service name will be supported. + */ + public boolean supportsService( String sServiceName ) { + return sServiceName.equals( __serviceName ); + } + + /** Return the class name of the component. + * @return Class name of the component. + */ + public String getImplementationName() { + return _LocationTest.class.getName(); + } + } + + + /** + * Gives a factory for creating the service. + * This method is called by the <code>JavaLoader</code> + * <p> + * @return returns a <code>XSingleComponentFactory</code> for creating + * the component + * @param sImplName the name of the implementation for which a + * service is desired + * @see com.sun.star.comp.loader.JavaLoader + */ + public static XSingleComponentFactory __getComponentFactory(String sImplName) + { + XSingleComponentFactory xFactory = null; + + if ( sImplName.equals( _LocationTest.class.getName() ) ) + xFactory = Factory.createComponentFactory(_LocationTest.class, + _LocationTest.getServiceNames()); + + return xFactory; + } + + /** + * Writes the service information into the given registry key. + * This method is called by the <code>JavaLoader</code> + * <p> + * @return returns true if the operation succeeded + * @param regKey the registryKey + * @see com.sun.star.comp.loader.JavaLoader + */ + public static boolean __writeRegistryServiceInfo(XRegistryKey regKey) { + return Factory.writeRegistryServiceInfo(_LocationTest.class.getName(), + _LocationTest.getServiceNames(), + regKey); + } + + /** This method is a member of the interface for initializing an object + * directly after its creation. + * @param object This array of arbitrary objects will be passed to the + * component after its creation. + * @throws Exception Every exception will not be handled, but will be + * passed to the caller. + */ + public void initialize( Object[] object ) + throws com.sun.star.uno.Exception { + /* The component describes what arguments are expected and in which + * order! At this point you can read the objects and initialize + * your component using these objects. + */ + } +} diff --git a/desktop/test/deployment/locationtest/LocationTest.odt b/desktop/test/deployment/locationtest/LocationTest.odt Binary files differnew file mode 100644 index 000000000..8e1aa7007 --- /dev/null +++ b/desktop/test/deployment/locationtest/LocationTest.odt diff --git a/desktop/test/deployment/locationtest/MANIFEST.MF b/desktop/test/deployment/locationtest/MANIFEST.MF new file mode 100644 index 000000000..a2fa8c34b --- /dev/null +++ b/desktop/test/deployment/locationtest/MANIFEST.MF @@ -0,0 +1,2 @@ +RegistrationClassName: com.sun.star.comp.smoketest.LocationTest + diff --git a/desktop/test/deployment/locationtest/description.xml b/desktop/test/deployment/locationtest/description.xml new file mode 100644 index 000000000..0d2b71294 --- /dev/null +++ b/desktop/test/deployment/locationtest/description.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/description/2006" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:d="http://openoffice.org/extensions/description/2006" > + <identifier value="org.openoffice.extensions.testarea.desktop.location"/> + <version value="1.0" /> + <dependencies > + <OpenOffice.org-minimal-version value="2.2" d:name="OpenOffice.org 2.2"/> + </dependencies> + <update-information> + <src xlink:href="http://update.services.openoffice.org/ProductUpdateService/check.Update?product=extension&extensionid=org.openoffice.extensions.testarea.desktop.updateinfo&refresh=true"/> + </update-information> +</description> diff --git a/desktop/test/deployment/locationtest/makefile.mk b/desktop/test/deployment/locationtest/makefile.mk new file mode 100644 index 000000000..de586915e --- /dev/null +++ b/desktop/test/deployment/locationtest/makefile.mk @@ -0,0 +1,76 @@ +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# This file incorporates work covered by the following license notice: +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed +# with this work for additional information regarding copyright +# ownership. The ASF licenses this file to you under the Apache +# License, Version 2.0 (the "License"); you may not use this file +# except in compliance with the License. You may obtain a copy of +# the License at http://www.apache.org/licenses/LICENSE-2.0 . +# + +PRJ = ..$/..$/.. +PRJNAME = location_test +PACKAGE = com$/sun$/star$/comp$/smoketest +TARGET = com_sun_star_comp_smoketest + +# --- Settings ----------------------------------------------------- + +.INCLUDE : settings.mk + +JARFILES = ridl.jar jurt.jar unoil.jar juh.jar + +JARTARGET = LocationTest.jar +JARCOMPRESS = TRUE +CUSTOMMANIFESTFILE = MANIFEST.MF + +ZIP1TARGET=locationtest +ZIP1LIST=* +ZIPFLAGS=-r +ZIP1DIR=$(MISC)$/$(TARGET) +ZIP1EXT=.oxt + +# --- Files -------------------------------------------------------- + +COPY_OXT_MANIFEST:= $(MISC)$/$(TARGET)$/META-INF$/manifest.xml +JAVAFILES = LocationTest.java + +# --- Targets ------------------------------------------------------ + +.INCLUDE : target.mk + +$(JARTARGETN) : $(MISC)$/$(TARGET).javamaker.done + +$(JAVACLASSFILES) : $(MISC)$/$(TARGET).javamaker.done + +$(MISC)$/$(TARGET).javamaker.done: $(BIN)$/LocationTest.rdb + $(JAVAMAKER) -O$(CLASSDIR) -BUCR -nD -X$(SOLARBINDIR)/types.rdb $< + $(TOUCH) $@ + +$(BIN)$/LocationTest.rdb: LocationTest.idl + $(IDLC) -O$(MISC) -I$(SOLARIDLDIR) -cid -we $< + +-$(RM) $@ + $(REGMERGE) $@ /UCR $(MISC)$/LocationTest.urd + +$(MISC)$/$(ZIP1TARGET).createdir : + +$(MKDIRHIER) $(MISC)$/$(TARGET)$/META-INF >& $(NULLDEV) && $(TOUCH) $@ + +$(MISC)$/$(TARGET)_resort : manifest.xml $(JARTARGETN) $(MISC)$/$(ZIP1TARGET).createdir $(BIN)$/LocationTest.rdb description.xml + $(COPY) manifest.xml $(MISC)$/$(TARGET)$/META-INF$/manifest.xml + $(COPY) $(JARTARGETN) $(MISC)$/$(TARGET)$/$(JARTARGET) + $(COPY) $(BIN)$/LocationTest.rdb $(MISC)$/$(TARGET)$/LocationTest.rdb + $(COPY) description.xml $(MISC)$/$(TARGET)$/description.xml + $(TOUCH) $@ + +.IF "$(ZIP1TARGETN)"!="" +$(ZIP1TARGETN) : $(MISC)$/$(TARGET)_resort $(MISC)$/$(ZIP1TARGET).createdir + +.ENDIF # "$(ZIP1TARGETN)"!="" + diff --git a/desktop/test/deployment/locationtest/manifest.xml b/desktop/test/deployment/locationtest/manifest.xml new file mode 100644 index 000000000..3dd6460fa --- /dev/null +++ b/desktop/test/deployment/locationtest/manifest.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<manifest:manifest xmlns:manifest="http://openoffice.org/2001/manifest"> + <manifest:file-entry manifest:full-path="LocationTest.jar" manifest:media-type="application/vnd.sun.star.uno-component;type=Java"/> + <manifest:file-entry manifest:full-path="LocationTest.rdb" manifest:media-type="application/vnd.sun.star.uno-typelibrary;type=RDB"/> +</manifest:manifest> diff --git a/desktop/test/deployment/options/handler/com/sun/star/comp/extensionoptions/MANIFEST.MF b/desktop/test/deployment/options/handler/com/sun/star/comp/extensionoptions/MANIFEST.MF new file mode 100644 index 000000000..fba55a6e0 --- /dev/null +++ b/desktop/test/deployment/options/handler/com/sun/star/comp/extensionoptions/MANIFEST.MF @@ -0,0 +1,2 @@ +RegistrationClassName: com.sun.star.comp.extensionoptions.OptionsEventHandler + diff --git a/desktop/test/deployment/options/handler/com/sun/star/comp/extensionoptions/OptionsEventHandler.java b/desktop/test/deployment/options/handler/com/sun/star/comp/extensionoptions/OptionsEventHandler.java new file mode 100644 index 000000000..b360f470b --- /dev/null +++ b/desktop/test/deployment/options/handler/com/sun/star/comp/extensionoptions/OptionsEventHandler.java @@ -0,0 +1,417 @@ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +package com.sun.star.comp.extensionoptions; + +import com.sun.star.configuration.theDefaultProvider; +import com.sun.star.lib.uno.helper.Factory; +import com.sun.star.lib.uno.helper.WeakBase; +import com.sun.star.lang.XSingleComponentFactory; +import com.sun.star.lang.XMultiServiceFactory; +import com.sun.star.lang.WrappedTargetException; +import com.sun.star.lang.XServiceInfo; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.uno.AnyConverter; +import com.sun.star.uno.XComponentContext; +import com.sun.star.uno.Exception; +import com.sun.star.registry.XRegistryKey; +import com.sun.star.awt.XContainerWindowEventHandler; +import com.sun.star.awt.XControl; +import com.sun.star.awt.XControlModel; +import com.sun.star.awt.XControlContainer; +import com.sun.star.container.XNameAccess; +import com.sun.star.beans.NamedValue; +import com.sun.star.beans.XPropertySet; +import com.sun.star.util.XChangesBatch; + +/** A handler which supports multiple options pages which all + * have the same controls. + */ +public class OptionsEventHandler { + + public static class _OptionsEventHandler extends WeakBase + implements XServiceInfo, XContainerWindowEventHandler { + + private static final String __serviceName = + "com.sun.star.comp.extensionoptions.OptionsEventHandler"; + + private final XComponentContext m_cmpCtx; + + private XNameAccess m_xAccessLeaves; + + /**Names of supported options pages. + */ + private final String[] m_arWindowNames = { + "Writer1", "Writer2", "Writer3", "Calc1", "Calc2", "Calc3", + "Draw1", "Draw2", "Draw3", "Node1_1", "Node1_2", "Node1_3", + "Node2_1", "Node2_2", "Node2_3", "Node3_1", "Node3_2", "Node3_3"}; + + /**Names of the controls which are supported by this handler. All these + *controls must have a "Text" property. + */ + private final String[] m_arStringControls = { + "String0", "String1", "String2", "String3", "String4"}; + + public _OptionsEventHandler(XComponentContext xCompContext) { + m_cmpCtx = xCompContext; + + //Create the com.sun.star.configuration.ConfigurationUpdateAccess + //for the registry node which contains the data for our option + //pages. + XMultiServiceFactory xConfig = theDefaultProvider.get(m_cmpCtx); + + //One argument for creating the ConfigurationUpdateAccess is the "nodepath". + //Our nodepath point to the node of which the direct subnodes represent the + //different options pages. + Object[] args = new Object[1]; + args[0] = new NamedValue( + "nodepath", + "/org.openoffice.desktop.deployment.options.ExtensionData/Leaves"); + + //We get the com.sun.star.container.XNameAccess from the instance of + //ConfigurationUpdateAccess and save it for later use. + try { + m_xAccessLeaves = UnoRuntime.queryInterface( + XNameAccess.class, xConfig.createInstanceWithArguments( + "com.sun.star.configuration.ConfigurationUpdateAccess", args)); + + } catch (com.sun.star.uno.Exception e) { + e.printStackTrace(); + return; + } + } + + /** This method returns an array of all supported service names. + * @return Array of supported service names. + */ + public String[] getSupportedServiceNames() { + return getServiceNames(); + } + + /** This method is a simple helper function to used in the + * static component initialisation functions as well as in + * getSupportedServiceNames. + */ + private static String[] getServiceNames() { + String[] sSupportedServiceNames = { __serviceName }; + return sSupportedServiceNames; + } + + /** This method returns true, if the given service will be + * supported by the component. + * @param sServiceName Service name. + * @return True, if the given service name will be supported. + */ + public boolean supportsService( String sServiceName ) { + return sServiceName.equals( __serviceName ); + } + + /** Return the class name of the component. + * @return Class name of the component. + */ + public String getImplementationName() { + return _OptionsEventHandler.class.getName(); + } + + //XContainerWindowEventHandler + public boolean callHandlerMethod(com.sun.star.awt.XWindow aWindow, + Object aEventObject, String sMethod) + throws WrappedTargetException { + if (sMethod.equals("external_event") ){ + try { + return handleExternalEvent(aWindow, aEventObject); + } catch (com.sun.star.uno.Exception e) { + throw new WrappedTargetException(e, sMethod, this, e); + } + } + + return true; + } + + //XContainerWindowEventHandler + public String[] getSupportedMethodNames() { + return new String[] {"external_event"}; + } + + private boolean handleExternalEvent(com.sun.star.awt.XWindow aWindow, Object aEventObject) + throws com.sun.star.uno.Exception { + try { + String sMethod = AnyConverter.toString(aEventObject); + if (sMethod.equals("ok")) { + saveData(aWindow); + } else if (sMethod.equals("back") || sMethod.equals("initialize")) { + loadData(aWindow); + } + } catch (com.sun.star.lang.IllegalArgumentException ex) { + throw new com.sun.star.lang.IllegalArgumentException(ex, + "Method external_event requires a string in the event object argument.", + this, (short) -1); + } + + return true; + } + + private void saveData(com.sun.star.awt.XWindow aWindow) + throws com.sun.star.lang.IllegalArgumentException, + com.sun.star.uno.Exception { + + //Determine the name of the options page. This serves two purposes. First, if this + //options page is supported by this handler and second we use the name two locate + //the corresponding data in the registry. + String sWindowName = getWindowName(aWindow); + if (sWindowName == null) + throw new com.sun.star.lang.IllegalArgumentException( + "This window is not supported by this handler", this, (short) -1); + + //To access the separate controls of the window we need to obtain the + //XControlContainer from the window implementation + XControlContainer xContainer = UnoRuntime.queryInterface( + XControlContainer.class, aWindow); + if (xContainer == null) + throw new com.sun.star.uno.Exception( + "Could not get XControlContainer from window.", this); + + //This is an implementation which will be used for several options pages + //which all have the same controls. m_arStringControls is an array which + //contains the names. + for (int i = 0; i < m_arStringControls.length; i++) { + + //To obtain the data from the controls we need to get their model. + //First get the respective control from the XControlContainer. + XControl xControl = xContainer.getControl(m_arStringControls[i]); + + //This generic handler and the corresponding registry schema support + //up to five text controls. However, if an options page does not use all + //five controls then we will not complain here. + if (xControl == null) + continue; + + //From the control we get the model, which in turn supports the + //XPropertySet interface, which we finally use to get the data from + //the control. + XPropertySet xProp = UnoRuntime.queryInterface( + XPropertySet.class, xControl.getModel()); + + if (xProp == null) + throw new com.sun.star.uno.Exception( + "Could not get XPropertySet from control.", this); + //Get the "Text" property. + Object aText = xProp.getPropertyValue("Text"); + String sValue = null; + + //The value is still contained in a com.sun.star.uno.Any - so convert it. + try { + sValue = AnyConverter.toString(aText); + } catch (com.sun.star.lang.IllegalArgumentException ex) { + throw new com.sun.star.lang.IllegalArgumentException(ex, + "Wrong property type.", this, (short) -1); + } + + //Now we have the actual string value of the control. What we need now is + //the XPropertySet of the respective property in the registry, so that we + //can store the value. + //To access the registry we have previously created a service instance + //of com.sun.star.configuration.ConfigurationUpdateAccess which supports + //com.sun.star.container.XNameAccess. The XNameAccess is used to get the + //particular registry node which represents this options page. + //Fortunately the name of the window is the same as the registry node. + XPropertySet xLeaf = UnoRuntime.queryInterface( + XPropertySet.class, m_xAccessLeaves.getByName(sWindowName)); + if (xLeaf == null) + throw new com.sun.star.uno.Exception( + "XPropertySet not supported.", this); + + //Finally we can set the value + xLeaf.setPropertyValue(m_arStringControls[i], sValue); + } + + //Committing the changes will cause or changes to be written to the registry. + XChangesBatch xUpdateCommit = + UnoRuntime.queryInterface(XChangesBatch.class, m_xAccessLeaves); + xUpdateCommit.commitChanges(); + } + + private void loadData(com.sun.star.awt.XWindow aWindow) + throws com.sun.star.uno.Exception { + + //Determine the name of the window. This serves two purposes. First, if this + //window is supported by this handler and second we use the name two locate + //the corresponding data in the registry. + String sWindowName = getWindowName(aWindow); + if (sWindowName == null) + throw new com.sun.star.lang.IllegalArgumentException( + "The window is not supported by this handler", this, (short) -1); + + //To access the separate controls of the window we need to obtain the + //XControlContainer from window implementation + XControlContainer xContainer = UnoRuntime.queryInterface( + XControlContainer.class, aWindow); + if (xContainer == null) + throw new com.sun.star.uno.Exception( + "Could not get XControlContainer from window.", this); + + //This is an implementation which will be used for several options pages + //which all have the same controls. m_arStringControls is an array which + //contains the names. + for (int i = 0; i < m_arStringControls.length; i++) { + + //load the values from the registry + //To access the registry we have previously created a service instance + //of com.sun.star.configuration.ConfigurationUpdateAccess which supports + //com.sun.star.container.XNameAccess. We obtain now the section + //of the registry which is assigned to this options page. + XPropertySet xLeaf = UnoRuntime.queryInterface( + XPropertySet.class, m_xAccessLeaves.getByName(sWindowName)); + if (xLeaf == null) + throw new com.sun.star.uno.Exception( + "XPropertySet not supported.", this); + + //The properties in the registry have the same name as the respective + //controls. We use the names now to obtain the property values. + Object aValue = xLeaf.getPropertyValue(m_arStringControls[i]); + + //Now that we have the value we need to set it at the corresponding + //control in the window. The XControlContainer, which we obtained earlier + //is the means to get hold of all the controls. + XControl xControl = xContainer.getControl(m_arStringControls[i]); + + //This generic handler and the corresponding registry schema support + //up to five text controls. However, if an options page does not use all + //five controls then we will not complain here. + if (xControl == null) + continue; + + //From the control we get the model, which in turn supports the + //XPropertySet interface, which we finally use to set the data at the + //control + XPropertySet xProp = UnoRuntime.queryInterface( + XPropertySet.class, xControl.getModel()); + + if (xProp == null) + throw new com.sun.star.uno.Exception( + "Could not get XPropertySet from control.", this); + + //This handler supports only text controls, which are named "Pattern Field" + //in the dialog editor. We set the "Text" property. + xProp.setPropertyValue("Text", aValue); + } + } + + //Checks if the name property of the window is one of the supported names and returns + //always a valid string or null + private String getWindowName(com.sun.star.awt.XWindow aWindow) + throws com.sun.star.uno.Exception { + + if (aWindow == null) + throw new com.sun.star.lang.IllegalArgumentException( + "Method external_event requires that a window is passed as argument", + this, (short) -1); + + //We need to get the control model of the window. Therefore the first step is + //to query for it. + XControl xControlDlg = UnoRuntime.queryInterface( + XControl.class, aWindow); + + if (xControlDlg == null) + throw new com.sun.star.uno.Exception( + "Cannot obtain XControl from XWindow in method external_event."); + //Now get model + XControlModel xModelDlg = xControlDlg.getModel(); + + if (xModelDlg == null) + throw new com.sun.star.uno.Exception( + "Cannot obtain XControlModel from XWindow in method external_event.", this); + //The model itself does not provide any information except that its + //implementation supports XPropertySet which is used to access the data. + XPropertySet xPropDlg = UnoRuntime.queryInterface( + XPropertySet.class, xModelDlg); + if (xPropDlg == null) + throw new com.sun.star.uno.Exception( + "Cannot obtain XPropertySet from window in method external_event.", this); + + //Get the "Name" property of the window + Object aWindowName = xPropDlg.getPropertyValue("Name"); + + //Get the string from the returned com.sun.star.uno.Any + String sName = null; + try { + sName = AnyConverter.toString(aWindowName); + } catch (com.sun.star.lang.IllegalArgumentException ex) { + throw new com.sun.star.uno.Exception(ex, + "Name - property of window is not a string.", this); + } + + //Eventually we can check if we this handler can "handle" this options page. + //The class has a member m_arWindowNames which contains all names of windows + //for which it is intended + for (int i = 0; i < m_arWindowNames.length; i++) { + if (m_arWindowNames[i].equals(sName)) { + return sName; + } + } + return null; + } + } + + + /** + * Gives a factory for creating the service. + * This method is called by the <code>JavaLoader</code> + * <p> + * @return returns a <code>XSingleComponentFactory</code> for creating + * the component + * @param sImplName the name of the implementation for which a + * service is desired + * @see com.sun.star.comp.loader.JavaLoader + */ + public static XSingleComponentFactory __getComponentFactory(String sImplName) + { + XSingleComponentFactory xFactory = null; + + if ( sImplName.equals( _OptionsEventHandler.class.getName() ) ) + xFactory = Factory.createComponentFactory(_OptionsEventHandler.class, + _OptionsEventHandler.getServiceNames()); + + return xFactory; + } + + /** + * Writes the service information into the given registry key. + * This method is called by the <code>JavaLoader</code> + * <p> + * @return returns true if the operation succeeded + * @param regKey the registryKey + * @see com.sun.star.comp.loader.JavaLoader + */ + public static boolean __writeRegistryServiceInfo(XRegistryKey regKey) { + return Factory.writeRegistryServiceInfo(_OptionsEventHandler.class.getName(), + _OptionsEventHandler.getServiceNames(), + regKey); + } + + /** This method is a member of the interface for initializing an object + * directly after its creation. + * @param object This array of arbitrary objects will be passed to the + * component after its creation. + * @throws Exception Every exception will not be handled, but will be + * passed to the caller. + */ + public void initialize( Object[] object ) + throws com.sun.star.uno.Exception { + } + +} diff --git a/desktop/test/deployment/options/handler/com/sun/star/comp/extensionoptions/makefile.mk b/desktop/test/deployment/options/handler/com/sun/star/comp/extensionoptions/makefile.mk new file mode 100644 index 000000000..4174e3bd7 --- /dev/null +++ b/desktop/test/deployment/options/handler/com/sun/star/comp/extensionoptions/makefile.mk @@ -0,0 +1,44 @@ +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# This file incorporates work covered by the following license notice: +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed +# with this work for additional information regarding copyright +# ownership. The ASF licenses this file to you under the Apache +# License, Version 2.0 (the "License"); you may not use this file +# except in compliance with the License. You may obtain a copy of +# the License at http://www.apache.org/licenses/LICENSE-2.0 . +# + +PRJ = ..$/..$/..$/..$/..$/..$/..$/..$/.. +PRJNAME = desktop +PACKAGE = com$/sun$/star$/comp$/extensionoptions +TARGET = options + +# --- Settings ----------------------------------------------------- + +.INCLUDE : settings.mk + +JARFILES = ridl.jar jurt.jar unoil.jar juh.jar + + +JARTARGET = extensionoptions.jar +JARCOMPRESS = TRUE +CUSTOMMANIFESTFILE = MANIFEST.MF +JARCLASSDIRS=com + + +# --- Files -------------------------------------------------------- + +JAVAFILES = OptionsEventHandler.java + +# --- Targets ------------------------------------------------------ + +.INCLUDE : target.mk + diff --git a/desktop/test/deployment/options/leaf1.oxt b/desktop/test/deployment/options/leaf1.oxt Binary files differnew file mode 100644 index 000000000..9c3ff8698 --- /dev/null +++ b/desktop/test/deployment/options/leaf1.oxt diff --git a/desktop/test/deployment/options/leaf1mod.oxt b/desktop/test/deployment/options/leaf1mod.oxt Binary files differnew file mode 100644 index 000000000..d5d9fe689 --- /dev/null +++ b/desktop/test/deployment/options/leaf1mod.oxt diff --git a/desktop/test/deployment/options/leaf2.oxt b/desktop/test/deployment/options/leaf2.oxt Binary files differnew file mode 100644 index 000000000..b95628900 --- /dev/null +++ b/desktop/test/deployment/options/leaf2.oxt diff --git a/desktop/test/deployment/options/leaves1.oxt b/desktop/test/deployment/options/leaves1.oxt Binary files differnew file mode 100644 index 000000000..037389a01 --- /dev/null +++ b/desktop/test/deployment/options/leaves1.oxt diff --git a/desktop/test/deployment/options/leaves2.oxt b/desktop/test/deployment/options/leaves2.oxt Binary files differnew file mode 100644 index 000000000..531b38566 --- /dev/null +++ b/desktop/test/deployment/options/leaves2.oxt diff --git a/desktop/test/deployment/options/leaves3.oxt b/desktop/test/deployment/options/leaves3.oxt Binary files differnew file mode 100644 index 000000000..f5bb0f226 --- /dev/null +++ b/desktop/test/deployment/options/leaves3.oxt diff --git a/desktop/test/deployment/options/modules1.oxt b/desktop/test/deployment/options/modules1.oxt Binary files differnew file mode 100644 index 000000000..bae652ffb --- /dev/null +++ b/desktop/test/deployment/options/modules1.oxt diff --git a/desktop/test/deployment/options/modules2.oxt b/desktop/test/deployment/options/modules2.oxt Binary files differnew file mode 100644 index 000000000..d6d7956d4 --- /dev/null +++ b/desktop/test/deployment/options/modules2.oxt diff --git a/desktop/test/deployment/options/nodes1.oxt b/desktop/test/deployment/options/nodes1.oxt Binary files differnew file mode 100644 index 000000000..b1dfa18d3 --- /dev/null +++ b/desktop/test/deployment/options/nodes1.oxt diff --git a/desktop/test/deployment/options/nodes2.oxt b/desktop/test/deployment/options/nodes2.oxt Binary files differnew file mode 100644 index 000000000..a35cfaba9 --- /dev/null +++ b/desktop/test/deployment/options/nodes2.oxt diff --git a/desktop/test/deployment/options/nodes3.oxt b/desktop/test/deployment/options/nodes3.oxt Binary files differnew file mode 100644 index 000000000..db0bc49da --- /dev/null +++ b/desktop/test/deployment/options/nodes3.oxt diff --git a/desktop/test/deployment/options/nodes4.oxt b/desktop/test/deployment/options/nodes4.oxt Binary files differnew file mode 100644 index 000000000..fe0550fdc --- /dev/null +++ b/desktop/test/deployment/options/nodes4.oxt diff --git a/desktop/test/deployment/options/nodes5.oxt b/desktop/test/deployment/options/nodes5.oxt Binary files differnew file mode 100644 index 000000000..893e9ee3e --- /dev/null +++ b/desktop/test/deployment/options/nodes5.oxt diff --git a/desktop/test/deployment/options/readme.txt b/desktop/test/deployment/options/readme.txt new file mode 100644 index 000000000..58274ece7 --- /dev/null +++ b/desktop/test/deployment/options/readme.txt @@ -0,0 +1,200 @@ +Important: The handler component extensionoptions.jar in the extensions may not +contain exactly the same sources as the one build in the handler directory. To +make sure that debugging works build the handler directory and put the +extensionoptions.jar into the extension. + + + +leaf1.oxt: Defines a leaf under the node WriterNode +================================================================================ + +leaf1mod.oxt: Defines a leaf under the node WriterNode + +It has a duplicate entry in the manifest.xml (OptionsDialog.xcu). This would cause a DisposedException when uninstalling on OOo 3.0 and prevent the extension from being uninstalled. This is actually a bug of the extensions. However, the error is difficult to investigate. Therefore this was fixed to make OOo more robust (i96690). +================================================================================ + +leaf2.oxt: Defines a leaf under a node that has a name which requires special +"xml encoding". The name is "My Writer's & Settings". The node is not assigned +to a Module and the Node/AllModules property is not true. This is a typical +scenario when a Node had been added to an existing Module and later the Module +was removed. This is a situation which actually should not occur. In this case +DO NOT show the Node in the OOo's options dialog, because it shows only nodes +for a particular module and in this case the Module for the Node is unknown. +In the Extension Manager's +options dialog this Node can be shown because the Module is irrelevant. +See also nodes5.oxt. +================================================================================ + +leaves1.oxt: multiple ordered leaves under available nodes. The leaves Labels are +localized for en-US and de. The following leaves should appear: + +Writer: +-leaves1 Writer 1 en-US +-leaves1 Writer 2 en-US +-leaves1 Writer 3 en-US + +Calc: +-leaves1 Calc 3 en-US +-leaves1 Calc 3 en-US +-leaves1 Calc 3 en-US + +Draw: +-leaves1 Draw 3 en-US +-leaves1 Draw 3 en-US +-leaves1 Draw 3 en-US + +If a german office is used then the strings contain "de" instead of "en-US". +================================================================================ + +leaves2.oxt: Same as leaves1.oxt. Use together with leaves1.oxt to test the +grouping of leaves. +================================================================================ + +leaves3.oxt: Same as leaves1.oxt, but the leaves are not ordered. +================================================================================ + +nodes1.oxt: Defines one node which has AllModules set and which has +no children. Therefore this node should not be displayed. +================================================================================ + +nodes2.oxt: Defines 3 nodes which use AllModules and which form an +ordered group. Every node defines also 3 nodes which have a determined order. + +-nodes2 node 1 en-US + -nodes2 node 1 leaf 1 en-US + -nodes2 node 1 leaf 2 en-US + -nodes2 node 1 leaf 3 en-US + +-nodes2 node 2 en-US + -nodes2 node 2 leaf 1 en-US + -nodes2 node 2 leaf 2 en-US + -nodes2 node 2 leaf 3 en-US + +-nodes2 node 3 en-US + -nodes2 node 3 leaf 1 en-US + -nodes2 node 3 leaf 2 en-US + -nodes2 node 3 leaf 3 en-US + +================================================================================ + +nodes3.oxt: Defines 3 nodes which are placed under different existing Modules. +The nodes and there leaves are ordered. + +Context Writer: +- nodes3 node 1 + nodes3 node 1 leaf 1 en-US + nodes3 node 1 leaf 2 en-US + nodes3 node 1 leaf 3 en-US + +- nodes3 node 2 + nodes3 node 2 leaf 1 en-US + nodes3 node 2 leaf 2 en-US + nodes3 node 2 leaf 3 en-US + +- nodes3 node 3 + nodes3 node 3 leaf 1 en-US + nodes3 node 3 leaf 2 en-US + nodes3 node 3 leaf 3 en-US + +Context Calc: +- nodes3 node 1 + nodes3 node 1 leaf 1 en-US + nodes3 node 1 leaf 2 en-US + nodes3 node 1 leaf 3 en-US + +- nodes3 node 3 + nodes3 node 3 leaf 1 en-US + nodes3 node 3 leaf 2 en-US + nodes3 node 3 leaf 3 en-US + +Context Draw: +- nodes3 node 2 + nodes3 node 2 leaf 1 en-US + nodes3 node 2 leaf 2 en-US + nodes3 node 2 leaf 3 en-US + +================================================================================ + +nodes4.oxt: Same as nodes3.oxt. Use together with nodes3.txt to test the +grouping of nodes. +================================================================================ + +nodes5.oxt: Defines a node which in turn defines 3 leaves. The Node +is not assigned to a Module and the AllModule property is false (which is the +default).This may happen when a node +had been added to an already existing Module and then this Module was removed. For +example, an extension adds a node to the "Writer Module" and the +next office update removes the "Writer Module" (which is rather inconceivable). +Then the node and its leaves MUST NOT be displayed in OOo's options dialog, +because the Module is not known. However, it can be displayed in the +options dialog of the Extension Manager. See also the description for leaf2.oxt. +================================================================================ + +modules1.oxt: Defines two Modules and three Nodes. The Nodes may not +be displayed in OOo's options dialog because there is currently no application +which uses this Module. However the Nodes are displayed in the options dialog +of the Extension Manager. +There are three Nodes defined. The relationship is this: + +-module1 + -node 1 + -leaf 1 + -leaf 2 + -leaf 3 + -node 2 + -leaf 1 + -leaf 2 + -leaf 3 + -node 3 + -leaf 1 + -leaf 2 + -leaf 3 + +-module2 + -node1 + -leaf 1 + -leaf 2 + -leaf 3 + -node3 + -leaf 1 + -leaf 2 + -leaf 3 + +The options dialog of the Extension Manager shall display only three nodes: + + -node 1 + -leaf 1 + -leaf 2 + -leaf 3 + -node 2 + -leaf 1 + -leaf 2 + -leaf 3 + -node 3 + -leaf 1 + -leaf 2 + -leaf 3 + +or + + -node 1 + -leaf 1 + -leaf 2 + -leaf 3 + -node 3 + -leaf 1 + -leaf 2 + -leaf 3 + -node 2 + -leaf 1 + -leaf 2 + -leaf 3 + +Since the order of Module|s is not defined, the dialog may display first the +Nodes from module2 and then from module1. If a node is already displayed then +it is not shown again. + +================================================================================ + +modules2.oxt: Same as modules1, except that the order of nodes and leaves +is not defined. diff --git a/desktop/test/deployment/passive/Addons.xcu b/desktop/test/deployment/passive/Addons.xcu new file mode 100644 index 000000000..3cc7c45ed --- /dev/null +++ b/desktop/test/deployment/passive/Addons.xcu @@ -0,0 +1,74 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + --> + +<o:items xmlns:o="http://openoffice.org/2001/registry"> + <item o:path="/org.openoffice.Office.Addons"> + <node o:name="AddonUI"> + <node o:name="OfficeMenuBar"> + <node o:name="org.openoffice.test.desktop.deployment.passive" + o:op="replace"> + <prop o:name="Title" xml:lang="en-US"> + <value>passive</value> + </prop> + <node o:name="Submenu"> + <node o:name="1" o:op="replace"> + <prop o:name="URL"> + <value>vnd.org.openoffice.test.desktop.deployment.passive_native:</value> + </prop> + <prop o:name="Title" xml:lang="en-US"> + <value>native</value> + </prop> + </node> + <node o:name="2" o:op="replace"> + <prop o:name="URL"> + <value>vnd.org.openoffice.test.desktop.deployment.passive_java:</value> + </prop> + <prop o:name="Title" xml:lang="en-US"> + <value>java</value> + </prop> + </node> + <node o:name="3" o:op="replace"> + <prop o:name="URL"> + <value>vnd.org.openoffice.test.desktop.deployment.passive_python:</value> + </prop> + <prop o:name="Title" xml:lang="en-US"> + <value>python</value> + </prop> + </node> + </node> + </node> + </node> + <node o:name="OfficeToolBar"> + <node o:name="org.openoffice.test.desktop.deployment.passive" o:op="replace"> + <node o:name="1" o:op="replace"> + <prop o:name="URL"> + <value>vnd.org.openoffice.test.desktop.deployment.passive_native:</value> + </prop> + <prop o:name="Title" xml:lang="en-US"> + <value>native</value> + </prop> + <prop o:name="Context"> + <value/> + </prop> + </node> + </node> + </node> + </node> + </item> +</o:items> diff --git a/desktop/test/deployment/passive/MANIFEST.MF b/desktop/test/deployment/passive/MANIFEST.MF new file mode 100644 index 000000000..45a04bf26 --- /dev/null +++ b/desktop/test/deployment/passive/MANIFEST.MF @@ -0,0 +1,3 @@ +Sealed: true +RegistrationClassName: com.sun.star.comp.test.deployment.passive_java.Services +UNO-Type-Path: diff --git a/desktop/test/deployment/passive/META-INF/manifest.xml b/desktop/test/deployment/passive/META-INF/manifest.xml new file mode 100644 index 000000000..c387b4be4 --- /dev/null +++ b/desktop/test/deployment/passive/META-INF/manifest.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + --> + +<m:manifest xmlns:m="http://openoffice.org/2001/manifest"> + <m:file-entry m:media-type="application/vnd.sun.star.configuration-data" + m:full-path="Addons.xcu"/> + <m:file-entry m:media-type="application/vnd.sun.star.configuration-data" + m:full-path="ProtocolHandler.xcu"/> + <m:file-entry m:media-type="application/vnd.sun.star.help" m:full-path="help"/> + <m:file-entry + m:media-type="application/vnd.sun.star.uno-components;platform=@PLATFORM@" + m:full-path="platform.components"/> + <m:file-entry + m:media-type="application/vnd.sun.star.uno-components" + m:full-path="generic.components"/> +</m:manifest> diff --git a/desktop/test/deployment/passive/ProtocolHandler.xcu b/desktop/test/deployment/passive/ProtocolHandler.xcu new file mode 100644 index 000000000..f546fd119 --- /dev/null +++ b/desktop/test/deployment/passive/ProtocolHandler.xcu @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + --> + +<o:component-data xmlns:o="http://openoffice.org/2001/registry" + o:package="org.openoffice.Office" o:name="ProtocolHandler"> + <node o:name="HandlerSet"> + <node o:name="com.sun.star.test.deployment.passive_native" o:op="replace"> + <prop o:name="Protocols"> + <value>vnd.org.openoffice.test.desktop.deployment.passive_native:*</value> + </prop> + </node> + <node o:name="com.sun.star.test.deployment.passive_java" o:op="replace"> + <prop o:name="Protocols"> + <value>vnd.org.openoffice.test.desktop.deployment.passive_java:*</value> + </prop> + </node> + <node o:name="com.sun.star.test.deployment.passive_python" o:op="replace"> + <prop o:name="Protocols"> + <value>vnd.org.openoffice.test.desktop.deployment.passive_python:*</value> + </prop> + </node> + </node> +</o:component-data> diff --git a/desktop/test/deployment/passive/com/sun/star/comp/test/deployment/Dispatch.java b/desktop/test/deployment/passive/com/sun/star/comp/test/deployment/Dispatch.java new file mode 100644 index 000000000..74882bca5 --- /dev/null +++ b/desktop/test/deployment/passive/com/sun/star/comp/test/deployment/Dispatch.java @@ -0,0 +1,95 @@ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +package com.sun.star.comp.test.deployment.passive_java; + +import com.sun.star.awt.MessageBoxButtons; +import com.sun.star.awt.MessageBoxType; +import com.sun.star.awt.Rectangle; +import com.sun.star.awt.XMessageBox; +import com.sun.star.awt.XMessageBoxFactory; +import com.sun.star.awt.XWindowPeer; +import com.sun.star.beans.PropertyValue; +import com.sun.star.frame.DispatchDescriptor; +import com.sun.star.frame.XDesktop; +import com.sun.star.frame.XDispatch; +import com.sun.star.frame.XStatusListener; +import com.sun.star.lang.WrappedTargetRuntimeException; +import com.sun.star.lang.XComponent; +import com.sun.star.lang.XMultiComponentFactory; +import com.sun.star.lang.XServiceInfo; +import com.sun.star.lib.uno.helper.WeakBase; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.uno.XComponentContext; +import com.sun.star.util.URL; + +public final class Dispatch extends WeakBase implements XServiceInfo, XDispatch +{ + public Dispatch(XComponentContext context) { + this.context = context; + } + + public String getImplementationName() { return implementationName; } + + public boolean supportsService(String ServiceName) { + return false; //TODO + } + + public String[] getSupportedServiceNames() { + return serviceNames; + } + + public void dispatch(URL URL, PropertyValue[] Arguments) { + try { + XMultiComponentFactory smgr = UnoRuntime.queryInterface( + XMultiComponentFactory.class, context.getServiceManager()); + XMessageBox box = UnoRuntime.queryInterface( + XMessageBoxFactory.class, + smgr.createInstanceWithContext( + "com.sun.star.awt.Toolkit", context)). + createMessageBox( + UnoRuntime.queryInterface( + XWindowPeer.class, + (UnoRuntime.queryInterface( + XDesktop.class, + smgr.createInstanceWithContext( + "com.sun.star.frame.Desktop", context)). + getCurrentFrame().getComponentWindow())), + MessageBoxType.INFOBOX, MessageBoxButtons.BUTTONS_OK, + "passive", "java"); + box.execute(); + UnoRuntime.queryInterface(XComponent.class, box).dispose(); + } catch (com.sun.star.uno.RuntimeException e) { + throw e; + } catch (com.sun.star.uno.Exception e) { + throw new WrappedTargetRuntimeException(e, + "wrapped: " + e.getMessage(), this, e); + } + } + + public void addStatusListener(XStatusListener Control, URL URL) {} + + public void removeStatusListener(XStatusListener Control, URL URL) {} + + private final XComponentContext context; + + static final String implementationName = + "com.sun.star.comp.test.deployment.passive_java_singleton"; + + static final String[] serviceNames = new String[0]; +} diff --git a/desktop/test/deployment/passive/com/sun/star/comp/test/deployment/Provider.java b/desktop/test/deployment/passive/com/sun/star/comp/test/deployment/Provider.java new file mode 100644 index 000000000..13d59ecf1 --- /dev/null +++ b/desktop/test/deployment/passive/com/sun/star/comp/test/deployment/Provider.java @@ -0,0 +1,74 @@ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +package com.sun.star.comp.test.deployment.passive_java; + +import com.sun.star.frame.DispatchDescriptor; +import com.sun.star.frame.XDispatch; +import com.sun.star.frame.XDispatchProvider; +import com.sun.star.lang.XServiceInfo; +import com.sun.star.lib.uno.helper.WeakBase; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.uno.XComponentContext; +import com.sun.star.util.URL; + +public final class Provider extends WeakBase + implements XServiceInfo, XDispatchProvider +{ + public Provider(XComponentContext context) { + this.context = context; + } + + public String getImplementationName() { return implementationName; } + + public boolean supportsService(String ServiceName) { + return ServiceName.equals(getSupportedServiceNames()[0]); //TODO + } + + public String[] getSupportedServiceNames() { + return serviceNames; + } + + public XDispatch queryDispatch( + URL URL, String TargetFrameName, int SearchFlags) + { + return UnoRuntime.queryInterface( + XDispatch.class, + context.getValueByName( + "/singletons/" + + "com.sun.star.test.deployment.passive_java_singleton")); + } + + public XDispatch[] queryDispatches(DispatchDescriptor[] Requests) { + XDispatch[] s = new XDispatch[Requests.length]; + for (int i = 0; i < s.length; ++i) { + s[i] = queryDispatch( + Requests[i].FeatureURL, Requests[i].FrameName, + Requests[i].SearchFlags); + } + return s; + } + + private final XComponentContext context; + + static final String implementationName = + "com.sun.star.comp.test.deployment.passive_java"; + + static final String[] serviceNames = new String[] { + "com.sun.star.test.deployment.passive_java" }; +} diff --git a/desktop/test/deployment/passive/com/sun/star/comp/test/deployment/Services.java b/desktop/test/deployment/passive/com/sun/star/comp/test/deployment/Services.java new file mode 100644 index 000000000..b14ba7102 --- /dev/null +++ b/desktop/test/deployment/passive/com/sun/star/comp/test/deployment/Services.java @@ -0,0 +1,42 @@ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +package com.sun.star.comp.test.deployment.passive_java; + +import com.sun.star.lang.XSingleComponentFactory; +import com.sun.star.lib.uno.helper.Factory; + +public final class Services { + private Services() {} + + public static XSingleComponentFactory __getComponentFactory( + String implementation) + { + if (implementation.equals(Dispatch.implementationName)) { + return Factory.createComponentFactory( + Dispatch.class, Dispatch.implementationName, + Dispatch.serviceNames); + } else if (implementation.equals(Provider.implementationName)) { + return Factory.createComponentFactory( + Provider.class, Provider.implementationName, + Provider.serviceNames); + } else { + return null; + } + } +} diff --git a/desktop/test/deployment/passive/description.xml b/desktop/test/deployment/passive/description.xml new file mode 100644 index 000000000..b0fdea19e --- /dev/null +++ b/desktop/test/deployment/passive/description.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + --> + +<d:description xmlns:d="http://openoffice.org/extensions/description/2006"> + <d:identifier + value="org.openoffice/framework/desktop/test/deployment/passive"/> + <d:version value="1"/> + <d:dependencies> + <d:OpenOffice.org-minimal-version d:name="OpenOffice.org 3.4" value="3.4"/> + </d:dependencies> +</d:description> diff --git a/desktop/test/deployment/passive/help/en/help.tree b/desktop/test/deployment/passive/help/en/help.tree new file mode 100644 index 000000000..76a07991d --- /dev/null +++ b/desktop/test/deployment/passive/help/en/help.tree @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * +--> +<tree_view version="10-Aug-2010"> + <help_section application="OrgOpenofficeFrameworkDesktopTestDeploymentPassive" id="" + title="The test-passive Extension"> + <topic + id="OrgOpenofficeFrameworkDesktopTestDeploymentPassive/org.openoffice%2Fframework%2Fdesktop%2Ftest%2Fdeployment%2Fpassive/main.xhp">The test-passive Extension</topic> + </help_section> +</tree_view> diff --git a/desktop/test/deployment/passive/help/en/main.xhp b/desktop/test/deployment/passive/help/en/main.xhp new file mode 100644 index 000000000..ff62c6b68 --- /dev/null +++ b/desktop/test/deployment/passive/help/en/main.xhp @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * +--> +<helpdocument version="1.0"> + <meta> + <topic id="" indexer="include"> + <title xml-lang="en" id="">The test-passive Extension</title> + <filename>/org.openoffice%2Fframework%2Fdesktop%2Ftest%2Fdeployment%2Fpassive/main.xhp</filename> + <bookmark branch="index" xml-lang="en" id=""> + <bookmark_value>test-passive extension</bookmark_value> + <bookmark_value>extensions;test-passive</bookmark_value> + </bookmark> + <bookmark branch="index" xml-lang="en" id="_scalc_swriter"> + <bookmark_value>test-passive extension in Calc and Writer</bookmark_value> + </bookmark> + </topic> + </meta> + <body> + <bookmark branch="hid/vnd.org.openoffice.test.desktop.deployment.passive_native:" xml-lang="en" + id=""/> + <paragraph role="paragraph" id="" xml-lang="en"> + <ahelp hid="vnd.org.openoffice.test.desktop.deployment.passive_native:" visibility="hidden"> + Show the test-passive extension's native dialog + </ahelp> + </paragraph> + <paragraph role="heading" level="1" id="" xml-lang="en">The test-passive Extension</paragraph> + <paragraph role="paragraph" id="" xml-lang="en">Bla bla bla.</paragraph> + </body> +</helpdocument> diff --git a/desktop/test/deployment/passive/passive_java.component b/desktop/test/deployment/passive/passive_java.component new file mode 100644 index 000000000..35ff0fcdf --- /dev/null +++ b/desktop/test/deployment/passive/passive_java.component @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + --> + +<component loader="com.sun.star.loader.Java2" + xmlns="http://openoffice.org/2010/uno-components"> + <implementation name="com.sun.star.comp.test.deployment.passive_java"> + <service name="com.sun.star.test.deployment.passive_java"/> + </implementation> + <implementation + name="com.sun.star.comp.test.deployment.passive_java_singleton"> + <singleton name="com.sun.star.test.deployment.passive_java_singleton"/> + </implementation> +</component> diff --git a/desktop/test/deployment/passive/passive_native.component b/desktop/test/deployment/passive/passive_native.component new file mode 100644 index 000000000..37d13e53d --- /dev/null +++ b/desktop/test/deployment/passive/passive_native.component @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + --> + +<component loader="com.sun.star.loader.SharedLibrary" + xmlns="http://openoffice.org/2010/uno-components"> + <implementation name="com.sun.star.comp.test.deployment.passive_native"> + <service name="com.sun.star.test.deployment.passive_native"/> + </implementation> + <implementation + name="com.sun.star.comp.test.deployment.passive_native_singleton"> + <singleton name="com.sun.star.test.deployment.passive_native_singleton"/> + </implementation> +</component> diff --git a/desktop/test/deployment/passive/passive_native.cxx b/desktop/test/deployment/passive/passive_native.cxx new file mode 100644 index 000000000..9bfbcb7b1 --- /dev/null +++ b/desktop/test/deployment/passive/passive_native.cxx @@ -0,0 +1,248 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#include <sal/config.h> + +#include <cassert> + +#include <com/sun/star/awt/MessageBoxButtons.hpp> +#include <com/sun/star/awt/Rectangle.hpp> +#include <com/sun/star/awt/Toolkit.hpp> +#include <com/sun/star/awt/XMessageBox.hpp> +#include <com/sun/star/awt/XWindowPeer.hpp> +#include <com/sun/star/beans/PropertyValue.hpp> +#include <com/sun/star/frame/DispatchDescriptor.hpp> +#include <com/sun/star/frame/Desktop.hpp> +#include <com/sun/star/frame/XDispatch.hpp> +#include <com/sun/star/frame/XDispatchProvider.hpp> +#include <com/sun/star/frame/XFrame.hpp> +#include <com/sun/star/frame/XStatusListener.hpp> +#include <com/sun/star/lang/XComponent.hpp> +#include <com/sun/star/lang/XServiceInfo.hpp> +#include <com/sun/star/uno/DeploymentException.hpp> +#include <com/sun/star/uno/Exception.hpp> +#include <com/sun/star/uno/Reference.hxx> +#include <com/sun/star/uno/RuntimeException.hpp> +#include <com/sun/star/uno/Sequence.hxx> +#include <com/sun/star/uno/XComponentContext.hpp> +#include <com/sun/star/uno/XInterface.hpp> +#include <com/sun/star/util/URL.hpp> +#include <cppuhelper/factory.hxx> +#include <cppuhelper/implbase2.hxx> +#include <cppuhelper/implementationentry.hxx> +#include <cppuhelper/supportsservice.hxx> +#include <cppuhelper/weak.hxx> +#include <rtl/ustring.hxx> +#include <sal/types.h> +#include <uno/lbnames.h> + +namespace { + +class Provider: + public cppu::WeakImplHelper2< + css::lang::XServiceInfo, css::frame::XDispatchProvider > +{ +public: + Provider(const Provider&) = delete; + const Provider& operator=(const Provider&) = delete; + + static css::uno::Reference< css::uno::XInterface > SAL_CALL static_create( + css::uno::Reference< css::uno::XComponentContext > const & xContext) + { return static_cast< cppu::OWeakObject * >(new Provider(xContext)); } + + static rtl::OUString SAL_CALL static_getImplementationName(); + + static css::uno::Sequence< rtl::OUString > SAL_CALL + static_getSupportedServiceNames(); + +private: + explicit Provider( + css::uno::Reference< css::uno::XComponentContext > const & context): + context_(context) { assert(context.is()); } + + virtual ~Provider() {} + + virtual rtl::OUString SAL_CALL getImplementationName() override + { return static_getImplementationName(); } + + virtual sal_Bool SAL_CALL supportsService(rtl::OUString const & ServiceName) override + { return cppu::supportsService(this, ServiceName); } + + virtual css::uno::Sequence< rtl::OUString > SAL_CALL + getSupportedServiceNames() override + { return static_getSupportedServiceNames(); } + + virtual css::uno::Reference< css::frame::XDispatch > SAL_CALL queryDispatch( + css::util::URL const &, rtl::OUString const &, sal_Int32) override; + + virtual css::uno::Sequence< css::uno::Reference< css::frame::XDispatch > > + SAL_CALL queryDispatches( + css::uno::Sequence< css::frame::DispatchDescriptor > const & Requests) override; + + css::uno::Reference< css::uno::XComponentContext > context_; +}; + +rtl::OUString Provider::static_getImplementationName() { + return rtl::OUString("com.sun.star.comp.test.deployment.passive_native"); +} + +css::uno::Sequence< rtl::OUString > Provider::static_getSupportedServiceNames() +{ + rtl::OUString name("com.sun.star.test.deployment.passive_native"); + return css::uno::Sequence< rtl::OUString >(&name, 1); +} + +css::uno::Reference< css::frame::XDispatch > Provider::queryDispatch( + css::util::URL const &, rtl::OUString const &, sal_Int32) +{ + css::uno::Reference< css::frame::XDispatch > dispatch; + if (!(context_->getValueByName( + "/singletons/com.sun.star.test.deployment." + "passive_native_singleton") >>= + dispatch) || + !dispatch.is()) + { + throw css::uno::DeploymentException( + "component context fails to supply singleton" + " com.sun.star.test.deployment.passive_native_singleton of type" + " com.sun.star.frame.XDispatch", + context_); + } + return dispatch; +} + +css::uno::Sequence< css::uno::Reference< css::frame::XDispatch > > +Provider::queryDispatches( + css::uno::Sequence< css::frame::DispatchDescriptor > const & Requests) +{ + css::uno::Sequence< css::uno::Reference< css::frame::XDispatch > > s( + Requests.getLength()); + for (sal_Int32 i = 0; i < s.getLength(); ++i) { + s[i] = queryDispatch( + Requests[i].FeatureURL, Requests[i].FrameName, + Requests[i].SearchFlags); + } + return s; +} + +class Dispatch: + public cppu::WeakImplHelper2< + css::lang::XServiceInfo, css::frame::XDispatch > +{ +public: + Dispatch(const Dispatch&) = delete; + const Dispatch& operator=(const Dispatch&) = delete; + + static css::uno::Reference< css::uno::XInterface > SAL_CALL static_create( + css::uno::Reference< css::uno::XComponentContext > const & xContext) + { return static_cast< cppu::OWeakObject * >(new Dispatch(xContext)); } + + static rtl::OUString SAL_CALL static_getImplementationName(); + + static css::uno::Sequence< rtl::OUString > SAL_CALL + static_getSupportedServiceNames() + { return css::uno::Sequence< rtl::OUString >(); } + +private: + explicit Dispatch( + css::uno::Reference< css::uno::XComponentContext > const & context): + context_(context) { assert(context.is()); } + + virtual ~Dispatch() {} + + virtual rtl::OUString SAL_CALL getImplementationName() override + { return static_getImplementationName(); } + + virtual sal_Bool SAL_CALL supportsService(rtl::OUString const & ServiceName) override + { return cppu::supportsService(this, ServiceName); } + + virtual css::uno::Sequence< rtl::OUString > SAL_CALL + getSupportedServiceNames() override + { return static_getSupportedServiceNames(); } + + virtual void SAL_CALL dispatch( + css::util::URL const &, + css::uno::Sequence< css::beans::PropertyValue > const &) override; + + virtual void SAL_CALL addStatusListener( + css::uno::Reference< css::frame::XStatusListener > const &, + css::util::URL const &) override + {} + + virtual void SAL_CALL removeStatusListener( + css::uno::Reference< css::frame::XStatusListener > const &, + css::util::URL const &) override + {} + + css::uno::Reference< css::uno::XComponentContext > context_; +}; + +rtl::OUString Dispatch::static_getImplementationName() { + return rtl::OUString( + "com.sun.star.comp.test.deployment.passive_native_singleton"); +} + +void Dispatch::dispatch( + css::util::URL const &, + css::uno::Sequence< css::beans::PropertyValue > const &) +{ + css::uno::Reference< css::frame::XDesktop2 > xDesktop = css::frame::Desktop::create(context_); + css::uno::Reference< css::frame::XFrame > xFrame = xDesktop->getCurrentFrame(); + css::uno::Reference< css::awt::XWindowPeer > xWindowPeer( xFrame->getComponentWindow(), css::uno::UNO_QUERY_THROW ); + css::uno::Reference< css::awt::XToolkit2 > xToolkit = css::awt::Toolkit::create(context_); + css::uno::Reference< css::awt::XMessageBox > box( + xToolkit->createMessageBox( + xWindowPeer, + css::awt::MessageBoxType_INFOBOX, + css::awt::MessageBoxButtons::BUTTONS_OK, "passive", "native"), + css::uno::UNO_SET_THROW); + + box->execute(); + + css::uno::Reference< css::lang::XComponent > xComponent(box, css::uno::UNO_QUERY_THROW); + xComponent->dispose(); +} + +cppu::ImplementationEntry const services[] = { + { &Provider::static_create, &Provider::static_getImplementationName, + &Provider::static_getSupportedServiceNames, + &cppu::createSingleComponentFactory, nullptr, 0 }, + { &Dispatch::static_create, &Dispatch::static_getImplementationName, + &Dispatch::static_getSupportedServiceNames, + &cppu::createSingleComponentFactory, nullptr, 0 }, + { nullptr, nullptr, nullptr, nullptr, nullptr, 0 } +}; + +} + +extern "C" SAL_DLLPUBLIC_EXPORT void * component_getFactory( + char const * pImplName, void * pServiceManager, void * pRegistryKey) +{ + return cppu::component_getFactoryHelper( + pImplName, pServiceManager, pRegistryKey, services); +} + +extern "C" SAL_DLLPUBLIC_EXPORT void +component_getImplementationEnvironment( + char const ** ppEnvTypeName, uno_Environment **) +{ + *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME; +} + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/desktop/test/deployment/passive/passive_python.component b/desktop/test/deployment/passive/passive_python.component new file mode 100644 index 000000000..6007f9fcf --- /dev/null +++ b/desktop/test/deployment/passive/passive_python.component @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + --> + +<component loader="com.sun.star.loader.Python" + xmlns="http://openoffice.org/2010/uno-components"> + <implementation name="com.sun.star.comp.test.deployment.passive_python"> + <service name="com.sun.star.test.deployment.passive_python"/> + </implementation> + <implementation + name="com.sun.star.comp.test.deployment.passive_python_singleton"> + <singleton name="com.sun.star.test.deployment.passive_python_singleton"/> + </implementation> +</component> diff --git a/desktop/test/deployment/passive/passive_python.py b/desktop/test/deployment/passive/passive_python.py new file mode 100644 index 000000000..f16797e50 --- /dev/null +++ b/desktop/test/deployment/passive/passive_python.py @@ -0,0 +1,93 @@ +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# This file incorporates work covered by the following license notice: +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed +# with this work for additional information regarding copyright +# ownership. The ASF licenses this file to you under the Apache +# License, Version 2.0 (the "License"); you may not use this file +# except in compliance with the License. You may obtain a copy of +# the License at http://www.apache.org/licenses/LICENSE-2.0 . +# + +import uno +import unohelper + +from com.sun.star.awt import Rectangle +from com.sun.star.awt.MessageBoxButtons import BUTTONS_OK +from com.sun.star.awt.MessageBoxType import INFOBOX +from com.sun.star.frame import XDispatch, XDispatchProvider +from com.sun.star.lang import XServiceInfo + +class Provider(unohelper.Base, XServiceInfo, XDispatchProvider): + implementationName = "com.sun.star.comp.test.deployment.passive_python" + + serviceNames = ("com.sun.star.test.deployment.passive_python",) + + def __init__(self, context): + self.context = context + + def getImplementationName(self): + return self.implementationName + + def supportsService(self, ServiceName): + return ServiceName in self.serviceNames + + def getSupportedServiceNames(self): + return self.serviceNames + + def queryDispatch(self, URL, TargetFrame, SearchFlags): + return self.context.getValueByName( \ + "/singletons/com.sun.star.test.deployment.passive_python_singleton") + + def queryDispatches(self, Requests): + tuple( \ + self.queryDispatch(i.FeatureURL, i.FrameName, i.SearchFlags) \ + for i in Requests) + +class Dispatch(unohelper.Base, XServiceInfo, XDispatch): + implementationName = \ + "com.sun.star.comp.test.deployment.passive_python_singleton" + + serviceNames = () + + def __init__(self, context): + self.context = context + + def getImplementationName(self): + return self.implementationName + + def supportsService(self, ServiceName): + return ServiceName in self.serviceNames + + def getSupportedServiceNames(self): + return self.serviceNames + + def dispatch(self, URL, Arguments): + smgr = self.context.getServiceManager() + box = smgr.createInstanceWithContext( \ + "com.sun.star.awt.Toolkit", self.context).createMessageBox( \ + smgr.createInstanceWithContext( \ + "com.sun.star.frame.Desktop", self.context). \ + getCurrentFrame().getComponentWindow(), \ + INFOBOX, BUTTONS_OK, "passive", "python") + box.execute(); + box.dispose(); + + def addStatusListener(self, Control, URL): + pass + + def removeStatusListener(self, Control, URL): + pass + +g_ImplementationHelper = unohelper.ImplementationHelper() +g_ImplementationHelper.addImplementation( \ + Provider, Provider.implementationName, Provider.serviceNames) +g_ImplementationHelper.addImplementation( \ + Dispatch, Dispatch.implementationName, Dispatch.serviceNames) diff --git a/desktop/test/deployment/simple_license/BadDesc.oxt b/desktop/test/deployment/simple_license/BadDesc.oxt Binary files differnew file mode 100644 index 000000000..436778d54 --- /dev/null +++ b/desktop/test/deployment/simple_license/BadDesc.oxt diff --git a/desktop/test/deployment/simple_license/BadNamespace.oxt b/desktop/test/deployment/simple_license/BadNamespace.oxt Binary files differnew file mode 100644 index 000000000..e439c9e17 --- /dev/null +++ b/desktop/test/deployment/simple_license/BadNamespace.oxt diff --git a/desktop/test/deployment/simple_license/BadRoot.oxt b/desktop/test/deployment/simple_license/BadRoot.oxt Binary files differnew file mode 100644 index 000000000..1f6c60c99 --- /dev/null +++ b/desktop/test/deployment/simple_license/BadRoot.oxt diff --git a/desktop/test/deployment/simple_license/Locale1.oxt b/desktop/test/deployment/simple_license/Locale1.oxt Binary files differnew file mode 100644 index 000000000..51ecb5c75 --- /dev/null +++ b/desktop/test/deployment/simple_license/Locale1.oxt diff --git a/desktop/test/deployment/simple_license/Locale2.oxt b/desktop/test/deployment/simple_license/Locale2.oxt Binary files differnew file mode 100644 index 000000000..bb6b236a5 --- /dev/null +++ b/desktop/test/deployment/simple_license/Locale2.oxt diff --git a/desktop/test/deployment/simple_license/Locale3.oxt b/desktop/test/deployment/simple_license/Locale3.oxt Binary files differnew file mode 100644 index 000000000..56bfedc24 --- /dev/null +++ b/desktop/test/deployment/simple_license/Locale3.oxt diff --git a/desktop/test/deployment/simple_license/Locale4.oxt b/desktop/test/deployment/simple_license/Locale4.oxt Binary files differnew file mode 100644 index 000000000..9a465bc7c --- /dev/null +++ b/desktop/test/deployment/simple_license/Locale4.oxt diff --git a/desktop/test/deployment/simple_license/Locale5.oxt b/desktop/test/deployment/simple_license/Locale5.oxt Binary files differnew file mode 100644 index 000000000..ce16830c1 --- /dev/null +++ b/desktop/test/deployment/simple_license/Locale5.oxt diff --git a/desktop/test/deployment/simple_license/Locale6.oxt b/desktop/test/deployment/simple_license/Locale6.oxt Binary files differnew file mode 100644 index 000000000..770d32506 --- /dev/null +++ b/desktop/test/deployment/simple_license/Locale6.oxt diff --git a/desktop/test/deployment/simple_license/LongLic.oxt b/desktop/test/deployment/simple_license/LongLic.oxt Binary files differnew file mode 100644 index 000000000..a0a49daeb --- /dev/null +++ b/desktop/test/deployment/simple_license/LongLic.oxt diff --git a/desktop/test/deployment/simple_license/MissingLic.oxt b/desktop/test/deployment/simple_license/MissingLic.oxt Binary files differnew file mode 100644 index 000000000..04d58fd11 --- /dev/null +++ b/desktop/test/deployment/simple_license/MissingLic.oxt diff --git a/desktop/test/deployment/simple_license/MissingLicRef.oxt b/desktop/test/deployment/simple_license/MissingLicRef.oxt Binary files differnew file mode 100644 index 000000000..01c9d19a2 --- /dev/null +++ b/desktop/test/deployment/simple_license/MissingLicRef.oxt diff --git a/desktop/test/deployment/simple_license/NoDefLang.oxt b/desktop/test/deployment/simple_license/NoDefLang.oxt Binary files differnew file mode 100644 index 000000000..3eadd5254 --- /dev/null +++ b/desktop/test/deployment/simple_license/NoDefLang.oxt diff --git a/desktop/test/deployment/simple_license/NoDesc.oxt b/desktop/test/deployment/simple_license/NoDesc.oxt Binary files differnew file mode 100644 index 000000000..ac83dac97 --- /dev/null +++ b/desktop/test/deployment/simple_license/NoDesc.oxt diff --git a/desktop/test/deployment/simple_license/NoLang.oxt b/desktop/test/deployment/simple_license/NoLang.oxt Binary files differnew file mode 100644 index 000000000..a4f3dd43a --- /dev/null +++ b/desktop/test/deployment/simple_license/NoLang.oxt diff --git a/desktop/test/deployment/simple_license/Prefix.oxt b/desktop/test/deployment/simple_license/Prefix.oxt Binary files differnew file mode 100644 index 000000000..3e09b8d80 --- /dev/null +++ b/desktop/test/deployment/simple_license/Prefix.oxt diff --git a/desktop/test/deployment/simple_license/ShortLicense.oxt b/desktop/test/deployment/simple_license/ShortLicense.oxt Binary files differnew file mode 100644 index 000000000..efcfdc98e --- /dev/null +++ b/desktop/test/deployment/simple_license/ShortLicense.oxt diff --git a/desktop/test/deployment/simple_license/ShortLicenseShared.oxt b/desktop/test/deployment/simple_license/ShortLicenseShared.oxt Binary files differnew file mode 100644 index 000000000..775559a2c --- /dev/null +++ b/desktop/test/deployment/simple_license/ShortLicenseShared.oxt diff --git a/desktop/test/deployment/simple_license/suppress_license.oxt b/desktop/test/deployment/simple_license/suppress_license.oxt Binary files differnew file mode 100644 index 000000000..2bacd6aa3 --- /dev/null +++ b/desktop/test/deployment/simple_license/suppress_license.oxt diff --git a/desktop/test/deployment/simple_license/tests_simple_license.odt b/desktop/test/deployment/simple_license/tests_simple_license.odt Binary files differnew file mode 100644 index 000000000..b0c86e11c --- /dev/null +++ b/desktop/test/deployment/simple_license/tests_simple_license.odt diff --git a/desktop/test/deployment/update/changing_display_name/change1.oxt b/desktop/test/deployment/update/changing_display_name/change1.oxt Binary files differnew file mode 100644 index 000000000..c919129ab --- /dev/null +++ b/desktop/test/deployment/update/changing_display_name/change1.oxt diff --git a/desktop/test/deployment/update/changing_display_name/change1_mod.oxt b/desktop/test/deployment/update/changing_display_name/change1_mod.oxt Binary files differnew file mode 100644 index 000000000..5ab99d7bf --- /dev/null +++ b/desktop/test/deployment/update/changing_display_name/change1_mod.oxt diff --git a/desktop/test/deployment/update/changing_display_name/readme.txt b/desktop/test/deployment/update/changing_display_name/readme.txt new file mode 100644 index 000000000..905f0be9a --- /dev/null +++ b/desktop/test/deployment/update/changing_display_name/readme.txt @@ -0,0 +1,13 @@ + +The default display name, if nothing is provided by the extension, is the file name. +The display name could be changed in different versions. There are three versions +of change1.oxt available: + +v1: no display name +v2: change1 de +v3: change1 de - changed display name - + +change1_mod.oxt is the same as change1.oxt version 1 except that is has a display name. +This situation should actually never arise, because the version should always be +changed when the extension is changed - and be it only the display name. + diff --git a/desktop/test/deployment/update/changing_display_name/update1/change1.oxt b/desktop/test/deployment/update/changing_display_name/update1/change1.oxt Binary files differnew file mode 100644 index 000000000..ef034f944 --- /dev/null +++ b/desktop/test/deployment/update/changing_display_name/update1/change1.oxt diff --git a/desktop/test/deployment/update/changing_display_name/update1/change1.update.xml b/desktop/test/deployment/update/changing_display_name/update1/change1.update.xml new file mode 100644 index 000000000..a7010d13d --- /dev/null +++ b/desktop/test/deployment/update/changing_display_name/update1/change1.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice/framework/desktop/changing_display_name/change1" /> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/changing_display_name/update1/change1.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/changing_display_name/update2/change1.oxt b/desktop/test/deployment/update/changing_display_name/update2/change1.oxt Binary files differnew file mode 100644 index 000000000..551f5a3f4 --- /dev/null +++ b/desktop/test/deployment/update/changing_display_name/update2/change1.oxt diff --git a/desktop/test/deployment/update/changing_display_name/update2/change1.update.xml b/desktop/test/deployment/update/changing_display_name/update2/change1.update.xml new file mode 100644 index 000000000..88458d670 --- /dev/null +++ b/desktop/test/deployment/update/changing_display_name/update2/change1.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice/framework/desktop/changing_display_name/change1" /> + <version value="3.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/changing_display_name/update2/change1.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/default_url/default1.oxt b/desktop/test/deployment/update/default_url/default1.oxt Binary files differnew file mode 100644 index 000000000..3fa8c9f08 --- /dev/null +++ b/desktop/test/deployment/update/default_url/default1.oxt diff --git a/desktop/test/deployment/update/default_url/default2.oxt b/desktop/test/deployment/update/default_url/default2.oxt Binary files differnew file mode 100644 index 000000000..d54ce88c5 --- /dev/null +++ b/desktop/test/deployment/update/default_url/default2.oxt diff --git a/desktop/test/deployment/update/default_url/readme.txt b/desktop/test/deployment/update/default_url/readme.txt new file mode 100644 index 000000000..a34c77cea --- /dev/null +++ b/desktop/test/deployment/update/default_url/readme.txt @@ -0,0 +1,9 @@ +Tests for using the default URL for update information. This URL is currently contained in +the version.ini (ExtensionUpdateURL) and is used to obtain update information for extensions which do not provide +a URL themselves. + +The extensions default1.oxt and default2.oxt do not have a URL for update information. + +To test this one has to put this entry into the version.ini: + +ExtensionUpdateURL=http://extensions.openoffice.org/testarea/desktop/default_url/update/feed1.xml diff --git a/desktop/test/deployment/update/default_url/update/default1.oxt b/desktop/test/deployment/update/default_url/update/default1.oxt Binary files differnew file mode 100644 index 000000000..198395c76 --- /dev/null +++ b/desktop/test/deployment/update/default_url/update/default1.oxt diff --git a/desktop/test/deployment/update/default_url/update/default1.update.xml b/desktop/test/deployment/update/default_url/update/default1.update.xml new file mode 100644 index 000000000..5c240d6d5 --- /dev/null +++ b/desktop/test/deployment/update/default_url/update/default1.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.default1.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/default_url/update/default1.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/default_url/update/default2.oxt b/desktop/test/deployment/update/default_url/update/default2.oxt Binary files differnew file mode 100644 index 000000000..198395c76 --- /dev/null +++ b/desktop/test/deployment/update/default_url/update/default2.oxt diff --git a/desktop/test/deployment/update/default_url/update/default2.update.xml b/desktop/test/deployment/update/default_url/update/default2.update.xml new file mode 100644 index 000000000..9e7e5db1a --- /dev/null +++ b/desktop/test/deployment/update/default_url/update/default2.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.default2.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/default_url/update/default2.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/default_url/update/feed1.xml b/desktop/test/deployment/update/default_url/update/feed1.xml new file mode 100644 index 000000000..3f9a2e1d2 --- /dev/null +++ b/desktop/test/deployment/update/default_url/update/feed1.xml @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"> + + <title>OpenOffice.org Update Feed</title> + <link rel="alternate" type="text/html" href="http://update.services.openoffice.org/ooo/snapshot.html"/> + <updated>2006-11-06T18:30:02Z</updated> + <author> + <name>The OpenOffice.org Project</name> + <uri>http://openoffice.org</uri> + <email>updatefeed@openoffice.org</email> + </author> + <id>urn:uuid:a4ccd383-1dd1-11b2-a95c-0003ba566e9d</id> + <entry> + <title>default1.oxt version 2.0 available</title> + <link rel="alternate" type="text/html" + href="http://extensions.openoffice.org"/> + <id>urn:uuid:a4ccd383-1dd1-11b2-a95c-0003ba566e9f</id> + <category term="org.openoffice.legacy.default1.oxt" label="default1.oxt" /> + <updated>2006-11-06T18:30:02Z</updated> + <summary>Click here to go to the download page.</summary> + <content type="application/xml" src="http://extensions.openoffice.org/testarea/desktop/default_url/update/default1.update.xml" /> + </entry> + <entry> + <title>default2.oxt version 2.0 available</title> + <link rel="alternate" type="text/html" + href="http://extensions.openoffice.org"/> + <id>urn:uuid:a4ccd383-1dd1-11b2-a95c-0003ba566eaf</id> + <category term="org.openoffice.legacy.default2.oxt" label="default2.oxt" /> + <updated>2006-11-06T18:30:02Z</updated> + <summary>Click here to go to the download page.</summary> + <content type="application/xml" src="http://extensions.openoffice.org/testarea/desktop/default_url/update/default2.update.xml" /> + </entry> +</feed> diff --git a/desktop/test/deployment/update/defect/fail1.oxt b/desktop/test/deployment/update/defect/fail1.oxt Binary files differnew file mode 100644 index 000000000..5b5cdba2c --- /dev/null +++ b/desktop/test/deployment/update/defect/fail1.oxt diff --git a/desktop/test/deployment/update/defect/fail2.oxt b/desktop/test/deployment/update/defect/fail2.oxt Binary files differnew file mode 100644 index 000000000..61b0306f0 --- /dev/null +++ b/desktop/test/deployment/update/defect/fail2.oxt diff --git a/desktop/test/deployment/update/defect/fail3.oxt b/desktop/test/deployment/update/defect/fail3.oxt Binary files differnew file mode 100644 index 000000000..9da26d48a --- /dev/null +++ b/desktop/test/deployment/update/defect/fail3.oxt diff --git a/desktop/test/deployment/update/defect/fail4.oxt b/desktop/test/deployment/update/defect/fail4.oxt Binary files differnew file mode 100644 index 000000000..66b87caa1 --- /dev/null +++ b/desktop/test/deployment/update/defect/fail4.oxt diff --git a/desktop/test/deployment/update/defect/info1.oxt b/desktop/test/deployment/update/defect/info1.oxt Binary files differnew file mode 100644 index 000000000..9ffd373fa --- /dev/null +++ b/desktop/test/deployment/update/defect/info1.oxt diff --git a/desktop/test/deployment/update/defect/info2.oxt b/desktop/test/deployment/update/defect/info2.oxt Binary files differnew file mode 100644 index 000000000..229a52c3b --- /dev/null +++ b/desktop/test/deployment/update/defect/info2.oxt diff --git a/desktop/test/deployment/update/defect/info3.oxt b/desktop/test/deployment/update/defect/info3.oxt Binary files differnew file mode 100644 index 000000000..b702f3e00 --- /dev/null +++ b/desktop/test/deployment/update/defect/info3.oxt diff --git a/desktop/test/deployment/update/defect/readme.txt b/desktop/test/deployment/update/defect/readme.txt new file mode 100644 index 000000000..5e8322f5c --- /dev/null +++ b/desktop/test/deployment/update/defect/readme.txt @@ -0,0 +1,15 @@ +The updates, that is the newer versions, are defect. However, only fail2.oxt fails to install. The other extensions can be installed directly and through an update.
+
+fail1.oxt: in version2 the contained t.rdb was renamed so that it is not found (t.rdb is referenced in the manifest.xml).
+
+fail2.oxt: in version 2 the contained t.rdb is corrupted. It is a renamed .txt file which contains some text.
+
+fail3.oxt: in version 2 the contained t.rdb is corrupted. It is a renamed .txt file which does not contain any text.
+
+fail4.oxt: the version 2 references by fail4.update.xml is empty.
+
+info1.oxt: The update information file has length null.
+
+info2.oxt: The update information does not contain xml.
+
+info3.oxt: The update information contain an error: the tag update information contains two opening brackets (<<update-information>)
\ No newline at end of file diff --git a/desktop/test/deployment/update/defect/update/fail1.oxt b/desktop/test/deployment/update/defect/update/fail1.oxt Binary files differnew file mode 100644 index 000000000..dbcc7cd73 --- /dev/null +++ b/desktop/test/deployment/update/defect/update/fail1.oxt diff --git a/desktop/test/deployment/update/defect/update/fail1.update.xml b/desktop/test/deployment/update/defect/update/fail1.update.xml new file mode 100644 index 000000000..87de4a25a --- /dev/null +++ b/desktop/test/deployment/update/defect/update/fail1.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.fail1.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/defect/update/fail1.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/defect/update/fail2.oxt b/desktop/test/deployment/update/defect/update/fail2.oxt Binary files differnew file mode 100644 index 000000000..6df0c3cf9 --- /dev/null +++ b/desktop/test/deployment/update/defect/update/fail2.oxt diff --git a/desktop/test/deployment/update/defect/update/fail2.update.xml b/desktop/test/deployment/update/defect/update/fail2.update.xml new file mode 100644 index 000000000..254f61f34 --- /dev/null +++ b/desktop/test/deployment/update/defect/update/fail2.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.fail2.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/defect/update/fail2.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/defect/update/fail3.oxt b/desktop/test/deployment/update/defect/update/fail3.oxt Binary files differnew file mode 100644 index 000000000..2d340f414 --- /dev/null +++ b/desktop/test/deployment/update/defect/update/fail3.oxt diff --git a/desktop/test/deployment/update/defect/update/fail3.update.xml b/desktop/test/deployment/update/defect/update/fail3.update.xml new file mode 100644 index 000000000..ff7f82db0 --- /dev/null +++ b/desktop/test/deployment/update/defect/update/fail3.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.fail3.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/defect/update/fail3.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/defect/update/fail4.oxt b/desktop/test/deployment/update/defect/update/fail4.oxt new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/desktop/test/deployment/update/defect/update/fail4.oxt diff --git a/desktop/test/deployment/update/defect/update/fail4.update.xml b/desktop/test/deployment/update/defect/update/fail4.update.xml new file mode 100644 index 000000000..b321b16ba --- /dev/null +++ b/desktop/test/deployment/update/defect/update/fail4.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.fail4.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/defect/update/fail4.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/defect/update/info1.update.xml b/desktop/test/deployment/update/defect/update/info1.update.xml new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/desktop/test/deployment/update/defect/update/info1.update.xml diff --git a/desktop/test/deployment/update/defect/update/info2.update.xml b/desktop/test/deployment/update/defect/update/info2.update.xml new file mode 100644 index 000000000..7e26b0b17 --- /dev/null +++ b/desktop/test/deployment/update/defect/update/info2.update.xml @@ -0,0 +1 @@ +This is an invalid update information file!!! diff --git a/desktop/test/deployment/update/defect/update/info3.oxt b/desktop/test/deployment/update/defect/update/info3.oxt Binary files differnew file mode 100644 index 000000000..60debac57 --- /dev/null +++ b/desktop/test/deployment/update/defect/update/info3.oxt diff --git a/desktop/test/deployment/update/defect/update/info3.update.xml b/desktop/test/deployment/update/defect/update/info3.update.xml new file mode 100644 index 000000000..69b54c259 --- /dev/null +++ b/desktop/test/deployment/update/defect/update/info3.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.info3.oxt"/> + <version value="2.0" /> + <<update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/defect/update/info3.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/dependencies/publisher_en.html b/desktop/test/deployment/update/dependencies/publisher_en.html new file mode 100644 index 000000000..37dbc2b9d --- /dev/null +++ b/desktop/test/deployment/update/dependencies/publisher_en.html @@ -0,0 +1,9 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>My Extension Company</H1> +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/dependencies/readme.txt b/desktop/test/deployment/update/dependencies/readme.txt new file mode 100644 index 000000000..a64f749b1 --- /dev/null +++ b/desktop/test/deployment/update/dependencies/readme.txt @@ -0,0 +1,23 @@ +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# This file incorporates work covered by the following license notice: +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed +# with this work for additional information regarding copyright +# ownership. The ASF licenses this file to you under the Apache +# License, Version 2.0 (the "License"); you may not use this file +# except in compliance with the License. You may obtain a copy of +# the License at http://www.apache.org/licenses/LICENSE-2.0 . +# + +update-dependencies.oxt is an extension that itself has no dependencies, but +whose update has unsatisfied dependencies (and also uses update-website). + +The update information contain also publisher and release notes information, +which should be displayed in the update dialog. diff --git a/desktop/test/deployment/update/dependencies/release-notes_en.html b/desktop/test/deployment/update/dependencies/release-notes_en.html new file mode 100644 index 000000000..0971f78d1 --- /dev/null +++ b/desktop/test/deployment/update/dependencies/release-notes_en.html @@ -0,0 +1,8 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Release Notes</H1> +</BODY> +</HTML> diff --git a/desktop/test/deployment/update/dependencies/update-dependencies.oxt b/desktop/test/deployment/update/dependencies/update-dependencies.oxt Binary files differnew file mode 100644 index 000000000..513b25d20 --- /dev/null +++ b/desktop/test/deployment/update/dependencies/update-dependencies.oxt diff --git a/desktop/test/deployment/update/dependencies/update/update-dependencies.update.xml b/desktop/test/deployment/update/dependencies/update/update-dependencies.update.xml new file mode 100644 index 000000000..7f9d0606f --- /dev/null +++ b/desktop/test/deployment/update/dependencies/update/update-dependencies.update.xml @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + --> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:d="http://openoffice.org/extensions/description/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice/framework/desktop/test/deployment/update/dependencies/update-dependencies.oxt"/> + <version value="2.0"/> + <dependencies> + <dependency d:name="& < > ' " > ' tab	. crlf
. em-dash—. line-separator
. paragraph-separator
. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"/> + <dependency d:name="Dependency 1"/> + <dependency d:name="Dependency 2"/> + <dependency d:name="Dependency 3"/> + <dependency d:name="Dependency 4"/> + <dependency d:name="Dependency 5"/> + <dependency d:name="Dependency 6"/> + <dependency d:name="Dependency 7"/> + <dependency d:name="Dependency 8"/> + <dependency d:name="Dependency 9"/> + <dependency d:name="Dependency 10"/> + <dependency d:name="Dependency 11"/> + <dependency d:name="Dependency 12"/> + <dependency d:name="Dependency 13"/> + <dependency d:name="Dependency 14"/> + <dependency d:name="Dependency 15"/> + <dependency d:name="Dependency 16"/> + <dependency d:name="Dependency 17"/> + <dependency d:name="Dependency 18"/> + <dependency d:name="Dependency 19"/> + <dependency d:name="Dependency 20"/> + <dependency/> + <d:OpenOffice.org-minimal-version value="2.1" d:name="OpenOffice.org 2.1"/> + </dependencies> + <update-website> + <src xlink:href="http://nowhere.openoffice.org"/> + <src xlink:href="http://nowhere.openoffice.org/2"/> + </update-website> + + <publisher> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/dependencies/publisher_en.html" lang="en">My Extension Company</name> + </publisher> + + <release-notes> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/dependencies/release-notes_en.html" lang="en" /> + </release-notes> + +</description> diff --git a/desktop/test/deployment/update/license/lic1.oxt b/desktop/test/deployment/update/license/lic1.oxt Binary files differnew file mode 100644 index 000000000..43bfe3b77 --- /dev/null +++ b/desktop/test/deployment/update/license/lic1.oxt diff --git a/desktop/test/deployment/update/license/lic2.oxt b/desktop/test/deployment/update/license/lic2.oxt Binary files differnew file mode 100644 index 000000000..266a45e9a --- /dev/null +++ b/desktop/test/deployment/update/license/lic2.oxt diff --git a/desktop/test/deployment/update/license/lic3.oxt b/desktop/test/deployment/update/license/lic3.oxt Binary files differnew file mode 100644 index 000000000..3f1b98960 --- /dev/null +++ b/desktop/test/deployment/update/license/lic3.oxt diff --git a/desktop/test/deployment/update/license/readme.txt b/desktop/test/deployment/update/license/readme.txt new file mode 100644 index 000000000..6040da04c --- /dev/null +++ b/desktop/test/deployment/update/license/readme.txt @@ -0,0 +1,9 @@ +The extensions contain a license which is displayed during installation. If the license is displayed during an update can be determined by the attribute +/description/registration/simple-license/@suppress-on-update + +The default value is false, which means that the attribute is not set, then the license is displayed during an update. + +lic1.oxt: attribute not set +lic2.oxt: attribute set to false +lic3.oxt: attribute set to true + diff --git a/desktop/test/deployment/update/license/update/lic1.oxt b/desktop/test/deployment/update/license/update/lic1.oxt Binary files differnew file mode 100644 index 000000000..cc91e1ff1 --- /dev/null +++ b/desktop/test/deployment/update/license/update/lic1.oxt diff --git a/desktop/test/deployment/update/license/update/lic1.update.xml b/desktop/test/deployment/update/license/update/lic1.update.xml new file mode 100644 index 000000000..2a2761aa9 --- /dev/null +++ b/desktop/test/deployment/update/license/update/lic1.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.lic1.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/license/update/lic1.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/license/update/lic2.oxt b/desktop/test/deployment/update/license/update/lic2.oxt Binary files differnew file mode 100644 index 000000000..351000792 --- /dev/null +++ b/desktop/test/deployment/update/license/update/lic2.oxt diff --git a/desktop/test/deployment/update/license/update/lic2.update.xml b/desktop/test/deployment/update/license/update/lic2.update.xml new file mode 100644 index 000000000..7dc57ca0e --- /dev/null +++ b/desktop/test/deployment/update/license/update/lic2.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.lic2.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/license/update/lic2.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/license/update/lic3.oxt b/desktop/test/deployment/update/license/update/lic3.oxt Binary files differnew file mode 100644 index 000000000..6ac6e0fd0 --- /dev/null +++ b/desktop/test/deployment/update/license/update/lic3.oxt diff --git a/desktop/test/deployment/update/license/update/lic3.update.xml b/desktop/test/deployment/update/license/update/lic3.update.xml new file mode 100644 index 000000000..55f5556b6 --- /dev/null +++ b/desktop/test/deployment/update/license/update/lic3.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.lic3.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/license/update/lic3.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/platform/all1.oxt b/desktop/test/deployment/update/platform/all1.oxt Binary files differnew file mode 100644 index 000000000..ad9662a7c --- /dev/null +++ b/desktop/test/deployment/update/platform/all1.oxt diff --git a/desktop/test/deployment/update/platform/all2.oxt b/desktop/test/deployment/update/platform/all2.oxt Binary files differnew file mode 100644 index 000000000..632d11b42 --- /dev/null +++ b/desktop/test/deployment/update/platform/all2.oxt diff --git a/desktop/test/deployment/update/platform/all3.oxt b/desktop/test/deployment/update/platform/all3.oxt Binary files differnew file mode 100644 index 000000000..ab781552a --- /dev/null +++ b/desktop/test/deployment/update/platform/all3.oxt diff --git a/desktop/test/deployment/update/platform/freebsd_x86.oxt b/desktop/test/deployment/update/platform/freebsd_x86.oxt Binary files differnew file mode 100644 index 000000000..338f5761d --- /dev/null +++ b/desktop/test/deployment/update/platform/freebsd_x86.oxt diff --git a/desktop/test/deployment/update/platform/freebsd_x86_64.oxt b/desktop/test/deployment/update/platform/freebsd_x86_64.oxt Binary files differnew file mode 100644 index 000000000..39fee6de1 --- /dev/null +++ b/desktop/test/deployment/update/platform/freebsd_x86_64.oxt diff --git a/desktop/test/deployment/update/platform/invalid1.oxt b/desktop/test/deployment/update/platform/invalid1.oxt Binary files differnew file mode 100644 index 000000000..13d709f43 --- /dev/null +++ b/desktop/test/deployment/update/platform/invalid1.oxt diff --git a/desktop/test/deployment/update/platform/invalid2.oxt b/desktop/test/deployment/update/platform/invalid2.oxt Binary files differnew file mode 100644 index 000000000..f14257191 --- /dev/null +++ b/desktop/test/deployment/update/platform/invalid2.oxt diff --git a/desktop/test/deployment/update/platform/invalid3.oxt b/desktop/test/deployment/update/platform/invalid3.oxt Binary files differnew file mode 100644 index 000000000..cadffa4f2 --- /dev/null +++ b/desktop/test/deployment/update/platform/invalid3.oxt diff --git a/desktop/test/deployment/update/platform/linux_arm_eabi.oxt b/desktop/test/deployment/update/platform/linux_arm_eabi.oxt Binary files differnew file mode 100644 index 000000000..9c504e841 --- /dev/null +++ b/desktop/test/deployment/update/platform/linux_arm_eabi.oxt diff --git a/desktop/test/deployment/update/platform/linux_arm_oabi.oxt b/desktop/test/deployment/update/platform/linux_arm_oabi.oxt Binary files differnew file mode 100644 index 000000000..f2c987f64 --- /dev/null +++ b/desktop/test/deployment/update/platform/linux_arm_oabi.oxt diff --git a/desktop/test/deployment/update/platform/linux_ia64.oxt b/desktop/test/deployment/update/platform/linux_ia64.oxt Binary files differnew file mode 100644 index 000000000..f579a18ab --- /dev/null +++ b/desktop/test/deployment/update/platform/linux_ia64.oxt diff --git a/desktop/test/deployment/update/platform/linux_mips64_eb.oxt b/desktop/test/deployment/update/platform/linux_mips64_eb.oxt Binary files differnew file mode 100644 index 000000000..544121694 --- /dev/null +++ b/desktop/test/deployment/update/platform/linux_mips64_eb.oxt diff --git a/desktop/test/deployment/update/platform/linux_mips64_el.oxt b/desktop/test/deployment/update/platform/linux_mips64_el.oxt Binary files differnew file mode 100644 index 000000000..17499092f --- /dev/null +++ b/desktop/test/deployment/update/platform/linux_mips64_el.oxt diff --git a/desktop/test/deployment/update/platform/linux_mips_eb.oxt b/desktop/test/deployment/update/platform/linux_mips_eb.oxt Binary files differnew file mode 100644 index 000000000..bf0bd9423 --- /dev/null +++ b/desktop/test/deployment/update/platform/linux_mips_eb.oxt diff --git a/desktop/test/deployment/update/platform/linux_mips_el.oxt b/desktop/test/deployment/update/platform/linux_mips_el.oxt Binary files differnew file mode 100644 index 000000000..6bd564468 --- /dev/null +++ b/desktop/test/deployment/update/platform/linux_mips_el.oxt diff --git a/desktop/test/deployment/update/platform/linux_powerpc.oxt b/desktop/test/deployment/update/platform/linux_powerpc.oxt Binary files differnew file mode 100644 index 000000000..e301a3fb3 --- /dev/null +++ b/desktop/test/deployment/update/platform/linux_powerpc.oxt diff --git a/desktop/test/deployment/update/platform/linux_powerpc64.oxt b/desktop/test/deployment/update/platform/linux_powerpc64.oxt Binary files differnew file mode 100644 index 000000000..e5f3ae063 --- /dev/null +++ b/desktop/test/deployment/update/platform/linux_powerpc64.oxt diff --git a/desktop/test/deployment/update/platform/linux_s390.oxt b/desktop/test/deployment/update/platform/linux_s390.oxt Binary files differnew file mode 100644 index 000000000..199702ebf --- /dev/null +++ b/desktop/test/deployment/update/platform/linux_s390.oxt diff --git a/desktop/test/deployment/update/platform/linux_s390x.oxt b/desktop/test/deployment/update/platform/linux_s390x.oxt Binary files differnew file mode 100644 index 000000000..2ed250833 --- /dev/null +++ b/desktop/test/deployment/update/platform/linux_s390x.oxt diff --git a/desktop/test/deployment/update/platform/linux_sparc.oxt b/desktop/test/deployment/update/platform/linux_sparc.oxt Binary files differnew file mode 100644 index 000000000..53dfc71e0 --- /dev/null +++ b/desktop/test/deployment/update/platform/linux_sparc.oxt diff --git a/desktop/test/deployment/update/platform/linux_x86.oxt b/desktop/test/deployment/update/platform/linux_x86.oxt Binary files differnew file mode 100644 index 000000000..8379539ca --- /dev/null +++ b/desktop/test/deployment/update/platform/linux_x86.oxt diff --git a/desktop/test/deployment/update/platform/linux_x86_64.oxt b/desktop/test/deployment/update/platform/linux_x86_64.oxt Binary files differnew file mode 100644 index 000000000..0fb182275 --- /dev/null +++ b/desktop/test/deployment/update/platform/linux_x86_64.oxt diff --git a/desktop/test/deployment/update/platform/macosx_powerpc.oxt b/desktop/test/deployment/update/platform/macosx_powerpc.oxt Binary files differnew file mode 100644 index 000000000..7c1463471 --- /dev/null +++ b/desktop/test/deployment/update/platform/macosx_powerpc.oxt diff --git a/desktop/test/deployment/update/platform/macosx_x86.oxt b/desktop/test/deployment/update/platform/macosx_x86.oxt Binary files differnew file mode 100644 index 000000000..a20aadfef --- /dev/null +++ b/desktop/test/deployment/update/platform/macosx_x86.oxt diff --git a/desktop/test/deployment/update/platform/mul1.oxt b/desktop/test/deployment/update/platform/mul1.oxt Binary files differnew file mode 100644 index 000000000..b3b555969 --- /dev/null +++ b/desktop/test/deployment/update/platform/mul1.oxt diff --git a/desktop/test/deployment/update/platform/os2_x86.oxt b/desktop/test/deployment/update/platform/os2_x86.oxt Binary files differnew file mode 100644 index 000000000..1c7fd40be --- /dev/null +++ b/desktop/test/deployment/update/platform/os2_x86.oxt diff --git a/desktop/test/deployment/update/platform/readme.txt b/desktop/test/deployment/update/platform/readme.txt new file mode 100644 index 000000000..30c028f99 --- /dev/null +++ b/desktop/test/deployment/update/platform/readme.txt @@ -0,0 +1,51 @@ +Extension which only support one platform +======================================================== + +freebsd_x86.oxt: freebsd_x86 +freebsd_x86_86.oxt: freebsd_x86_64 +linux_arm_eabi.oxt: linux_arm_eabi +linux_arm_oabi.oxt: linux_arm_oabi +linux_ia64.oxt: linux_ia64 +linux_mips_eb.oxt: linux_mips_eb +linux_mips64_eb.oxt: linux_mips64_eb +linux_mips_el.oxt: linux_mips_el +linux_mips64_el.oxt: linux_mips64_el +linux_powerpc64.oxt: linux_powerpc64 +linux_powerpc.oxt: linux_powerpc +linux_s390.oxt: linux_s390 +linux_s390x.oxt: linux_s390x +linux_sparc.oxt: linux_sparc +linux_x86.oxt: linux_x86 +linux_x86_64.oxt: linux_x86_64 +macos_powerpc.oxt: macos_powerpc +macos_x86.oxt: macos_x86 +solaris_sparc.oxt: solaris_sparc +solaris_x86.oxt: solaris_x86 +windows_x86.oxt: windows_x86 +os2_x86.oxt: os/2_x86 + +Extensions which support multiple platforms +======================================================= +mul1.oxt: windows_x86, linux_x86, solaris_x86 + + +All platforms +========================================================= +all1.oxt: all, The <platform> element is missing. Default is "all". + +all2.oxt: all, <platform value="all" /> + +all3.oxt: all, no description.xml + + + +Invalid platforms +========================================================= +The following extensions cannot be installed because the platform element +is not correct. We assume that no valid platform is defined. + +invalid1.oxt: <platform /> + +invalid2.oxt: <platform value=""/> + +invalid3.oxt: <platform value="," /> diff --git a/desktop/test/deployment/update/platform/solaris_sparc.oxt b/desktop/test/deployment/update/platform/solaris_sparc.oxt Binary files differnew file mode 100644 index 000000000..a61f81f43 --- /dev/null +++ b/desktop/test/deployment/update/platform/solaris_sparc.oxt diff --git a/desktop/test/deployment/update/platform/solaris_x86.oxt b/desktop/test/deployment/update/platform/solaris_x86.oxt Binary files differnew file mode 100644 index 000000000..44d43df69 --- /dev/null +++ b/desktop/test/deployment/update/platform/solaris_x86.oxt diff --git a/desktop/test/deployment/update/platform/windows_x86.oxt b/desktop/test/deployment/update/platform/windows_x86.oxt Binary files differnew file mode 100644 index 000000000..c66a9b141 --- /dev/null +++ b/desktop/test/deployment/update/platform/windows_x86.oxt diff --git a/desktop/test/deployment/update/publisher/pub1.oxt b/desktop/test/deployment/update/publisher/pub1.oxt Binary files differnew file mode 100644 index 000000000..c44ee9f3b --- /dev/null +++ b/desktop/test/deployment/update/publisher/pub1.oxt diff --git a/desktop/test/deployment/update/publisher/pub10.oxt b/desktop/test/deployment/update/publisher/pub10.oxt Binary files differnew file mode 100644 index 000000000..1e7410ec1 --- /dev/null +++ b/desktop/test/deployment/update/publisher/pub10.oxt diff --git a/desktop/test/deployment/update/publisher/pub11.oxt b/desktop/test/deployment/update/publisher/pub11.oxt Binary files differnew file mode 100644 index 000000000..ef7fbca5e --- /dev/null +++ b/desktop/test/deployment/update/publisher/pub11.oxt diff --git a/desktop/test/deployment/update/publisher/pub2.oxt b/desktop/test/deployment/update/publisher/pub2.oxt Binary files differnew file mode 100644 index 000000000..438bcae83 --- /dev/null +++ b/desktop/test/deployment/update/publisher/pub2.oxt diff --git a/desktop/test/deployment/update/publisher/pub3.oxt b/desktop/test/deployment/update/publisher/pub3.oxt Binary files differnew file mode 100644 index 000000000..62fd69f55 --- /dev/null +++ b/desktop/test/deployment/update/publisher/pub3.oxt diff --git a/desktop/test/deployment/update/publisher/pub4.oxt b/desktop/test/deployment/update/publisher/pub4.oxt Binary files differnew file mode 100644 index 000000000..4f6224f78 --- /dev/null +++ b/desktop/test/deployment/update/publisher/pub4.oxt diff --git a/desktop/test/deployment/update/publisher/pub5.oxt b/desktop/test/deployment/update/publisher/pub5.oxt Binary files differnew file mode 100644 index 000000000..1774e6cd3 --- /dev/null +++ b/desktop/test/deployment/update/publisher/pub5.oxt diff --git a/desktop/test/deployment/update/publisher/pub6.oxt b/desktop/test/deployment/update/publisher/pub6.oxt Binary files differnew file mode 100644 index 000000000..791a37f8e --- /dev/null +++ b/desktop/test/deployment/update/publisher/pub6.oxt diff --git a/desktop/test/deployment/update/publisher/pub7.oxt b/desktop/test/deployment/update/publisher/pub7.oxt Binary files differnew file mode 100644 index 000000000..96e96887d --- /dev/null +++ b/desktop/test/deployment/update/publisher/pub7.oxt diff --git a/desktop/test/deployment/update/publisher/pub8.oxt b/desktop/test/deployment/update/publisher/pub8.oxt Binary files differnew file mode 100644 index 000000000..dc9f0ce34 --- /dev/null +++ b/desktop/test/deployment/update/publisher/pub8.oxt diff --git a/desktop/test/deployment/update/publisher/pub9.oxt b/desktop/test/deployment/update/publisher/pub9.oxt Binary files differnew file mode 100644 index 000000000..5e8ba9ebc --- /dev/null +++ b/desktop/test/deployment/update/publisher/pub9.oxt diff --git a/desktop/test/deployment/update/publisher/publisher_de-DE-altmark.html b/desktop/test/deployment/update/publisher/publisher_de-DE-altmark.html new file mode 100644 index 000000000..c770b914a --- /dev/null +++ b/desktop/test/deployment/update/publisher/publisher_de-DE-altmark.html @@ -0,0 +1,9 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>My OpenOffice en-DE-altmark</H1> +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/publisher/publisher_de-DE.html b/desktop/test/deployment/update/publisher/publisher_de-DE.html new file mode 100644 index 000000000..b06ed7088 --- /dev/null +++ b/desktop/test/deployment/update/publisher/publisher_de-DE.html @@ -0,0 +1,9 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>My OpenOffice de-DE</H1> +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/publisher/publisher_de.html b/desktop/test/deployment/update/publisher/publisher_de.html new file mode 100644 index 000000000..4cba9f423 --- /dev/null +++ b/desktop/test/deployment/update/publisher/publisher_de.html @@ -0,0 +1,9 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>My OpenOffice de</H1> +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/publisher/publisher_en-GB.html b/desktop/test/deployment/update/publisher/publisher_en-GB.html new file mode 100644 index 000000000..c73cf6219 --- /dev/null +++ b/desktop/test/deployment/update/publisher/publisher_en-GB.html @@ -0,0 +1,9 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>My OpenOffice en-GB</H1> +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/publisher/publisher_en-US-region1.html b/desktop/test/deployment/update/publisher/publisher_en-US-region1.html new file mode 100644 index 000000000..68beac724 --- /dev/null +++ b/desktop/test/deployment/update/publisher/publisher_en-US-region1.html @@ -0,0 +1,9 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>My OpenOffice en-US-region1</H1> +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/publisher/publisher_en-US-region2.html b/desktop/test/deployment/update/publisher/publisher_en-US-region2.html new file mode 100644 index 000000000..501adb659 --- /dev/null +++ b/desktop/test/deployment/update/publisher/publisher_en-US-region2.html @@ -0,0 +1,9 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>My OpenOffice en-US-region2</H1> +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/publisher/publisher_en-US.html b/desktop/test/deployment/update/publisher/publisher_en-US.html new file mode 100644 index 000000000..fd2575150 --- /dev/null +++ b/desktop/test/deployment/update/publisher/publisher_en-US.html @@ -0,0 +1,9 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>My OpenOffice en-US</H1> +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/publisher/publisher_en-region3.html b/desktop/test/deployment/update/publisher/publisher_en-region3.html new file mode 100644 index 000000000..b9fdc9d65 --- /dev/null +++ b/desktop/test/deployment/update/publisher/publisher_en-region3.html @@ -0,0 +1,9 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>My OpenOffice en-region3</H1> +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/publisher/publisher_en.html b/desktop/test/deployment/update/publisher/publisher_en.html new file mode 100644 index 000000000..416ab8124 --- /dev/null +++ b/desktop/test/deployment/update/publisher/publisher_en.html @@ -0,0 +1,9 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>My OpenOffice en</H1> +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/publisher/readme.txt b/desktop/test/deployment/update/publisher/readme.txt new file mode 100644 index 000000000..148dab776 --- /dev/null +++ b/desktop/test/deployment/update/publisher/readme.txt @@ -0,0 +1,212 @@ +--The folder contains extensions which use in the description.xml the following: + +-The <publisher> element +-The <release-notes> element + +Both element contain localized child elements. + +The following table shows what localized item is used, when the Office the locale +en-US uses. + + +Localization: + +Installed office en-US + | publisher | release notes +============================================= +pub1.oxt | en-US | en-US +--------------------------------------------- +pub2.oxt | en-US-region1 | en-US-region1 +--------------------------------------------- +pub3.oxt | en | en +--------------------------------------------- +pub4.oxt | en-GB | en-GB +--------------------------------------------- +pub5.oxt | de | de + + +================================================================================ +pub6.oxt +================================================================================ +like pub1 but without release notes. + + +================================================================================ +pub7.oxt +================================================================================ +like pub1 but without publisher name. + +================================================================================ +pub8.oxt +================================================================================ +Need not be committed in extensions/www/testarea/desktop. + +pub8.oxt is intended for tests with extensions.services.openoffice.org. +It does not contain <update-information>. That is, the Extension Manager will obtain +the update information from the repository as feed: + +http://updateext.services.openoffice.org/ProductUpdateService/check.Update + +pub8.oxt provides <publisher> and <release-notes>. This information should be transferred +in the update feed and not those entered in the repository. + +Test +---- +Repository: + +-Create the new extension in the repository. +-Provide a company name and a URL to the company website. This setting should be ignored + when generating the update feed. Instead the publisher name from the extension is used. + Enter "Publisher Title" : some arbitrary company + "Publisher URL": any arbitrary URL but not: + http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-US.html + +-Create a new release for the extension. Upload the version 2.0 (update/pub8.oxt). + Provide release notes. These release notes should later not be seen when clicking on + the release notes link. + + +Office: +-Install version 1.0 of the extension: + desktop/test/deployment/update/publisher/pub8.oxt + +-Run the update in the Extension Manager + + +Result: +The Update Dialog should show the publisher name as provided in the description.xml. For example, +when lang=en-US was selected: My OpenOffice en-US + +A release notes link is displayed with a URL to the release notes as provided in +the description.xml. For example, when lang=en-US was selected: +"http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-US.html + + +================================================================================ +pub9.oxt +================================================================================ +Need not be committed in extensions/www/testarea/desktop. + +pub9.oxt is intended for tests with extensions.services.openoffice.org. +It does not contain <update-information>. That is, the Extension Manager will obtain +the update information from the repository as feed: + +http://updateext.services.openoffice.org/ProductUpdateService/check.Update + +pub9.oxt provides <publisher>. That means the update feed should +contain the <publisher> as provided by the extension and the release notes as entered +in the repository. + +Test +---- +Repository: + +-Create the new extension in the repository. +-Provide a company name and a URL to the company website. This setting should be ignored + when generating the update feed. Instead the publisher name from the extension is used. + Enter "Publisher Title" : some arbitrary company name + "Publisher URL": any arbitrary URL but not: + http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-US.html + +-Create a new release for the extension. Upload the version 2.0 (update/pub9.oxt). + Provide release notes. These release notes should later be displayed when clicking on + the release notes link. + + +Office: +-Install version 1.0 of the extension: + desktop/test/deployment/update/publisher/pub9.oxt + +-Run the update in the Extension Manager + + +Result: +The Update Dialog should show the publisher name as provided in the description.xml. For example, +when lang=en-US was selected: My OpenOffice en-US + +A release notes link is displayed with a URL to the release notes as provided in the release notes +field on the edit page for the extension in the repository. + +================================================================================ +pub10.oxt +================================================================================ +Need not be committed in extensions/www/testarea/desktop. + +pub10.oxt is intended for tests with extensions.services.openoffice.org. +It does not contain <update-information>. That is, the Extension Manager will obtain +the update information from the repository as feed: + +http://updateext.services.openoffice.org/ProductUpdateService/check.Update + +pub10.oxt provides <release-notes>. That means the update feed should +contain the <release-notes> as provided by the extension and the publisher name/URLs as entered +in the repository. + +Test +---- +Repository: + +-Create the new extension in the repository. +-Provide a company name and a URL to the company website. They should then be in the update + feed. + +-Create a new release for the extension. Upload the version 2.0 (update/pub10.oxt). + Provide release notes. These release notes should NOT be displayed when clicking on + the release notes link. Instead the release notes provided by pub10.oxt should be displayed. + + +Office: +-Install version 1.0 of the extension: + desktop/test/deployment/update/publisher/pub10.oxt + +-Run the update in the Extension Manager + + +Result: +The Update Dialog should show the publisher name as provided in the repository. + +A release notes link is displayed with a URL to the release notes as provided in the +pub10.oxt. For example, when the locale of the office is en-US then this page will be +displayed: +For example, +when lang=en-US was selected: My OpenOffice en-US + +================================================================================ +pub11.oxt +================================================================================ +Need not be committed in extensions/www/testarea/desktop. + +pub11.oxt is intended for tests with extensions.services.openoffice.org. +It does not contain <update-information>. That is, the Extension Manager will obtain +the update information from the repository as feed: + +http://updateext.services.openoffice.org/ProductUpdateService/check.Update + +pub10.oxt neither provides <release-notes> nor <publisher>. That means the update feed should +contain these data as provided by the user on the repository web site. + +Test +---- +Repository: + +-Create the new extension in the repository. +-Provide a company name and a URL to the company website. They should then be in the update + feed. + +-Create a new release for the extension. Upload the version 2.0 (update/pub11.oxt). + Provide release notes. These release notes should be displayed when clicking on + the release notes link. + + +Office: +-Install version 1.0 of the extension: + desktop/test/deployment/update/publisher/pub11.oxt + +-Run the update in the Extension Manager + + +Result: +The Update Dialog should show the publisher name as provided in the repository. + +A release notes link is displayed which leads to the release notes kept in the repository. + diff --git a/desktop/test/deployment/update/publisher/release-notes_de-DE-altmark.html b/desktop/test/deployment/update/publisher/release-notes_de-DE-altmark.html new file mode 100644 index 000000000..81b38a9f5 --- /dev/null +++ b/desktop/test/deployment/update/publisher/release-notes_de-DE-altmark.html @@ -0,0 +1,8 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Release Notes de-DE-altmark</H1> +</BODY> +</HTML> diff --git a/desktop/test/deployment/update/publisher/release-notes_de-DE.html b/desktop/test/deployment/update/publisher/release-notes_de-DE.html new file mode 100644 index 000000000..f8f0121f0 --- /dev/null +++ b/desktop/test/deployment/update/publisher/release-notes_de-DE.html @@ -0,0 +1,8 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Release Notes de-DE</H1> +</BODY> +</HTML> diff --git a/desktop/test/deployment/update/publisher/release-notes_de.html b/desktop/test/deployment/update/publisher/release-notes_de.html new file mode 100644 index 000000000..a9e1dc364 --- /dev/null +++ b/desktop/test/deployment/update/publisher/release-notes_de.html @@ -0,0 +1,8 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Release Notes de</H1> +</BODY> +</HTML> diff --git a/desktop/test/deployment/update/publisher/release-notes_en-GB.html b/desktop/test/deployment/update/publisher/release-notes_en-GB.html new file mode 100644 index 000000000..ca72ec1b9 --- /dev/null +++ b/desktop/test/deployment/update/publisher/release-notes_en-GB.html @@ -0,0 +1,8 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Release Notes en-GB</H1> +</BODY> +</HTML> diff --git a/desktop/test/deployment/update/publisher/release-notes_en-US-region1.html b/desktop/test/deployment/update/publisher/release-notes_en-US-region1.html new file mode 100644 index 000000000..0e6f99ce4 --- /dev/null +++ b/desktop/test/deployment/update/publisher/release-notes_en-US-region1.html @@ -0,0 +1,8 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Release Notes en-US-region1</H1> +</BODY> +</HTML> diff --git a/desktop/test/deployment/update/publisher/release-notes_en-US-region2.html b/desktop/test/deployment/update/publisher/release-notes_en-US-region2.html new file mode 100644 index 000000000..597bca0eb --- /dev/null +++ b/desktop/test/deployment/update/publisher/release-notes_en-US-region2.html @@ -0,0 +1,8 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Release Notes en-US-region2</H1> +</BODY> +</HTML> diff --git a/desktop/test/deployment/update/publisher/release-notes_en-US.html b/desktop/test/deployment/update/publisher/release-notes_en-US.html new file mode 100644 index 000000000..7f9d73e33 --- /dev/null +++ b/desktop/test/deployment/update/publisher/release-notes_en-US.html @@ -0,0 +1,8 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Release Notes en-US</H1> +</BODY> +</HTML> diff --git a/desktop/test/deployment/update/publisher/release-notes_en-region3.html b/desktop/test/deployment/update/publisher/release-notes_en-region3.html new file mode 100644 index 000000000..5d62c7bcb --- /dev/null +++ b/desktop/test/deployment/update/publisher/release-notes_en-region3.html @@ -0,0 +1,8 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Release Notes en-region3</H1> +</BODY> +</HTML> diff --git a/desktop/test/deployment/update/publisher/release-notes_en.html b/desktop/test/deployment/update/publisher/release-notes_en.html new file mode 100644 index 000000000..d02e4f333 --- /dev/null +++ b/desktop/test/deployment/update/publisher/release-notes_en.html @@ -0,0 +1,8 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Release Notes en</H1> +</BODY> +</HTML> diff --git a/desktop/test/deployment/update/publisher/update/pub1.oxt b/desktop/test/deployment/update/publisher/update/pub1.oxt Binary files differnew file mode 100644 index 000000000..cd04a58d5 --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub1.oxt diff --git a/desktop/test/deployment/update/publisher/update/pub1.update.xml b/desktop/test/deployment/update/publisher/update/pub1.update.xml new file mode 100644 index 000000000..14a35d798 --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub1.update.xml @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <version value="2.0" /> + + <identifier value="org.openoffice/framework/desktop/test/deployment/update/publisher/pub1"/> + + <publisher> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de.html" lang="de">My OpenOffice de</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en.html" lang="en">My OpenOffice en</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de-DE.html" lang="de-DE">My OpenOffice de-DE</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de-DE-altmark.html" lang="de-DE-altmark">My OpenOffice de-DE-altmark</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-GB.html" lang="en-GB">My OpenOffice en-GB</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-US.html" lang="en-US">My OpenOffice en-US</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-US-region1.html" lang="en-US-region1">My OpenOffice en-US-region1</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-US-region2.html" lang="en-US-region2">My OpenOffice en-US-region2</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-region3.html" lang="en-region3">My OpenOffice en-region3</name> + </publisher> + + <release-notes> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de.html" lang="de" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en.html" lang="en" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de-DE.html" lang="de-DE" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de-DE-altmark.html" lang="de-DE-altmark" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-GB.html" lang="en-GB" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-US.html" lang="en-US" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-US-region1.html" lang="en-US-region1" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-US-region2.html" lang="en-US-region2" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-region3.html" lang="en-region3" /> + </release-notes> + + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/update/pub1.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/publisher/update/pub10.oxt b/desktop/test/deployment/update/publisher/update/pub10.oxt Binary files differnew file mode 100644 index 000000000..501a84338 --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub10.oxt diff --git a/desktop/test/deployment/update/publisher/update/pub11.oxt b/desktop/test/deployment/update/publisher/update/pub11.oxt Binary files differnew file mode 100644 index 000000000..692c0401f --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub11.oxt diff --git a/desktop/test/deployment/update/publisher/update/pub2.oxt b/desktop/test/deployment/update/publisher/update/pub2.oxt Binary files differnew file mode 100644 index 000000000..2a0bd6c21 --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub2.oxt diff --git a/desktop/test/deployment/update/publisher/update/pub2.update.xml b/desktop/test/deployment/update/publisher/update/pub2.update.xml new file mode 100644 index 000000000..675ce484d --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub2.update.xml @@ -0,0 +1,51 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <version value="2.0" /> + + <identifier value="org.openoffice/framework/desktop/test/deployment/update/publisher/pub2"/> + + <publisher> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de.html" lang="de">My OpenOffice de</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en.html" lang="en">My OpenOffice en</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de-DE.html" lang="de-DE">My OpenOffice de-DE</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de-DE-altmark.html" lang="de-DE-altmark">My OpenOffice de-DE-altmark</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-GB.html" lang="en-GB">My OpenOffice en-GB</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-US-region1.html" lang="en-US-region1">My OpenOffice en-US-region1</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-US-region2.html" lang="en-US-region2">My OpenOffice en-US-region2</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-region3.html" lang="en-region3">My OpenOffice en-region3</name> + </publisher> + + <release-notes> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de.html" lang="de" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en.html" lang="en" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de-DE.html" lang="de-DE" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de-DE-altmark.html" lang="de-DE-altmark" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-GB.html" lang="en-GB" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-US-region1.html" lang="en-US-region1" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-US-region2.html" lang="en-US-region2" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-region3.html" lang="en-region3" /> + </release-notes> + + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/update/pub2.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/publisher/update/pub3.oxt b/desktop/test/deployment/update/publisher/update/pub3.oxt Binary files differnew file mode 100644 index 000000000..60675fc4d --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub3.oxt diff --git a/desktop/test/deployment/update/publisher/update/pub3.update.xml b/desktop/test/deployment/update/publisher/update/pub3.update.xml new file mode 100644 index 000000000..13199e375 --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub3.update.xml @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <version value="2.0" /> + + <identifier value="org.openoffice/framework/desktop/test/deployment/update/publisher/pub3"/> + + <publisher> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de.html" lang="de">My OpenOffice de</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en.html" lang="en">My OpenOffice en</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de-DE.html" lang="de-DE">My OpenOffice de-DE</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de-DE-altmark.html" lang="de-DE-altmark">My OpenOffice de-DE-altmark</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-GB.html" lang="en-GB">My OpenOffice en-GB</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-region3.html" lang="en-region3">My OpenOffice en-region3</name> + </publisher> + + <release-notes> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de.html" lang="de" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en.html" lang="en" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de-DE.html" lang="de-DE" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de-DE-altmark.html" lang="de-DE-altmark" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-GB.html" lang="en-GB" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-region3.html" lang="en-region3" /> + </release-notes> + + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/update/pub3.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/publisher/update/pub4.oxt b/desktop/test/deployment/update/publisher/update/pub4.oxt Binary files differnew file mode 100644 index 000000000..19f7b7991 --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub4.oxt diff --git a/desktop/test/deployment/update/publisher/update/pub4.update.xml b/desktop/test/deployment/update/publisher/update/pub4.update.xml new file mode 100644 index 000000000..800b68821 --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub4.update.xml @@ -0,0 +1,45 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <version value="2.0" /> + + <identifier value="org.openoffice/framework/desktop/test/deployment/update/publisher/pub4"/> + + <publisher> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de.html" lang="de">My OpenOffice de</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de-DE.html" lang="de-DE">My OpenOffice de-DE</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de-DE-altmark.html" lang="de-DE-altmark">My OpenOffice de-DE-altmark</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-GB.html" lang="en-GB">My OpenOffice en-GB</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-region3.html" lang="en-region3">My OpenOffice en-region3</name> + </publisher> + + <release-notes> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de.html" lang="de" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de-DE.html" lang="de-DE" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de-DE-altmark.html" lang="de-DE-altmark" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-GB.html" lang="en-GB" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-region3.html" lang="en-region3" /> + </release-notes> + + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/update/pub4.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/publisher/update/pub5.oxt b/desktop/test/deployment/update/publisher/update/pub5.oxt Binary files differnew file mode 100644 index 000000000..afc632d57 --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub5.oxt diff --git a/desktop/test/deployment/update/publisher/update/pub5.update.xml b/desktop/test/deployment/update/publisher/update/pub5.update.xml new file mode 100644 index 000000000..70bc7194f --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub5.update.xml @@ -0,0 +1,41 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <version value="2.0" /> + + <identifier value="org.openoffice/framework/desktop/test/deployment/update/publisher/pub5"/> + + <publisher> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de.html" lang="de">My OpenOffice de</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de-DE.html" lang="de-DE">My OpenOffice de-DE</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de-DE-altmark.html" lang="de-DE-altmark">My OpenOffice de-DE-altmark</name> + </publisher> + + <release-notes> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de.html" lang="de" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de-DE.html" lang="de-DE" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de-DE-altmark.html" lang="de-DE-altmark" /> + </release-notes> + + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/update/pub5.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/publisher/update/pub6.oxt b/desktop/test/deployment/update/publisher/update/pub6.oxt Binary files differnew file mode 100644 index 000000000..a68b445b8 --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub6.oxt diff --git a/desktop/test/deployment/update/publisher/update/pub6.update.xml b/desktop/test/deployment/update/publisher/update/pub6.update.xml new file mode 100644 index 000000000..69ac58b28 --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub6.update.xml @@ -0,0 +1,41 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <version value="2.0" /> + + <identifier value="org.openoffice/framework/desktop/test/deployment/update/publisher/pub6"/> + + <publisher> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de.html" lang="de">My OpenOffice de</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en.html" lang="en">My OpenOffice en</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de-DE.html" lang="de-DE">My OpenOffice de-DE</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de-DE-altmark.html" lang="de-DE-altmark">My OpenOffice de-DE-altmark</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-GB.html" lang="en-GB">My OpenOffice en-GB</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-US.html" lang="en-US">My OpenOffice en-US</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-US-region1.html" lang="en-US-region1">My OpenOffice en-US-region1</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-US-region2.html" lang="en-US-region2">My OpenOffice en-US-region2</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-region3.html" lang="en-region3">My OpenOffice en-region3</name> + </publisher> + + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/update/pub6.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/publisher/update/pub7.oxt b/desktop/test/deployment/update/publisher/update/pub7.oxt Binary files differnew file mode 100644 index 000000000..1b4bee044 --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub7.oxt diff --git a/desktop/test/deployment/update/publisher/update/pub7.update.xml b/desktop/test/deployment/update/publisher/update/pub7.update.xml new file mode 100644 index 000000000..7ca456e95 --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub7.update.xml @@ -0,0 +1,41 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <version value="2.0" /> + + <identifier value="org.openoffice/framework/desktop/test/deployment/update/publisher/pub7"/> + + <release-notes> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de.html" lang="de" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en.html" lang="en" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de-DE.html" lang="de-DE" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de-DE-altmark.html" lang="de-DE-altmark" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-GB.html" lang="en-GB" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-US.html" lang="en-US" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-US-region1.html" lang="en-US-region1" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-US-region2.html" lang="en-US-region2" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-region3.html" lang="en-region3" /> + </release-notes> + + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/update/pub7.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/publisher/update/pub8.oxt b/desktop/test/deployment/update/publisher/update/pub8.oxt Binary files differnew file mode 100644 index 000000000..5688ab9d2 --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub8.oxt diff --git a/desktop/test/deployment/update/publisher/update/pub9.oxt b/desktop/test/deployment/update/publisher/update/pub9.oxt Binary files differnew file mode 100644 index 000000000..752cfbbcf --- /dev/null +++ b/desktop/test/deployment/update/publisher/update/pub9.oxt diff --git a/desktop/test/deployment/update/readme.txt b/desktop/test/deployment/update/readme.txt new file mode 100644 index 000000000..fa1778308 --- /dev/null +++ b/desktop/test/deployment/update/readme.txt @@ -0,0 +1,58 @@ +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# This file incorporates work covered by the following license notice: +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed +# with this work for additional information regarding copyright +# ownership. The ASF licenses this file to you under the Apache +# License, Version 2.0 (the "License"); you may not use this file +# except in compliance with the License. You may obtain a copy of +# the License at http://www.apache.org/licenses/LICENSE-2.0 . +# + +The extensions in the subdirectories of the update folder are used for +testing the online update feature of extensions. The folder such as +simple, +license, +defect, etc. contain extensions which can be installed in OOo. The +corresponding update information file and the update are located on +the extensions.openoffice.org website (cvs: extensions/www/testarea). For example: + +desktop/test/deployment/update/simple/plain1.oxt + +is version 1 of this extension and it references + +http://extensions.openoffice.org/testarea/desktop/simple/update/plain1.update.xml + +which in turn references version 2 at + +http://extensions.openoffice.org/testarea/desktop/simple/update/plain1.oxt + + +To have all in one place the update information file and the update are also contained +in the desktop project. They are in the update subfolder of the different test folders. +For example + +.../update/simple/update +.../update/license/update +.../update/updatefeed/update + + +The different test folders for the update are also committed in project extensions/www +so that the files can be obtain via a URL. The structure and the contents is about the +same as the content +of desktop/test/deployment/update +For example in + +extensions/www/testarea/desktop + +are the subfolder defect, simple, updatefeed, wrong_url, etc. +they contain the extensions which are installed directly by the Extension Manager. +These folders contain also the update subfolder which contains the update information +and the actual updates. diff --git a/desktop/test/deployment/update/simple/plain1.oxt b/desktop/test/deployment/update/simple/plain1.oxt Binary files differnew file mode 100644 index 000000000..6256f99d5 --- /dev/null +++ b/desktop/test/deployment/update/simple/plain1.oxt diff --git a/desktop/test/deployment/update/simple/plain2.oxt b/desktop/test/deployment/update/simple/plain2.oxt Binary files differnew file mode 100644 index 000000000..03249c277 --- /dev/null +++ b/desktop/test/deployment/update/simple/plain2.oxt diff --git a/desktop/test/deployment/update/simple/plain3.oxt b/desktop/test/deployment/update/simple/plain3.oxt Binary files differnew file mode 100644 index 000000000..64838932d --- /dev/null +++ b/desktop/test/deployment/update/simple/plain3.oxt diff --git a/desktop/test/deployment/update/simple/readme.txt b/desktop/test/deployment/update/simple/readme.txt new file mode 100644 index 000000000..34ad6beda --- /dev/null +++ b/desktop/test/deployment/update/simple/readme.txt @@ -0,0 +1,31 @@ +The folder contains only simple extension. That is, they only contain +- META-INF +-t.rdb +-description.xml + +The description.xml contains a version, a display name, and one URL to the update data + +For example: + + +<?xml version="1.0" encoding="UTF-8"?> +<description xmlns="http://openoffice.org/extensions/description/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <version value="1.0" /> + + <display-name> + <name lang="de">plain1 de</name> + </display-name> + + <update-information> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/simple/plain1.update.xml" /> + </update-information> +</description> + +There is only one language as display name available, which will therefore always be displayed. + +The update information which is referenced in the update-information and the update is committed in the extensions/www project. To modify them get the project: + +cvs co extensions/wwww + +the files can be found under extensions/www/testarea/desktop diff --git a/desktop/test/deployment/update/simple/update/plain1.oxt b/desktop/test/deployment/update/simple/update/plain1.oxt Binary files differnew file mode 100644 index 000000000..d73362e87 --- /dev/null +++ b/desktop/test/deployment/update/simple/update/plain1.oxt diff --git a/desktop/test/deployment/update/simple/update/plain1.update.xml b/desktop/test/deployment/update/simple/update/plain1.update.xml new file mode 100644 index 000000000..741fcf774 --- /dev/null +++ b/desktop/test/deployment/update/simple/update/plain1.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.plain1.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/simple/update/plain1.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/simple/update/plain2.oxt b/desktop/test/deployment/update/simple/update/plain2.oxt Binary files differnew file mode 100644 index 000000000..3dc02aa97 --- /dev/null +++ b/desktop/test/deployment/update/simple/update/plain2.oxt diff --git a/desktop/test/deployment/update/simple/update/plain2.update.xml b/desktop/test/deployment/update/simple/update/plain2.update.xml new file mode 100644 index 000000000..883a82e62 --- /dev/null +++ b/desktop/test/deployment/update/simple/update/plain2.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.plain2.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/simple/update/plain2.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/simple/update/plain3.oxt b/desktop/test/deployment/update/simple/update/plain3.oxt Binary files differnew file mode 100644 index 000000000..575152403 --- /dev/null +++ b/desktop/test/deployment/update/simple/update/plain3.oxt diff --git a/desktop/test/deployment/update/simple/update/plain3.update.xml b/desktop/test/deployment/update/simple/update/plain3.update.xml new file mode 100644 index 000000000..e6b3f383a --- /dev/null +++ b/desktop/test/deployment/update/simple/update/plain3.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.plain3.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/simple/update/plain3.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/updatefeed/feed1.oxt b/desktop/test/deployment/update/updatefeed/feed1.oxt Binary files differnew file mode 100644 index 000000000..b1b11ecce --- /dev/null +++ b/desktop/test/deployment/update/updatefeed/feed1.oxt diff --git a/desktop/test/deployment/update/updatefeed/feed2.oxt b/desktop/test/deployment/update/updatefeed/feed2.oxt Binary files differnew file mode 100644 index 000000000..47dca1676 --- /dev/null +++ b/desktop/test/deployment/update/updatefeed/feed2.oxt diff --git a/desktop/test/deployment/update/updatefeed/update/feed1.oxt b/desktop/test/deployment/update/updatefeed/update/feed1.oxt Binary files differnew file mode 100644 index 000000000..82bb9665a --- /dev/null +++ b/desktop/test/deployment/update/updatefeed/update/feed1.oxt diff --git a/desktop/test/deployment/update/updatefeed/update/feed1.update.xml b/desktop/test/deployment/update/updatefeed/update/feed1.update.xml new file mode 100644 index 000000000..90a7c23c9 --- /dev/null +++ b/desktop/test/deployment/update/updatefeed/update/feed1.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.feed1.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/updatefeed/update/feed1.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/updatefeed/update/feed1.xml b/desktop/test/deployment/update/updatefeed/update/feed1.xml new file mode 100644 index 000000000..ed53012a4 --- /dev/null +++ b/desktop/test/deployment/update/updatefeed/update/feed1.xml @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"> + + <title>OpenOffice.org Update Feed</title> + <link rel="alternate" type="text/html" href="http://update.services.openoffice.org/ooo/snapshot.html"/> + <updated>2006-11-06T18:30:02Z</updated> + <author> + <name>The OpenOffice.org Project</name> + <uri>http://openoffice.org</uri> + <email>updatefeed@openoffice.org</email> + </author> + <id>urn:uuid:a4ccd383-1dd1-11b2-a95c-0003ba566e9d</id> + <entry> + <title>feed1.oxt version 2.0 available</title> + <link rel="alternate" type="text/html" + href="http://extensions.openoffice.org"/> + <id>urn:uuid:a4ccd383-1dd1-11b2-a95c-0003ba566e9f</id> + <category term="org.openoffice.legacy.feed1.oxt" label="feed1.oxt" /> + <updated>2006-11-06T18:30:02Z</updated> + <summary>Click here to go to the download page.</summary> + <content type="application/xml" src="http://extensions.openoffice.org/testarea/desktop/updatefeed/update/feed1.update.xml" /> + </entry> + <entry> + <title>feed2.oxt version 2.0 available</title> + <link rel="alternate" type="text/html" + href="http://extensions.openoffice.org"/> + <id>urn:uuid:a4ccd383-1dd1-11b2-a95c-0003ba566eaf</id> + <category term="org.openoffice.legacy.feed2.oxt" label="feed2.oxt" /> + <updated>2006-11-06T18:30:02Z</updated> + <summary>Click here to go to the download page.</summary> + <content type="application/xml" src="http://extensions.openoffice.org/testarea/desktop/updatefeed/update/feed2.update.xml" /> + </entry> +</feed> diff --git a/desktop/test/deployment/update/updatefeed/update/feed2.oxt b/desktop/test/deployment/update/updatefeed/update/feed2.oxt Binary files differnew file mode 100644 index 000000000..9c867ae4a --- /dev/null +++ b/desktop/test/deployment/update/updatefeed/update/feed2.oxt diff --git a/desktop/test/deployment/update/updatefeed/update/feed2.update.xml b/desktop/test/deployment/update/updatefeed/update/feed2.update.xml new file mode 100644 index 000000000..e37c692b0 --- /dev/null +++ b/desktop/test/deployment/update/updatefeed/update/feed2.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.feed2.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/updatefeed/update/feed2.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/updateinfocreation/build/MANIFEST.MF b/desktop/test/deployment/update/updateinfocreation/build/MANIFEST.MF new file mode 100644 index 000000000..09e2f42ca --- /dev/null +++ b/desktop/test/deployment/update/updateinfocreation/build/MANIFEST.MF @@ -0,0 +1,2 @@ +RegistrationClassName: com.sun.star.comp.smoketest.TestExtension + diff --git a/desktop/test/deployment/update/updateinfocreation/build/TestExtension.idl b/desktop/test/deployment/update/updateinfocreation/build/TestExtension.idl new file mode 100644 index 000000000..87b2540e4 --- /dev/null +++ b/desktop/test/deployment/update/updateinfocreation/build/TestExtension.idl @@ -0,0 +1,34 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef _com_sun_star_comp_smoketest_TestExtension_idl_ +#define _com_sun_star_comp_smoketest_TestExtension_idl_ + +#include <com/sun/star/lang/XServiceInfo.idl> + + +module com { module sun { module star { module comp { module smoketest { + // example service, XServiceInfo is implemented here for demonstration + // issues. XServiceInfo must be implemented by all components. + service TestExtension: css::lang::XServiceInfo; +};};};};}; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/desktop/test/deployment/update/updateinfocreation/build/TestExtension.java b/desktop/test/deployment/update/updateinfocreation/build/TestExtension.java new file mode 100644 index 000000000..8d48a30c8 --- /dev/null +++ b/desktop/test/deployment/update/updateinfocreation/build/TestExtension.java @@ -0,0 +1,156 @@ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +package com.sun.star.comp.smoketest; + +import com.sun.star.lib.uno.helper.Factory; +import com.sun.star.lang.XMultiComponentFactory; +import com.sun.star.lang.XSingleComponentFactory; +import com.sun.star.lib.uno.helper.WeakBase; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.uno.XComponentContext; +import com.sun.star.registry.XRegistryKey; +import com.sun.star.lang.XInitialization; +import com.sun.star.lang.XTypeProvider; +import com.sun.star.lang.XServiceInfo; +import com.sun.star.uno.Type; + +/** This class capsulates the class, that implements the minimal component, a + * factory for creating the service (<CODE>__getComponentFactory</CODE>) and a + * method, that writes the information into the given registry key + * (<CODE>__writeRegistryServiceInfo</CODE>). + */ +public class TestExtension { + /** This class implements the component. At least the interfaces XServiceInfo, + * XTypeProvider, and XInitialization should be provided by the service. + */ + public static class _TestExtension extends WeakBase + implements XServiceInfo { + /** The service name, that must be used to get an instance of this service. + */ + private static final String __serviceName = + "com.sun.star.comp.smoketest.TestExtension"; + + /** The initial component contextr, that gives access to + * the service manager, supported singletons, ... + * It's often later used + */ + private XComponentContext m_cmpCtx; + + /** The service manager, that gives access to all registered services. + * It's often later used + */ + private XMultiComponentFactory m_xMCF; + + /** The constructor of the inner class has a XMultiServiceFactory parameter. + * @param xmultiservicefactoryInitialization A special service factory + * could be introduced while initializing. + */ + public _TestExtension(XComponentContext xCompContext) { + try { + m_cmpCtx = xCompContext; + m_xMCF = m_cmpCtx.getServiceManager(); + } + catch( Exception e ) { + e.printStackTrace(); + } + } + + /** This method returns an array of all supported service names. + * @return Array of supported service names. + */ + public String[] getSupportedServiceNames() { + return getServiceNames(); + } + + /** This method is a simple helper function to used in the + * static component initialisation functions as well as in + * getSupportedServiceNames. + */ + public static String[] getServiceNames() { + String[] sSupportedServiceNames = { __serviceName }; + return sSupportedServiceNames; + } + + /** This method returns true, if the given service will be + * supported by the component. + * @param sServiceName Service name. + * @return True, if the given service name will be supported. + */ + public boolean supportsService( String sServiceName ) { + return sServiceName.equals( __serviceName ); + } + + /** Return the class name of the component. + * @return Class name of the component. + */ + public String getImplementationName() { + return _TestExtension.class.getName(); + } + } + + + /** + * Gives a factory for creating the service. + * This method is called by the <code>JavaLoader</code> + * <p> + * @return returns a <code>XSingleComponentFactory</code> for creating + * the component + * @param sImplName the name of the implementation for which a + * service is desired + * @see com.sun.star.comp.loader.JavaLoader + */ + public static XSingleComponentFactory __getComponentFactory(String sImplName) + { + XSingleComponentFactory xFactory = null; + + if ( sImplName.equals( _TestExtension.class.getName() ) ) + xFactory = Factory.createComponentFactory(_TestExtension.class, + _TestExtension.getServiceNames()); + + return xFactory; + } + + /** + * Writes the service information into the given registry key. + * This method is called by the <code>JavaLoader</code> + * <p> + * @return returns true if the operation succeeded + * @param regKey the registryKey + * @see com.sun.star.comp.loader.JavaLoader + */ + public static boolean __writeRegistryServiceInfo(XRegistryKey regKey) { + return Factory.writeRegistryServiceInfo(_TestExtension.class.getName(), + _TestExtension.getServiceNames(), + regKey); + } + /** This method is a member of the interface for initializing an object + * directly after its creation. + * @param object This array of arbitrary objects will be passed to the + * component after its creation. + * @throws Exception Every exception will not be handled, but will be + * passed to the caller. + */ + public void initialize( Object[] object ) + throws com.sun.star.uno.Exception { + /* The component describes what arguments are expected and in which + * order! At this point you can read the objects and initialize + * your component using these objects. + */ + } + +} diff --git a/desktop/test/deployment/update/updateinfocreation/build/description.xml b/desktop/test/deployment/update/updateinfocreation/build/description.xml new file mode 100644 index 000000000..283fb1cca --- /dev/null +++ b/desktop/test/deployment/update/updateinfocreation/build/description.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/description/2006" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:d="http://openoffice.org/extensions/description/2006" > + <identifier value="org.openoffice.extensions.testarea.desktop.updateinfo"/> + <version value="2.0" /> + <dependencies > + <OpenOffice.org-minimal-version value="2.1" d:name="OpenOffice.org 2.1"/> + </dependencies> + <update-information> + <src xlink:href="http://update.services.openoffice.org/ProductUpdateService/check.Update?product=extension&extensionid=org.openoffice.extensions.testarea.desktop.updateinfo&refresh=true"/> + </update-information> +</description> diff --git a/desktop/test/deployment/update/updateinfocreation/build/makefile.mk b/desktop/test/deployment/update/updateinfocreation/build/makefile.mk new file mode 100644 index 000000000..1cb59985e --- /dev/null +++ b/desktop/test/deployment/update/updateinfocreation/build/makefile.mk @@ -0,0 +1,80 @@ +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# This file incorporates work covered by the following license notice: +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed +# with this work for additional information regarding copyright +# ownership. The ASF licenses this file to you under the Apache +# License, Version 2.0 (the "License"); you may not use this file +# except in compliance with the License. You may obtain a copy of +# the License at http://www.apache.org/licenses/LICENSE-2.0 . +# + +PRJ = ..$/..$/..$/..$/.. +PRJNAME = updateinfo +PACKAGE = com$/sun$/star$/comp$/smoketest +TARGET = com_sun_star_comp_smoketest + +# --- Settings ----------------------------------------------------- + +.INCLUDE : settings.mk + +JARFILES = ridl.jar jurt.jar unoil.jar juh.jar + + +JARTARGET = TestExtension.jar +JARCOMPRESS = TRUE +CUSTOMMANIFESTFILE = MANIFEST.MF + +ZIP1TARGET=updateinfo +ZIP1LIST=* +ZIPFLAGS=-r +ZIP1DIR=$(MISC)$/$(TARGET) +ZIP1EXT=.oxt + +EXTUPDATEINFO_NAME=org.openoffice.extensions.testarea.desktop.updateinfo.update.xml +EXTUPDATEINFO_SOURCE=description.xml +EXTUPDATEINFO_URLS = http://extensions.openoffice.org/testarea/desktop/updateinfocreation/update/updateinfo.oxt +# --- Files -------------------------------------------------------- + +COPY_OXT_MANIFEST:= $(MISC)$/$(TARGET)$/META-INF$/manifest.xml +JAVAFILES = TestExtension.java + +# --- Targets ------------------------------------------------------ + +.INCLUDE : target.mk + +$(JARTARGETN) : $(MISC)$/$(TARGET).javamaker.done + +$(JAVACLASSFILES) : $(MISC)$/$(TARGET).javamaker.done + +$(MISC)$/$(TARGET).javamaker.done: $(BIN)$/TestExtension.rdb + $(JAVAMAKER) -O$(CLASSDIR) -BUCR -nD -X$(SOLARBINDIR)/types.rdb $< + $(TOUCH) $@ + +$(BIN)$/TestExtension.rdb: TestExtension.idl + $(IDLC) -O$(MISC) -I$(SOLARIDLDIR) -cid -we $< + +-$(RM) $@ + $(REGMERGE) $@ /UCR $(MISC)$/TestExtension.urd + +$(MISC)$/$(ZIP1TARGET).createdir : + +$(MKDIRHIER) $(MISC)$/$(TARGET)$/META-INF >& $(NULLDEV) && $(TOUCH) $@ + +$(MISC)$/$(TARGET)_resort : manifest.xml $(JARTARGETN) $(MISC)$/$(ZIP1TARGET).createdir $(BIN)$/TestExtension.rdb description.xml + $(GNUCOPY) -u manifest.xml $(MISC)$/$(TARGET)$/META-INF$/manifest.xml + $(GNUCOPY) -u $(JARTARGETN) $(MISC)$/$(TARGET)$/$(JARTARGET) + $(GNUCOPY) -u $(BIN)$/TestExtension.rdb $(MISC)$/$(TARGET)$/TestExtension.rdb + $(GNUCOPY) -u description.xml $(MISC)$/$(TARGET)$/description.xml + $(TOUCH) $@ + +.IF "$(ZIP1TARGETN)"!="" +$(ZIP1TARGETN) : $(MISC)$/$(TARGET)_resort $(MISC)$/$(ZIP1TARGET).createdir + +.ENDIF # "$(ZIP1TARGETN)"!="" + diff --git a/desktop/test/deployment/update/updateinfocreation/build/manifest.xml b/desktop/test/deployment/update/updateinfocreation/build/manifest.xml new file mode 100644 index 000000000..fcedabf96 --- /dev/null +++ b/desktop/test/deployment/update/updateinfocreation/build/manifest.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<manifest:manifest xmlns:manifest="http://openoffice.org/2001/manifest"> + <manifest:file-entry manifest:full-path="TestExtension.jar" manifest:media-type="application/vnd.sun.star.uno-component;type=Java"/> + <manifest:file-entry manifest:full-path="TestExtension.rdb" manifest:media-type="application/vnd.sun.star.uno-typelibrary;type=RDB"/> +</manifest:manifest> diff --git a/desktop/test/deployment/update/updateinfocreation/readme.txt b/desktop/test/deployment/update/updateinfocreation/readme.txt new file mode 100644 index 000000000..20819bb70 --- /dev/null +++ b/desktop/test/deployment/update/updateinfocreation/readme.txt @@ -0,0 +1,38 @@ +The extension build in this test uses an update information which is obtained +through a http get request. That is the URL does not reference an update +information file. Instead it invokes code on a webserver which returns the +update information. The URL used in this example is: + +http://update.services.openoffice.org/ProductUpdateService/check.Update?product=extension&extensionid=org.openoffice.extensions.testarea.desktop.updateinfo&refresh=true + +The updateinfo.oxt in this directory has the version 1.0 and in the sub-directory "update is the version 2 of this extension. Version 1.0 is also available here +/extensions/www/testarea/desktop/updateinfocreation/updateinfo.oxt +and version 2.0 here +/extensions/www/testarea/desktop/updateinfocreation/update/updateinfo.oxt + +Therefore they can be accessed through + +http://extensions.openoffice.org/testarea/desktop/updateinfocreation/updateinfo.oxt +and +http://extensions.openoffice.org/testarea/desktop/updateinfocreation/update/updateinfo.oxt + +The latter location (version 2.0) will also be referenced by the update information +which are returned by the webserver. + +The build sub-directory contains the code of the extension (version 2.0) and can +be build by calling dmake in this directory. The makefile uses the special macros: + +EXTUPDATEINFO_NAME=org.openoffice.extensions.testarea.desktop.updateinfo.update.xml +EXTUPDATEINFO_SOURCE=description.xml +EXTUPDATEINFO_URLS = http://extensions.openoffice.org/testarea/desktop/updateinfocreation/update/updateinfo.oxt + +This causes the generation of the update information file. This file could be +directly references by the URL in the <update-information> of the description.xml. +See also the Wiki entry at: +http://wiki.openoffice.org/wiki/Creating_update_information_for_extensions +This generated update information file can then be used by the webserver, when it +sends back the requested update information. The update information file will be +generated in the misc directory of the output directory. + +The update information file needs to be copied into common.pro/pus.mxyz directory. +The project mwsfinish will process the files in the pus directory. diff --git a/desktop/test/deployment/update/updateinfocreation/update/updateinfo.oxt b/desktop/test/deployment/update/updateinfocreation/update/updateinfo.oxt Binary files differnew file mode 100644 index 000000000..52ddd3158 --- /dev/null +++ b/desktop/test/deployment/update/updateinfocreation/update/updateinfo.oxt diff --git a/desktop/test/deployment/update/updateinfocreation/updateinfo.oxt b/desktop/test/deployment/update/updateinfocreation/updateinfo.oxt Binary files differnew file mode 100644 index 000000000..43ac7003b --- /dev/null +++ b/desktop/test/deployment/update/updateinfocreation/updateinfo.oxt diff --git a/desktop/test/deployment/update/website_update/readme.txt b/desktop/test/deployment/update/website_update/readme.txt new file mode 100644 index 000000000..b888bba70 --- /dev/null +++ b/desktop/test/deployment/update/website_update/readme.txt @@ -0,0 +1,133 @@ +The folder contains extensions which need to be updated through a web site. +The "Updates dialog" of the Extension Manager will mark the updates for these +extensions as "browser based update". The Extension Manager will open a browser +for each of the extensions and navigate to the respective website. + +================================================================================ +web1.oxt - web5.oxt: +================================================================================ +They contain <update-information>. That is they reference directly the respective +webX.update.xml (for example, web1.update.xml) files which are available at +http://extensions.openoffice.org/testarea/desktop/website_update/update/... +For example: +http://extensions.openoffice.org/testarea/desktop/website_update/update/web2.update.xml + +The update information contain multiple URLs to "localized" web sites. Each URL is +assigned to a particular local. For example: + +<src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de.html" lang="de"/> + +The Extension Manager will choose the URLs where the lang attribute matches most +closely the locale of the office. + +The following table shows what localized web site is used, when the office uses the locale +en-US. The web page will display the locale used. See update/web1_de.html, etc. + + +Localization: + +Installed office en-US + | publisher | release notes +============================================= +web1.oxt | en-US | en-US +--------------------------------------------- +web2.oxt | en-US-region1 | en-US-region1 +--------------------------------------------- +web3.oxt | en | en +--------------------------------------------- +web4.oxt | en-GB | en-GB +--------------------------------------------- +web5.oxt | de | de + + +================================================================================ +web6.oxt +================================================================================ +Need not be committed in extensions/www/testarea/desktop. + +web6.oxt is intended for tests with extensions.services.openoffice.org. +It does not contain <update-information>. That is, the Extension Manager will obtain +the update information from the repository as feed: + +http://updateext.services.openoffice.org/ProductUpdateService/check.Update + +Test +---- +Repository: + +-Create the new extension in the repository. +-Provide a company name and a URL to the company website. In our case this should be + http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-US.html + +-Create a new release for the extension. Upload the description.xml of version 2.0 +(update/web6/description.xml). Provide a download URL for the web site (field + "Download from page / Open follow up page URL", which should be + http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-US.html + Provide release notes. + + +Office: +-Install version 1.0 of the extension: + desktop/test/deployment/update/website_update/web6.oxt + +-Run the update in the Extension Manager + + +Result: +The Update Dialog should show the publisher name as provided in "Provider URL" field +of the extension edit page (not release). + +A release notes link is displayed with a URL to the release notes as provided in +the "Provider Title" field of the extension release edit page. + +When running the update then the web browser should navigate to +http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-US.html + + +================================================================================ +web7.oxt +================================================================================ +Need not be committed in extensions/www/testarea/desktop + +web7.oxt is intended for tests with extensions.services.openoffice.org. +It does not contain <update-information>. That is, the Extension Manager will obtain +the update information from the repository as feed: + +http://updateext.services.openoffice.org/ProductUpdateService/check.Update + +The description.xml which will be uploaded contains URLs for release notes and publisher +names/ URLs. That is, this information is not generated from the information of the +repository web site. + +Test +----------- +Repository: + +-Create the new extension in the repository. +-Provide a company name and a URL to the company website. In our case these should be different + to those provided in the description.xml. These should NOT go into the update feed. + Choose for example as "Provider Title": FOO and as "Provider URL" some valid URL but NOT + http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-US.html + +-Create a new release for the extension. Upload the description.xml of version 2.0 +(update/web7/description.xml). Provide a download URL for the web site (field + "Download from page / Open follow up page URL", which should be + http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-US.html + Provide release notes. + +Office: +-Install version 1.0 of the extension: + desktop/test/deployment/update/website_update/web7.oxt + +-Run the update in the Extension Manager + +Result: +The Update Dialog should show the publisher name as provided in the description.xml. +That is: My OpenOffice en-US and NOT "FOO". + +A release notes link is displayed with a URL to the release notes as provided in +the description.xml. That is: +http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_xxx.html + +When running the update then the web browser should navigate to +http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-US.html diff --git a/desktop/test/deployment/update/website_update/update/web1.oxt b/desktop/test/deployment/update/website_update/update/web1.oxt Binary files differnew file mode 100644 index 000000000..157d5d952 --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web1.oxt diff --git a/desktop/test/deployment/update/website_update/update/web1.update.xml b/desktop/test/deployment/update/website_update/update/web1.update.xml new file mode 100644 index 000000000..860c8ebc9 --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web1.update.xml @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <version value="2.0" /> + + <identifier value="org.openoffice/framework/desktop/test/deployment/update/website_update/web1"/> + + <update-website> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de.html" lang="de" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en.html" lang="en" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de-DE.html" lang="de-DE" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de-DE-altmark.html" lang="de-DE-altmark" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-GB.html" lang="en-GB" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-US.html" lang="en-US" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-US-region1.html" lang="en-US-region1" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-US-region2.html" lang="en-US-region2" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-region3.html" lang="en-region3" /> + </update-website> +</description> + diff --git a/desktop/test/deployment/update/website_update/update/web1_de-DE-altmark.html b/desktop/test/deployment/update/website_update/update/web1_de-DE-altmark.html new file mode 100644 index 000000000..ffed5a52e --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web1_de-DE-altmark.html @@ -0,0 +1,18 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Update Extensions</H1> +<H1>de-DE-altmark</H1> +<p><a href="web1.oxt">web1.oxt</a></p> +<p><a href="web2.oxt">web2.oxt</a></p> +<p><a href="web3.oxt">web3.oxt</a></p> +<p><a href="web4.oxt">web4.oxt</a></p> +<p><a href="web5.oxt">web5.oxt</a></p> +<p><a href="web6.oxt">web6.oxt</a></p> +<p><a href="web7.oxt">web7.oxt</a></p> + +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/website_update/update/web1_de-DE.html b/desktop/test/deployment/update/website_update/update/web1_de-DE.html new file mode 100644 index 000000000..33fb7f2ec --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web1_de-DE.html @@ -0,0 +1,18 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Update Extensions</H1> +<H1>de-DE</H1> +<p><a href="web1.oxt">web1.oxt</a></p> +<p><a href="web2.oxt">web2.oxt</a></p> +<p><a href="web3.oxt">web3.oxt</a></p> +<p><a href="web4.oxt">web4.oxt</a></p> +<p><a href="web5.oxt">web5.oxt</a></p> +<p><a href="web6.oxt">web6.oxt</a></p> +<p><a href="web7.oxt">web7.oxt</a></p> + +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/website_update/update/web1_de.html b/desktop/test/deployment/update/website_update/update/web1_de.html new file mode 100644 index 000000000..31a53b91d --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web1_de.html @@ -0,0 +1,19 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Update Extensions</H1> +<H1>de</H1> +<p><a href="web1.oxt">web1.oxt</a></p> +<p><a href="web2.oxt">web2.oxt</a></p> +<p><a href="web3.oxt">web3.oxt</a></p> +<p><a href="web4.oxt">web4.oxt</a></p> +<p><a href="web5.oxt">web5.oxt</a></p> +<p><a href="web6.oxt">web6.oxt</a></p> +<p><a href="web7.oxt">web7.oxt</a></p> + + +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/website_update/update/web1_en-GB.html b/desktop/test/deployment/update/website_update/update/web1_en-GB.html new file mode 100644 index 000000000..c46328a82 --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web1_en-GB.html @@ -0,0 +1,19 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Update Extensions</H1> +<H1>en-GB</H1> +<p><a href="web1.oxt">web1.oxt</a></p> +<p><a href="web2.oxt">web2.oxt</a></p> +<p><a href="web3.oxt">web3.oxt</a></p> +<p><a href="web4.oxt">web4.oxt</a></p> +<p><a href="web5.oxt">web5.oxt</a></p> +<p><a href="web6.oxt">web6.oxt</a></p> +<p><a href="web7.oxt">web7.oxt</a></p> + + +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/website_update/update/web1_en-US-region1.html b/desktop/test/deployment/update/website_update/update/web1_en-US-region1.html new file mode 100644 index 000000000..80b41823b --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web1_en-US-region1.html @@ -0,0 +1,19 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+<HEAD>
+</HEAD>
+<BODY>
+<H1>Update Extensions</H1>
+<H1>en-US-region1</H1>
+<p><a href="web1.oxt">web1.oxt</a></p>
+<p><a href="web2.oxt">web2.oxt</a></p>
+<p><a href="web3.oxt">web3.oxt</a></p>
+<p><a href="web4.oxt">web4.oxt</a></p>
+<p><a href="web5.oxt">web5.oxt</a></p>
+<p><a href="web6.oxt">web6.oxt</a></p>
+<p><a href="web7.oxt">web7.oxt</a></p>
+
+
+</BODY>
+</HTML>
+
diff --git a/desktop/test/deployment/update/website_update/update/web1_en-US-region2.html b/desktop/test/deployment/update/website_update/update/web1_en-US-region2.html new file mode 100644 index 000000000..1a501f520 --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web1_en-US-region2.html @@ -0,0 +1,19 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Update Extensions</H1> +<H1>en-US-region2</H1> +<p><a href="web1.oxt">web1.oxt</a></p> +<p><a href="web2.oxt">web2.oxt</a></p> +<p><a href="web3.oxt">web3.oxt</a></p> +<p><a href="web4.oxt">web4.oxt</a></p> +<p><a href="web5.oxt">web5.oxt</a></p> +<p><a href="web6.oxt">web6.oxt</a></p> +<p><a href="web7.oxt">web7.oxt</a></p> + + +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/website_update/update/web1_en-US.html b/desktop/test/deployment/update/website_update/update/web1_en-US.html new file mode 100644 index 000000000..f861b09c0 --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web1_en-US.html @@ -0,0 +1,20 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+<HEAD>
+</HEAD>
+<BODY>
+<H1>Update Extensions</H1>
+<H1>en-US</H1>
+<p><a href="web1.oxt">web1.oxt</a></p>
+<p><a href="web2.oxt">web2.oxt</a></p>
+<p><a href="web3.oxt">web3.oxt</a></p>
+<p><a href="web4.oxt">web4.oxt</a></p>
+<p><a href="web5.oxt">web5.oxt</a></p>
+<p><a href="web6.oxt">web6.oxt</a></p>
+<p><a href="web7.oxt">web7.oxt</a></p>
+
+
+
+</BODY>
+</HTML>
+
diff --git a/desktop/test/deployment/update/website_update/update/web1_en-region3.html b/desktop/test/deployment/update/website_update/update/web1_en-region3.html new file mode 100644 index 000000000..f55bcbe38 --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web1_en-region3.html @@ -0,0 +1,19 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Update Extensions</H1> +<H1>en-region3</H1> +<p><a href="web1.oxt">web1.oxt</a></p> +<p><a href="web2.oxt">web2.oxt</a></p> +<p><a href="web3.oxt">web3.oxt</a></p> +<p><a href="web4.oxt">web4.oxt</a></p> +<p><a href="web5.oxt">web5.oxt</a></p> +<p><a href="web6.oxt">web6.oxt</a></p> +<p><a href="web7.oxt">web7.oxt</a></p> + + +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/website_update/update/web1_en.html b/desktop/test/deployment/update/website_update/update/web1_en.html new file mode 100644 index 000000000..a0b422ebf --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web1_en.html @@ -0,0 +1,19 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> +</HEAD> +<BODY> +<H1>Update Extensions</H1> +<H1>en</H1> +<p><a href="web1.oxt">web1.oxt</a></p> +<p><a href="web2.oxt">web2.oxt</a></p> +<p><a href="web3.oxt">web3.oxt</a></p> +<p><a href="web4.oxt">web4.oxt</a></p> +<p><a href="web5.oxt">web5.oxt</a></p> +<p><a href="web6.oxt">web6.oxt</a></p> +<p><a href="web7.oxt">web7.oxt</a></p> + + +</BODY> +</HTML> + diff --git a/desktop/test/deployment/update/website_update/update/web2.oxt b/desktop/test/deployment/update/website_update/update/web2.oxt Binary files differnew file mode 100644 index 000000000..3a13e8114 --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web2.oxt diff --git a/desktop/test/deployment/update/website_update/update/web2.update.xml b/desktop/test/deployment/update/website_update/update/web2.update.xml new file mode 100644 index 000000000..18c871eab --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web2.update.xml @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <version value="2.0" /> + + <identifier value="org.openoffice/framework/desktop/test/deployment/update/website_update/web2"/> + + <update-website> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de.html" lang="de" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en.html" lang="en" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de-DE.html" lang="de-DE" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de-DE-altmark.html" lang="de-DE-altmark" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-GB.html" lang="en-GB" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-US-region1.html" lang="en-US-region1" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-US-region2.html" lang="en-US-region2" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-region3.html" lang="en-region3" /> + </update-website> +</description> + diff --git a/desktop/test/deployment/update/website_update/update/web3.oxt b/desktop/test/deployment/update/website_update/update/web3.oxt Binary files differnew file mode 100644 index 000000000..b3214a4e6 --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web3.oxt diff --git a/desktop/test/deployment/update/website_update/update/web3.update.xml b/desktop/test/deployment/update/website_update/update/web3.update.xml new file mode 100644 index 000000000..5d7711def --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web3.update.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <version value="2.0" /> + + <identifier value="org.openoffice/framework/desktop/test/deployment/update/website_update/web3"/> + + <update-website> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de.html" lang="de" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en.html" lang="en" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de-DE.html" lang="de-DE" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de-DE-altmark.html" lang="de-DE-altmark" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-GB.html" lang="en-GB" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-region3.html" lang="en-region3" /> + </update-website> +</description> + diff --git a/desktop/test/deployment/update/website_update/update/web4.oxt b/desktop/test/deployment/update/website_update/update/web4.oxt Binary files differnew file mode 100644 index 000000000..93766fd44 --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web4.oxt diff --git a/desktop/test/deployment/update/website_update/update/web4.update.xml b/desktop/test/deployment/update/website_update/update/web4.update.xml new file mode 100644 index 000000000..e016ae3cb --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web4.update.xml @@ -0,0 +1,33 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <version value="2.0" /> + + <identifier value="org.openoffice/framework/desktop/test/deployment/update/website_update/web4"/> + + <update-website> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de.html" lang="de" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de-DE.html" lang="de-DE" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de-DE-altmark.html" lang="de-DE-altmark" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-GB.html" lang="en-GB" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_en-region3.html" lang="en-region3" /> + </update-website> +</description> + diff --git a/desktop/test/deployment/update/website_update/update/web5.oxt b/desktop/test/deployment/update/website_update/update/web5.oxt Binary files differnew file mode 100644 index 000000000..1ae8f01b1 --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web5.oxt diff --git a/desktop/test/deployment/update/website_update/update/web5.update.xml b/desktop/test/deployment/update/website_update/update/web5.update.xml new file mode 100644 index 000000000..951ef95a9 --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web5.update.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <version value="2.0" /> + + <identifier value="org.openoffice/framework/desktop/test/deployment/update/website_update/web5"/> + + <update-website> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de.html" lang="de" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de-DE.html" lang="de-DE" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/website_update/update/web1_de-DE-altmark.html" lang="de-DE-altmark" /> + </update-website> +</description> + diff --git a/desktop/test/deployment/update/website_update/update/web6.oxt b/desktop/test/deployment/update/website_update/update/web6.oxt Binary files differnew file mode 100644 index 000000000..8bc16fb2c --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web6.oxt diff --git a/desktop/test/deployment/update/website_update/update/web6/description.xml b/desktop/test/deployment/update/website_update/update/web6/description.xml new file mode 100644 index 000000000..47a32a287 --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web6/description.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/description/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <version value="2.0" /> + <identifier value="org.openoffice/framework/desktop/test/deployment/update/website_update/web6"/> + <display-name> + <name>web-based update test 1</name> + </display-name> + +</description> + diff --git a/desktop/test/deployment/update/website_update/update/web6/readme.txt b/desktop/test/deployment/update/website_update/update/web6/readme.txt new file mode 100644 index 000000000..6756b8ef9 --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web6/readme.txt @@ -0,0 +1,5 @@ +This folder contains the description.xml from update/web6.oxt
+When creating the release 2.0 on the repository then this description.xml can be uploaded.
+
+
+This folder is not needed on extensions.openoffice.org/testarea/desktop/...
diff --git a/desktop/test/deployment/update/website_update/update/web7.oxt b/desktop/test/deployment/update/website_update/update/web7.oxt Binary files differnew file mode 100644 index 000000000..4d6220a48 --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web7.oxt diff --git a/desktop/test/deployment/update/website_update/update/web7/description.xml b/desktop/test/deployment/update/website_update/update/web7/description.xml new file mode 100644 index 000000000..9d5e4569d --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web7/description.xml @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/description/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <version value="2.0" /> + <identifier value="org.openoffice/framework/desktop/test/deployment/update/website_update/web7"/> + <display-name> + <name>web-based update test 1</name> + </display-name> + + <publisher> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de.html" lang="de">My OpenOffice de</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en.html" lang="en">My OpenOffice en</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de-DE.html" lang="de-DE">My OpenOffice de-DE</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_de-DE-altmark.html" lang="de-DE-altmark">My OpenOffice de-DE-altmark</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-GB.html" lang="en-GB">My OpenOffice en-GB</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-US.html" lang="en-US">My OpenOffice en-US</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-US-region1.html" lang="en-US-region1">My OpenOffice en-US-region1</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-US-region2.html" lang="en-US-region2">My OpenOffice en-US-region2</name> + <name xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/publisher_en-region3.html" lang="en-region3">My OpenOffice en-region3</name> + </publisher> + + <release-notes> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de.html" lang="de" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en.html" lang="en" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de-DE.html" lang="de-DE" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_de-DE-altmark.html" lang="de-DE-altmark" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-GB.html" lang="en-GB" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-US.html" lang="en-US" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-US-region1.html" lang="en-US-region1" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-US-region2.html" lang="en-US-region2" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/publisher/release-notes_en-region3.html" lang="en-region3" /> + </release-notes> + + +</description> + diff --git a/desktop/test/deployment/update/website_update/update/web7/readme.txt b/desktop/test/deployment/update/website_update/update/web7/readme.txt new file mode 100644 index 000000000..45b2e2374 --- /dev/null +++ b/desktop/test/deployment/update/website_update/update/web7/readme.txt @@ -0,0 +1,5 @@ +This folder contains the description.xml from update/web7.oxt
+When creating the release 2.0 on the repository then this description.xml can be uploaded.
+
+
+This folder is not needed on extensions.openoffice.org/testarea/desktop/...
diff --git a/desktop/test/deployment/update/website_update/web1.oxt b/desktop/test/deployment/update/website_update/web1.oxt Binary files differnew file mode 100644 index 000000000..7c17586e0 --- /dev/null +++ b/desktop/test/deployment/update/website_update/web1.oxt diff --git a/desktop/test/deployment/update/website_update/web2.oxt b/desktop/test/deployment/update/website_update/web2.oxt Binary files differnew file mode 100644 index 000000000..705e70a75 --- /dev/null +++ b/desktop/test/deployment/update/website_update/web2.oxt diff --git a/desktop/test/deployment/update/website_update/web3.oxt b/desktop/test/deployment/update/website_update/web3.oxt Binary files differnew file mode 100644 index 000000000..4e63a75f0 --- /dev/null +++ b/desktop/test/deployment/update/website_update/web3.oxt diff --git a/desktop/test/deployment/update/website_update/web4.oxt b/desktop/test/deployment/update/website_update/web4.oxt Binary files differnew file mode 100644 index 000000000..e66513e68 --- /dev/null +++ b/desktop/test/deployment/update/website_update/web4.oxt diff --git a/desktop/test/deployment/update/website_update/web5.oxt b/desktop/test/deployment/update/website_update/web5.oxt Binary files differnew file mode 100644 index 000000000..65b02db93 --- /dev/null +++ b/desktop/test/deployment/update/website_update/web5.oxt diff --git a/desktop/test/deployment/update/website_update/web6.oxt b/desktop/test/deployment/update/website_update/web6.oxt Binary files differnew file mode 100644 index 000000000..98416edfa --- /dev/null +++ b/desktop/test/deployment/update/website_update/web6.oxt diff --git a/desktop/test/deployment/update/website_update/web7.oxt b/desktop/test/deployment/update/website_update/web7.oxt Binary files differnew file mode 100644 index 000000000..31ba45f03 --- /dev/null +++ b/desktop/test/deployment/update/website_update/web7.oxt diff --git a/desktop/test/deployment/update/wrong_url/readme.txt b/desktop/test/deployment/update/wrong_url/readme.txt new file mode 100644 index 000000000..9e3bf8b96 --- /dev/null +++ b/desktop/test/deployment/update/wrong_url/readme.txt @@ -0,0 +1,18 @@ +The extensions use either multiple urls to the update information file, or the update information file contains multiple urls. Some of those URLs point to locations which do not exist. + +url1.oxt: The corresponding url1.update.xml contains two download urls. The first Url points to a location that is not available. The second points to the new version. + +url2.oxt: Contains to URLs to update information files. The first URL in url2.oxt is wrong and the second is +correct. + +url3.oxt: contains to URLs to update information files which point to locations which do not exist. + +wrongdownload1.oxt: The corresponding wrongdownload1.update.xml contains two download URLs which point to locations which are not available. + +wrongdownload2.oxt: same as wrongdownload1.oxt + +wrongdownload3.oxt: same as wrongdownload1.oxt + + +Use the wrongdownload extensions to check the automatic scrolling of the text area that contains the results. + diff --git a/desktop/test/deployment/update/wrong_url/update/url1.oxt b/desktop/test/deployment/update/wrong_url/update/url1.oxt Binary files differnew file mode 100644 index 000000000..479b546c8 --- /dev/null +++ b/desktop/test/deployment/update/wrong_url/update/url1.oxt diff --git a/desktop/test/deployment/update/wrong_url/update/url1.update.xml b/desktop/test/deployment/update/wrong_url/update/url1.update.xml new file mode 100644 index 000000000..e6980d558 --- /dev/null +++ b/desktop/test/deployment/update/wrong_url/update/url1.update.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.url1.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/wrong_url/notavailable/url1.oxt" /> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/wrong_url/update/url1.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/wrong_url/update/url2.oxt b/desktop/test/deployment/update/wrong_url/update/url2.oxt Binary files differnew file mode 100644 index 000000000..ec2c5c652 --- /dev/null +++ b/desktop/test/deployment/update/wrong_url/update/url2.oxt diff --git a/desktop/test/deployment/update/wrong_url/update/url2.update.xml b/desktop/test/deployment/update/wrong_url/update/url2.update.xml new file mode 100644 index 000000000..3ced2f9d2 --- /dev/null +++ b/desktop/test/deployment/update/wrong_url/update/url2.update.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.url2.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/wrong_url/update/url2.oxt" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/wrong_url/update/wrongdownload1.update.xml b/desktop/test/deployment/update/wrong_url/update/wrongdownload1.update.xml new file mode 100644 index 000000000..916036e03 --- /dev/null +++ b/desktop/test/deployment/update/wrong_url/update/wrongdownload1.update.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.wrongdownload1.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/wrong_url/notavailable/wrongdownload1.oxt" /> + <src xlink:href="http://extensions.openoffice.org/notavailable/" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/wrong_url/update/wrongdownload2.update.xml b/desktop/test/deployment/update/wrong_url/update/wrongdownload2.update.xml new file mode 100644 index 000000000..36b24ed19 --- /dev/null +++ b/desktop/test/deployment/update/wrong_url/update/wrongdownload2.update.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.wrongdownload2.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/wrong_url/notavailable/wrongdownload2.oxt" /> + <src xlink:href="http://extensions.openoffice.org/notavailable/" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/wrong_url/update/wrongdownload3.update.xml b/desktop/test/deployment/update/wrong_url/update/wrongdownload3.update.xml new file mode 100644 index 000000000..f5a2bb8b1 --- /dev/null +++ b/desktop/test/deployment/update/wrong_url/update/wrongdownload3.update.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . +--> +<description xmlns="http://openoffice.org/extensions/update/2006" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <identifier value="org.openoffice.legacy.wrongdownload3.oxt"/> + <version value="2.0" /> + <update-download> + <src xlink:href="http://extensions.openoffice.org/testarea/desktop/wrong_url/notavailable/wrongdownload3.oxt" /> + <src xlink:href="http://extensions.openoffice.org/notavailable/" /> + </update-download> +</description> + diff --git a/desktop/test/deployment/update/wrong_url/url1.oxt b/desktop/test/deployment/update/wrong_url/url1.oxt Binary files differnew file mode 100644 index 000000000..41d8522fb --- /dev/null +++ b/desktop/test/deployment/update/wrong_url/url1.oxt diff --git a/desktop/test/deployment/update/wrong_url/url2.oxt b/desktop/test/deployment/update/wrong_url/url2.oxt Binary files differnew file mode 100644 index 000000000..d68e45e5e --- /dev/null +++ b/desktop/test/deployment/update/wrong_url/url2.oxt diff --git a/desktop/test/deployment/update/wrong_url/url3.oxt b/desktop/test/deployment/update/wrong_url/url3.oxt Binary files differnew file mode 100644 index 000000000..80f93b74d --- /dev/null +++ b/desktop/test/deployment/update/wrong_url/url3.oxt diff --git a/desktop/test/deployment/update/wrong_url/wrongdownload1.oxt b/desktop/test/deployment/update/wrong_url/wrongdownload1.oxt Binary files differnew file mode 100644 index 000000000..535ae331a --- /dev/null +++ b/desktop/test/deployment/update/wrong_url/wrongdownload1.oxt diff --git a/desktop/test/deployment/update/wrong_url/wrongdownload2.oxt b/desktop/test/deployment/update/wrong_url/wrongdownload2.oxt Binary files differnew file mode 100644 index 000000000..aafe2c246 --- /dev/null +++ b/desktop/test/deployment/update/wrong_url/wrongdownload2.oxt diff --git a/desktop/test/deployment/update/wrong_url/wrongdownload3.oxt b/desktop/test/deployment/update/wrong_url/wrongdownload3.oxt Binary files differnew file mode 100644 index 000000000..fbdac925a --- /dev/null +++ b/desktop/test/deployment/update/wrong_url/wrongdownload3.oxt diff --git a/desktop/test/deployment/version/readme.txt b/desktop/test/deployment/version/readme.txt new file mode 100644 index 000000000..6135d08a2 --- /dev/null +++ b/desktop/test/deployment/version/readme.txt @@ -0,0 +1,76 @@ +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# This file incorporates work covered by the following license notice: +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed +# with this work for additional information regarding copyright +# ownership. The ASF licenses this file to you under the Apache +# License, Version 2.0 (the "License"); you may not use this file +# except in compliance with the License. You may obtain a copy of +# the License at http://www.apache.org/licenses/LICENSE-2.0 . +# + +There are three extensions in various versions: + +1 version_XXX/plain.oxt has no dependencies and no license. +2a version_XXX/dependency.oxt has an unsatisfied dependency and no license. +2b version_nodependencies_XXX/dependency.oxt is identical to 2a but without the + dependency. +3 version_XXX/license.oxt has no dependencies and a license. + +The different versions are: + +A version_none contains no version element (treated as version "0"). +B version_badelement contains a bad <version val="1"/> (not allowed by the + specification, but treated by the current implementation as version "0"). +C version_badvalue contains a bad <version value="1.a"/> (not allowed by the + specification, but treated by the current implementation as version "1"). +D version_0.0 contains <version value="0.0"/> (same as version "0"). +E version_1.2.3 contains <version value="1.2.3"/>. +F version_1.2.4.7 contains <version value="1.2.4.7"/>. +G version_1.02.4.7.0 contains <version value="1.02.4.7.0"/> (same as version + "1.2.4.7"). +H version_1.2.15.3 contains <version value="1.2.15.3"/>. + +The total order among the various versions is thus + + A = B = D < C < E < F = G < H. + +Things to watch for: + +- If version y of extension e is to be installed and version x < y of + extension e is already installed, then + unopkg add e + will replace x with y. + +- If version y of extension e is to be installed and version x >= y of + extension e is already installed, then + unopkg add e + will fail with an error message. + +- If version y of extension e is to be installed and any version x of + extension e is already installed, then + unopkg add -f e + will replace x with y. + +- If version y of extension e is to be installed and any version x of + extension e is already installed, then + unopkg gui "Add..." + and + soffice "Tools - Package Manager... - Add..." + will query with a dialog whether to replace x with y. The dialog will have + "OK" (replace) preselected if x < y, and "Cancel" otherwise. + +- If replacing an installed version x of an extension e with a version y fails + because y has unsatisfied dependencies, or because y has a license to which the + user does not agree, version x is left installed afterwards. + +- Checking for already installed versions of an extension is only done within a + single layer (unopkg versus unopkg --shared; "My Packages" versus + "OpenOffice Packages" in unopkg gui/soffice), not across layers. diff --git a/desktop/test/deployment/version/version_0.0/dependency.oxt b/desktop/test/deployment/version/version_0.0/dependency.oxt Binary files differnew file mode 100644 index 000000000..30c843225 --- /dev/null +++ b/desktop/test/deployment/version/version_0.0/dependency.oxt diff --git a/desktop/test/deployment/version/version_0.0/license.oxt b/desktop/test/deployment/version/version_0.0/license.oxt Binary files differnew file mode 100644 index 000000000..b994ff71b --- /dev/null +++ b/desktop/test/deployment/version/version_0.0/license.oxt diff --git a/desktop/test/deployment/version/version_0.0/plain.oxt b/desktop/test/deployment/version/version_0.0/plain.oxt Binary files differnew file mode 100644 index 000000000..f156014eb --- /dev/null +++ b/desktop/test/deployment/version/version_0.0/plain.oxt diff --git a/desktop/test/deployment/version/version_1.02.4.7.0/dependency.oxt b/desktop/test/deployment/version/version_1.02.4.7.0/dependency.oxt Binary files differnew file mode 100644 index 000000000..4d75f7076 --- /dev/null +++ b/desktop/test/deployment/version/version_1.02.4.7.0/dependency.oxt diff --git a/desktop/test/deployment/version/version_1.02.4.7.0/license.oxt b/desktop/test/deployment/version/version_1.02.4.7.0/license.oxt Binary files differnew file mode 100644 index 000000000..40938b754 --- /dev/null +++ b/desktop/test/deployment/version/version_1.02.4.7.0/license.oxt diff --git a/desktop/test/deployment/version/version_1.02.4.7.0/plain.oxt b/desktop/test/deployment/version/version_1.02.4.7.0/plain.oxt Binary files differnew file mode 100644 index 000000000..521a2b6c7 --- /dev/null +++ b/desktop/test/deployment/version/version_1.02.4.7.0/plain.oxt diff --git a/desktop/test/deployment/version/version_1.2.15.3/dependency.oxt b/desktop/test/deployment/version/version_1.2.15.3/dependency.oxt Binary files differnew file mode 100644 index 000000000..6f2a301f3 --- /dev/null +++ b/desktop/test/deployment/version/version_1.2.15.3/dependency.oxt diff --git a/desktop/test/deployment/version/version_1.2.15.3/license.oxt b/desktop/test/deployment/version/version_1.2.15.3/license.oxt Binary files differnew file mode 100644 index 000000000..2e2a87575 --- /dev/null +++ b/desktop/test/deployment/version/version_1.2.15.3/license.oxt diff --git a/desktop/test/deployment/version/version_1.2.15.3/plain.oxt b/desktop/test/deployment/version/version_1.2.15.3/plain.oxt Binary files differnew file mode 100644 index 000000000..000f3a144 --- /dev/null +++ b/desktop/test/deployment/version/version_1.2.15.3/plain.oxt diff --git a/desktop/test/deployment/version/version_1.2.3/dependency.oxt b/desktop/test/deployment/version/version_1.2.3/dependency.oxt Binary files differnew file mode 100644 index 000000000..c29663458 --- /dev/null +++ b/desktop/test/deployment/version/version_1.2.3/dependency.oxt diff --git a/desktop/test/deployment/version/version_1.2.3/license.oxt b/desktop/test/deployment/version/version_1.2.3/license.oxt Binary files differnew file mode 100644 index 000000000..9cd80e991 --- /dev/null +++ b/desktop/test/deployment/version/version_1.2.3/license.oxt diff --git a/desktop/test/deployment/version/version_1.2.3/plain.oxt b/desktop/test/deployment/version/version_1.2.3/plain.oxt Binary files differnew file mode 100644 index 000000000..e34264591 --- /dev/null +++ b/desktop/test/deployment/version/version_1.2.3/plain.oxt diff --git a/desktop/test/deployment/version/version_1.2.4.7/dependency.oxt b/desktop/test/deployment/version/version_1.2.4.7/dependency.oxt Binary files differnew file mode 100644 index 000000000..53089e76b --- /dev/null +++ b/desktop/test/deployment/version/version_1.2.4.7/dependency.oxt diff --git a/desktop/test/deployment/version/version_1.2.4.7/license.oxt b/desktop/test/deployment/version/version_1.2.4.7/license.oxt Binary files differnew file mode 100644 index 000000000..e283508d3 --- /dev/null +++ b/desktop/test/deployment/version/version_1.2.4.7/license.oxt diff --git a/desktop/test/deployment/version/version_1.2.4.7/plain.oxt b/desktop/test/deployment/version/version_1.2.4.7/plain.oxt Binary files differnew file mode 100644 index 000000000..d63c79a73 --- /dev/null +++ b/desktop/test/deployment/version/version_1.2.4.7/plain.oxt diff --git a/desktop/test/deployment/version/version_badelement/dependency.oxt b/desktop/test/deployment/version/version_badelement/dependency.oxt Binary files differnew file mode 100644 index 000000000..3cb8faa2e --- /dev/null +++ b/desktop/test/deployment/version/version_badelement/dependency.oxt diff --git a/desktop/test/deployment/version/version_badelement/license.oxt b/desktop/test/deployment/version/version_badelement/license.oxt Binary files differnew file mode 100644 index 000000000..7b2b7730e --- /dev/null +++ b/desktop/test/deployment/version/version_badelement/license.oxt diff --git a/desktop/test/deployment/version/version_badelement/plain.oxt b/desktop/test/deployment/version/version_badelement/plain.oxt Binary files differnew file mode 100644 index 000000000..62267c212 --- /dev/null +++ b/desktop/test/deployment/version/version_badelement/plain.oxt diff --git a/desktop/test/deployment/version/version_badvalue/dependency.oxt b/desktop/test/deployment/version/version_badvalue/dependency.oxt Binary files differnew file mode 100644 index 000000000..7d8103365 --- /dev/null +++ b/desktop/test/deployment/version/version_badvalue/dependency.oxt diff --git a/desktop/test/deployment/version/version_badvalue/license.oxt b/desktop/test/deployment/version/version_badvalue/license.oxt Binary files differnew file mode 100644 index 000000000..b97723ebb --- /dev/null +++ b/desktop/test/deployment/version/version_badvalue/license.oxt diff --git a/desktop/test/deployment/version/version_badvalue/plain.oxt b/desktop/test/deployment/version/version_badvalue/plain.oxt Binary files differnew file mode 100644 index 000000000..f9964ed8f --- /dev/null +++ b/desktop/test/deployment/version/version_badvalue/plain.oxt diff --git a/desktop/test/deployment/version/version_nodependencies_0.0/dependency.oxt b/desktop/test/deployment/version/version_nodependencies_0.0/dependency.oxt Binary files differnew file mode 100644 index 000000000..f156014eb --- /dev/null +++ b/desktop/test/deployment/version/version_nodependencies_0.0/dependency.oxt diff --git a/desktop/test/deployment/version/version_nodependencies_1.02.4.7.0/dependency.oxt b/desktop/test/deployment/version/version_nodependencies_1.02.4.7.0/dependency.oxt Binary files differnew file mode 100644 index 000000000..521a2b6c7 --- /dev/null +++ b/desktop/test/deployment/version/version_nodependencies_1.02.4.7.0/dependency.oxt diff --git a/desktop/test/deployment/version/version_nodependencies_1.2.15.3/dependency.oxt b/desktop/test/deployment/version/version_nodependencies_1.2.15.3/dependency.oxt Binary files differnew file mode 100644 index 000000000..000f3a144 --- /dev/null +++ b/desktop/test/deployment/version/version_nodependencies_1.2.15.3/dependency.oxt diff --git a/desktop/test/deployment/version/version_nodependencies_1.2.3/dependency.oxt b/desktop/test/deployment/version/version_nodependencies_1.2.3/dependency.oxt Binary files differnew file mode 100644 index 000000000..e34264591 --- /dev/null +++ b/desktop/test/deployment/version/version_nodependencies_1.2.3/dependency.oxt diff --git a/desktop/test/deployment/version/version_nodependencies_1.2.4.7/dependency.oxt b/desktop/test/deployment/version/version_nodependencies_1.2.4.7/dependency.oxt Binary files differnew file mode 100644 index 000000000..d63c79a73 --- /dev/null +++ b/desktop/test/deployment/version/version_nodependencies_1.2.4.7/dependency.oxt diff --git a/desktop/test/deployment/version/version_nodependencies_badelement/dependency.oxt b/desktop/test/deployment/version/version_nodependencies_badelement/dependency.oxt Binary files differnew file mode 100644 index 000000000..62267c212 --- /dev/null +++ b/desktop/test/deployment/version/version_nodependencies_badelement/dependency.oxt diff --git a/desktop/test/deployment/version/version_nodependencies_badvalue/dependency.oxt b/desktop/test/deployment/version/version_nodependencies_badvalue/dependency.oxt Binary files differnew file mode 100644 index 000000000..f9964ed8f --- /dev/null +++ b/desktop/test/deployment/version/version_nodependencies_badvalue/dependency.oxt diff --git a/desktop/test/deployment/version/version_nodependencies_none/dependency.oxt b/desktop/test/deployment/version/version_nodependencies_none/dependency.oxt Binary files differnew file mode 100644 index 000000000..fc227b099 --- /dev/null +++ b/desktop/test/deployment/version/version_nodependencies_none/dependency.oxt diff --git a/desktop/test/deployment/version/version_none/dependency.oxt b/desktop/test/deployment/version/version_none/dependency.oxt Binary files differnew file mode 100644 index 000000000..36a1854bf --- /dev/null +++ b/desktop/test/deployment/version/version_none/dependency.oxt diff --git a/desktop/test/deployment/version/version_none/license.oxt b/desktop/test/deployment/version/version_none/license.oxt Binary files differnew file mode 100644 index 000000000..1564c089b --- /dev/null +++ b/desktop/test/deployment/version/version_none/license.oxt diff --git a/desktop/test/deployment/version/version_none/plain.oxt b/desktop/test/deployment/version/version_none/plain.oxt Binary files differnew file mode 100644 index 000000000..fc227b099 --- /dev/null +++ b/desktop/test/deployment/version/version_none/plain.oxt |