summaryrefslogtreecommitdiffstats
path: root/cppuhelper/qa/propertysetmixin/JavaSupplier.java
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--cppuhelper/qa/propertysetmixin/JavaSupplier.java308
1 files changed, 308 insertions, 0 deletions
diff --git a/cppuhelper/qa/propertysetmixin/JavaSupplier.java b/cppuhelper/qa/propertysetmixin/JavaSupplier.java
new file mode 100644
index 000000000..a82e2bd7f
--- /dev/null
+++ b/cppuhelper/qa/propertysetmixin/JavaSupplier.java
@@ -0,0 +1,308 @@
+/*
+ * 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.cppuhelper.propertysetmixin.comp;
+
+import com.sun.star.beans.Ambiguous;
+import com.sun.star.beans.Defaulted;
+import com.sun.star.beans.Optional;
+import com.sun.star.beans.UnknownPropertyException;
+import com.sun.star.beans.PropertyValue;
+import com.sun.star.beans.PropertyVetoException;
+import com.sun.star.beans.XFastPropertySet;
+import com.sun.star.beans.XPropertyAccess;
+import com.sun.star.beans.XPropertyChangeListener;
+import com.sun.star.beans.XPropertySet;
+import com.sun.star.beans.XPropertySetInfo;
+import com.sun.star.beans.XVetoableChangeListener;
+import com.sun.star.comp.loader.FactoryHelper;
+import com.sun.star.lang.WrappedTargetException;
+import com.sun.star.lang.XComponent;
+import com.sun.star.lang.XEventListener;
+import com.sun.star.lang.XMultiServiceFactory;
+import com.sun.star.lang.XSingleServiceFactory;
+import com.sun.star.lib.uno.helper.WeakBase;
+import com.sun.star.lib.uno.helper.PropertySetMixin;
+import com.sun.star.registry.XRegistryKey;
+import com.sun.star.uno.Any;
+import com.sun.star.uno.IQueryInterface;
+import com.sun.star.uno.Type;
+import com.sun.star.uno.XComponentContext;
+import test.cppuhelper.propertysetmixin.XSupplier;
+import test.cppuhelper.propertysetmixin.XTest3;
+
+public final class JavaSupplier extends WeakBase implements XSupplier {
+ public JavaSupplier(XComponentContext context) {
+ this.context = context;
+ }
+
+ public XComponent getEmpty1() { return new Empty1(); }
+
+ public XComponent getEmpty2() { return new Empty2(); }
+
+ public XTest3 getFull() { return new Full(); }
+
+ public static XSingleServiceFactory __getServiceFactory(
+ String implName, XMultiServiceFactory multiFactory, XRegistryKey regKey)
+ {
+ return implName.equals(implementationName)
+ ? FactoryHelper.getServiceFactory(
+ JavaSupplier.class, serviceName, multiFactory, regKey)
+ : null;
+ }
+
+ private static final String implementationName
+ = JavaSupplier.class.getName();
+ private static final String serviceName
+ = "test.cppuhelper.propertysetmixin.JavaSupplier";
+
+ private final class Empty1 extends WeakBase implements XComponent {
+ public Empty1() {}
+
+ public void dispose() {
+ prop.dispose();
+ }
+
+ public void addEventListener(XEventListener listener) {}
+
+ public void removeEventListener(XEventListener listener) {}
+
+ private final PropertySetMixin prop = new PropertySetMixin(
+ context, this, new Type(XComponent.class), null);
+ }
+
+ private final class Empty2 extends WeakBase
+ implements XComponent, XPropertySet, XFastPropertySet, XPropertyAccess
+ {
+ public Empty2() {}
+
+ public void dispose() {
+ prop.dispose();
+ }
+
+ public void addEventListener(XEventListener listener) {}
+
+ public void removeEventListener(XEventListener listener) {}
+
+ public com.sun.star.beans.XPropertySetInfo getPropertySetInfo() {
+ return prop.getPropertySetInfo();
+ }
+
+ public void setPropertyValue(String propertyName, Object value)
+ throws UnknownPropertyException, PropertyVetoException,
+ com.sun.star.lang.IllegalArgumentException, WrappedTargetException
+ {
+ prop.setPropertyValue(propertyName, value);
+ }
+
+ public Object getPropertyValue(String propertyName)
+ throws UnknownPropertyException, WrappedTargetException
+ {
+ return prop.getPropertyValue(propertyName);
+ }
+
+ public void addPropertyChangeListener(
+ String propertyName, XPropertyChangeListener listener)
+ throws UnknownPropertyException, WrappedTargetException
+ {
+ prop.addPropertyChangeListener(propertyName, listener);
+ }
+
+ public void removePropertyChangeListener(
+ String propertyName, XPropertyChangeListener listener)
+ throws UnknownPropertyException, WrappedTargetException
+ {
+ prop.removePropertyChangeListener(propertyName, listener);
+ }
+
+ public void addVetoableChangeListener(
+ String propertyName, XVetoableChangeListener listener)
+ throws UnknownPropertyException, WrappedTargetException
+ {
+ prop.addVetoableChangeListener(propertyName, listener);
+ }
+
+ public void removeVetoableChangeListener(
+ String propertyName, XVetoableChangeListener listener)
+ throws UnknownPropertyException, WrappedTargetException
+ {
+ prop.removeVetoableChangeListener(propertyName, listener);
+ }
+
+ public void setFastPropertyValue(int handle, Object value)
+ throws UnknownPropertyException, PropertyVetoException,
+ com.sun.star.lang.IllegalArgumentException, WrappedTargetException
+ {
+ prop.setFastPropertyValue(handle, value);
+ }
+
+ public Object getFastPropertyValue(int handle)
+ throws UnknownPropertyException, WrappedTargetException
+ {
+ return prop.getFastPropertyValue(handle);
+ }
+
+ public PropertyValue[] getPropertyValues() {
+ return prop.getPropertyValues();
+ }
+
+ public void setPropertyValues(PropertyValue[] props)
+ throws UnknownPropertyException, PropertyVetoException,
+ com.sun.star.lang.IllegalArgumentException, WrappedTargetException
+ {
+ prop.setPropertyValues(props);
+ }
+
+ private final PropertySetMixin prop = new PropertySetMixin(
+ context, this, new Type(XComponent.class), null);
+ }
+
+ private final class Full extends WeakBase
+ implements XTest3, XPropertySet, XFastPropertySet, XPropertyAccess
+ {
+ public Full() {}
+
+ public synchronized int getFirst() {
+ return a1;
+ }
+
+ public void setFirst(int value) {
+ prop.prepareSet("First", null);
+ synchronized (this) {
+ a1 = value;
+ }
+ }
+
+ public synchronized Ambiguous getSecond()
+ throws UnknownPropertyException
+ {
+ return a2;
+ }
+
+ public void setSecond(Ambiguous value)
+ throws PropertyVetoException, UnknownPropertyException
+ {
+ PropertySetMixin.BoundListeners l
+ = new PropertySetMixin.BoundListeners();
+ prop.prepareSet(
+ "Second", Any.VOID,
+ (((Optional) ((Defaulted) value.Value).Value).IsPresent
+ ? ((Optional) ((Defaulted) value.Value).Value).Value
+ : Any.VOID),
+ l);
+ synchronized (this) {
+ a2 = value;
+ }
+ l.notifyListeners();
+ }
+
+ public int getThird() throws UnknownPropertyException {
+ throw new UnknownPropertyException("Third", this);
+ }
+
+ public void setThird(int value) throws UnknownPropertyException {
+ throw new UnknownPropertyException("Third", this);
+ }
+
+ public int getFourth() throws UnknownPropertyException {
+ throw new UnknownPropertyException("Fourth", this);
+ }
+
+ public void setFourth(int value) throws UnknownPropertyException {
+ throw new UnknownPropertyException("Fourth", this);
+ }
+
+ public com.sun.star.beans.XPropertySetInfo getPropertySetInfo() {
+ return prop.getPropertySetInfo();
+ }
+
+ public void setPropertyValue(String propertyName, Object value)
+ throws UnknownPropertyException, PropertyVetoException,
+ com.sun.star.lang.IllegalArgumentException, WrappedTargetException
+ {
+ prop.setPropertyValue(propertyName, value);
+ }
+
+ public Object getPropertyValue(String propertyName)
+ throws UnknownPropertyException, WrappedTargetException
+ {
+ return prop.getPropertyValue(propertyName);
+ }
+
+ public void addPropertyChangeListener(
+ String propertyName, XPropertyChangeListener listener)
+ throws UnknownPropertyException, WrappedTargetException
+ {
+ prop.addPropertyChangeListener(propertyName, listener);
+ }
+
+ public void removePropertyChangeListener(
+ String propertyName, XPropertyChangeListener listener)
+ throws UnknownPropertyException, WrappedTargetException
+ {
+ prop.removePropertyChangeListener(propertyName, listener);
+ }
+
+ public void addVetoableChangeListener(
+ String propertyName, XVetoableChangeListener listener)
+ throws UnknownPropertyException, WrappedTargetException
+ {
+ prop.addVetoableChangeListener(propertyName, listener);
+ }
+
+ public void removeVetoableChangeListener(
+ String propertyName, XVetoableChangeListener listener)
+ throws UnknownPropertyException, WrappedTargetException
+ {
+ prop.removeVetoableChangeListener(propertyName, listener);
+ }
+
+ public void setFastPropertyValue(int handle, Object value)
+ throws UnknownPropertyException, PropertyVetoException,
+ com.sun.star.lang.IllegalArgumentException, WrappedTargetException
+ {
+ prop.setFastPropertyValue(handle, value);
+ }
+
+ public Object getFastPropertyValue(int handle)
+ throws UnknownPropertyException, WrappedTargetException
+ {
+ return prop.getFastPropertyValue(handle);
+ }
+
+ public PropertyValue[] getPropertyValues() {
+ return prop.getPropertyValues();
+ }
+
+ public void setPropertyValues(PropertyValue[] props)
+ throws UnknownPropertyException, PropertyVetoException,
+ com.sun.star.lang.IllegalArgumentException, WrappedTargetException
+ {
+ prop.setPropertyValues(props);
+ }
+
+ private final PropertySetMixin prop = new PropertySetMixin(
+ context, this, new Type(XTest3.class), new String[] { "Third" });
+
+ private int a1 = 0;
+ private Ambiguous a2 = new Ambiguous(
+ new Defaulted(new Optional(), true), false);
+ }
+
+ private final XComponentContext context;
+}