From 940b4d1848e8c70ab7642901a68594e8016caffc Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 27 Apr 2024 18:51:28 +0200 Subject: Adding upstream version 1:7.0.4. Signed-off-by: Daniel Baumann --- .../source/com/sun/star/cmp/MyPersistObject.java | 345 +++++++++++++++++++++ .../qadevlibs/source/com/sun/star/cmp/makefile.mk | 55 ++++ .../qadevlibs/source/com/sun/star/cmp/manifest | 1 + qadevOOo/testdocs/qadevlibs/source/test/Job.java | 104 +++++++ .../testdocs/qadevlibs/source/test/makefile.mk | 55 ++++ qadevOOo/testdocs/qadevlibs/source/test/manifest | 2 + 6 files changed, 562 insertions(+) create mode 100644 qadevOOo/testdocs/qadevlibs/source/com/sun/star/cmp/MyPersistObject.java create mode 100644 qadevOOo/testdocs/qadevlibs/source/com/sun/star/cmp/makefile.mk create mode 100644 qadevOOo/testdocs/qadevlibs/source/com/sun/star/cmp/manifest create mode 100644 qadevOOo/testdocs/qadevlibs/source/test/Job.java create mode 100644 qadevOOo/testdocs/qadevlibs/source/test/makefile.mk create mode 100644 qadevOOo/testdocs/qadevlibs/source/test/manifest (limited to 'qadevOOo/testdocs/qadevlibs/source') diff --git a/qadevOOo/testdocs/qadevlibs/source/com/sun/star/cmp/MyPersistObject.java b/qadevOOo/testdocs/qadevlibs/source/com/sun/star/cmp/MyPersistObject.java new file mode 100644 index 000000000..7ce7a80b6 --- /dev/null +++ b/qadevOOo/testdocs/qadevlibs/source/com/sun/star/cmp/MyPersistObject.java @@ -0,0 +1,345 @@ +/* + * 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.cmp; + +import com.sun.star.io.XPersistObject; +import com.sun.star.io.XObjectInputStream; +import com.sun.star.io.XObjectOutputStream; +import com.sun.star.beans.XPropertySet; +import com.sun.star.beans.XPropertySetInfo; +import com.sun.star.beans.Property; +import com.sun.star.beans.XPropertyChangeListener; +import com.sun.star.beans.XVetoableChangeListener; +import com.sun.star.lang.XMultiServiceFactory; +import com.sun.star.lang.XSingleServiceFactory; +import com.sun.star.lang.XServiceInfo; +import com.sun.star.uno.XInterface; +import com.sun.star.lang.XTypeProvider; +import com.sun.star.registry.XRegistryKey; +import com.sun.star.comp.loader.FactoryHelper; +import com.sun.star.uno.Type; + +/** + * Class MyPersistObject implements an XPersistObject, XServiceInfo, + * XTypeProvider and XPropertySet. + * + * Warning: In XPropertySet only the following methods that are + * used for testing are really implemented: + * + * - public XPropertySetInfo getPropertySetInfo() + * - public void setPropertyValue(String property, Object value) + * - public Object getPropertyValue(String property) + */ +public class MyPersistObject implements XPersistObject, XTypeProvider, + XServiceInfo, XPropertySet { + + private class MyPropertySetInfo implements XPropertySetInfo { + Property[] _props; + public MyPropertySetInfo(Property[] props) { + _props = props; + } + public Property[] getProperties() { + return _props; + } + public Property getPropertyByName(String name) { + int i = getPropertyIndexByName(name); + return i>0?_props[i]:null; + } + public int getPropertyIndexByName(String name) { + for ( int i=0; i<_props.length; i++ ) + if (name.equals(_props[i].Name)) + return i; + return -1; + } + public boolean hasPropertyByName(String name) { + int i = getPropertyIndexByName(name); + return i>0; + } + } + + private static final boolean verbose = false; + + public static final String __serviceName = + "com.sun.star.cmp.PersistObject"; + public static final String __implName = + "com.sun.star.cmp.MyPersistObject"; + + // lots of props to write + Property[] props; + private byte by; + private int i; + private char c; + private double d; + private float f; + private short s; + private String st; + // property set info + XPropertySetInfo xInfo; + + /** + * Constructor: sets all properties + **/ + public MyPersistObject() { + int prop_count = 7; + props = new Property[prop_count]; + for (int i=0; iJavaLoader + *

+ * @return returns a XSingleServiceFactory for creating the component + * @param implName the name of the implementation for which a service is desired + * @param multiFactory the service manager to be used if needed + * @param regKey the registryKey + * @see com.sun.star.comp.loader.JavaLoader + */ + public static XSingleServiceFactory __getServiceFactory(String implName, + XMultiServiceFactory multiFactory, XRegistryKey regKey) + { + XSingleServiceFactory xSingleServiceFactory = null; + + if (implName.equals(MyPersistObject.class.getName())) + xSingleServiceFactory = FactoryHelper.getServiceFactory( + MyPersistObject.class, __serviceName, multiFactory, regKey); + + return xSingleServiceFactory; + } + + /** + * Writes the service information into the given registry key. + * This method is called by the JavaLoader + *

+ * @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 FactoryHelper.writeRegistryServiceInfo(MyPersistObject.class.getName(), + __serviceName, regKey); + } + + + + +} // finish class MyPersistObject + + diff --git a/qadevOOo/testdocs/qadevlibs/source/com/sun/star/cmp/makefile.mk b/qadevOOo/testdocs/qadevlibs/source/com/sun/star/cmp/makefile.mk new file mode 100644 index 000000000..761a9bbca --- /dev/null +++ b/qadevOOo/testdocs/qadevlibs/source/com/sun/star/cmp/makefile.mk @@ -0,0 +1,55 @@ +# +# 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 = MyPersistObjectImpl +TARGET = MyPersistObjectImpl +PACKAGE = com$/sun$/star$/cmp + +# --- Settings ----------------------------------------------------- +.INCLUDE: settings.mk + +#----- compile .java files ----------------------------------------- + +JARFILES = ridl.jar unoil.jar jurt.jar juh.jar java_uno.jar +JAVAFILES = MyPersistObject.java +JAVACLASSFILES = $(CLASSDIR)$/$(PACKAGE)$/MyPersistObject.class + +#----- make a jar from compiled files ------------------------------ + +MAXLINELENGTH = 100000 + +JARCLASSDIRS = com/sun/star/cmp +JARTARGET = $(TARGET).jar +JARCOMPRESS = TRUE +CUSTOMMANIFESTFILE = manifest + + +# --- Files -------------------------------------------------------- + +# --- Targets ------------------------------------------------------ + +.IF "$(depend)" == "" +ALL : \ + ALLTAR +.ELSE +ALL: ALLDEP +.ENDIF + +.INCLUDE : target.mk + diff --git a/qadevOOo/testdocs/qadevlibs/source/com/sun/star/cmp/manifest b/qadevOOo/testdocs/qadevlibs/source/com/sun/star/cmp/manifest new file mode 100644 index 000000000..e52cdc9f7 --- /dev/null +++ b/qadevOOo/testdocs/qadevlibs/source/com/sun/star/cmp/manifest @@ -0,0 +1 @@ +RegistrationClassName: com.sun.star.cmp.MyPersistObject diff --git a/qadevOOo/testdocs/qadevlibs/source/test/Job.java b/qadevOOo/testdocs/qadevlibs/source/test/Job.java new file mode 100644 index 000000000..40d0c09c3 --- /dev/null +++ b/qadevOOo/testdocs/qadevlibs/source/test/Job.java @@ -0,0 +1,104 @@ +/* + * 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 test; + +import com.sun.star.task.XJob; +import com.sun.star.lang.XSingleServiceFactory; +import com.sun.star.beans.*; +import com.sun.star.container.*; +import com.sun.star.lang.XServiceInfo; +import com.sun.star.lang.XTypeProvider; +import com.sun.star.uno.Type; +import com.sun.star.lang.XMultiServiceFactory; +import com.sun.star.registry.XRegistryKey; +import com.sun.star.comp.loader.FactoryHelper; + +public class Job { + + public static class _Implementation implements XServiceInfo, XTypeProvider, + XJob, XNamed { + private static final String __serviceName = "test.Job"; + Object oDoc = null; + String actionType = null; + String actionParm = null; + + public _Implementation(XMultiServiceFactory xMSF) { + } + + // XServiceInfo + public String getImplementationName() + throws com.sun.star.uno.RuntimeException { + return getClass().getName(); + } + + public boolean supportsService(String serviceName) + throws com.sun.star.uno.RuntimeException { + return __serviceName.equals(serviceName); + } + + public String[] getSupportedServiceNames() + throws com.sun.star.uno.RuntimeException { + return new String[] { __serviceName }; + } + + private static int executed = 0; + + public Object execute(NamedValue[] args) { + executed++; + + return null; + } + + public String getName() { + return "" + executed; + } + + public void setName(String n) { + } + + public byte[] getImplementationId() { + return new byte[0]; + } + + public Type[] getTypes() { + Class interfaces[] = getClass().getInterfaces(); + Type types[] = new Type[interfaces.length]; + for (int i = 0; i < interfaces.length; ++i) + types[i] = new Type(interfaces[i]); + return types; + } + + } + + public static XSingleServiceFactory __getServiceFactory( + XMultiServiceFactory multiFactory, XRegistryKey regKey) { + XSingleServiceFactory xSingleServiceFactory = null; + xSingleServiceFactory = FactoryHelper.getServiceFactory( + _Implementation.class, _Implementation.__serviceName, + multiFactory, regKey); + return xSingleServiceFactory; + } + + public static boolean __writeRegistryServiceInfo(XRegistryKey regKey) { + boolean result = true; + result = FactoryHelper.writeRegistryServiceInfo( + _Implementation.class.getName(), _Implementation.__serviceName, + regKey); + return result; + } +} diff --git a/qadevOOo/testdocs/qadevlibs/source/test/makefile.mk b/qadevOOo/testdocs/qadevlibs/source/test/makefile.mk new file mode 100644 index 000000000..27115c251 --- /dev/null +++ b/qadevOOo/testdocs/qadevlibs/source/test/makefile.mk @@ -0,0 +1,55 @@ +# +# 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 = JobExecutor +TARGET = $(PRJNAME) +PACKAGE = test + +# --- Settings ----------------------------------------------------- +.INCLUDE: settings.mk + +#----- compile .java files ----------------------------------------- + +JARFILES = ridl.jar unoil.jar jurt.jar juh.jar java_uno.jar OOoRunner.jar +JAVAFILES = Job.java +JAVACLASSFILES = $(CLASSDIR)$/$(PACKAGE)$/Job.class + +#----- make a jar from compiled files ------------------------------ + +MAXLINELENGTH = 100000 + +JARCLASSDIRS = test +JARTARGET = $(TARGET).jar +JARCOMPRESS = TRUE +CUSTOMMANIFESTFILE = manifest + + +# --- Files -------------------------------------------------------- + +# --- Targets ------------------------------------------------------ + +.IF "$(depend)" == "" +ALL : \ + ALLTAR +.ELSE +ALL: ALLDEP +.ENDIF + +.INCLUDE : target.mk + diff --git a/qadevOOo/testdocs/qadevlibs/source/test/manifest b/qadevOOo/testdocs/qadevlibs/source/test/manifest new file mode 100644 index 000000000..02f702337 --- /dev/null +++ b/qadevOOo/testdocs/qadevlibs/source/test/manifest @@ -0,0 +1,2 @@ +RegistrationClassName: test.Job + \ No newline at end of file -- cgit v1.2.3