summaryrefslogtreecommitdiffstats
path: root/extensions/test/pgp
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/test/pgp')
-rw-r--r--extensions/test/pgp/TestPGP.java95
-rw-r--r--extensions/test/pgp/makefile.mk62
-rw-r--r--extensions/test/pgp/readme.txt33
3 files changed, 190 insertions, 0 deletions
diff --git a/extensions/test/pgp/TestPGP.java b/extensions/test/pgp/TestPGP.java
new file mode 100644
index 000000000..ce719a530
--- /dev/null
+++ b/extensions/test/pgp/TestPGP.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 .
+ */
+
+
+import com.sun.star.bridge.UnoUrlResolver;
+import com.sun.star.bridge.XUnoUrlResolver;
+import com.sun.star.comp.helper.Bootstrap;
+import com.sun.star.connection.XConnection;
+import com.sun.star.connection.XConnector;
+import com.sun.star.container.XSet;
+import com.sun.star.lang.XMultiServiceFactory;
+import com.sun.star.lang.XSingleServiceFactory;
+import com.sun.star.pgp.SimplePGPMailerFactoryReg;
+import com.sun.star.uno.IBridge;
+import com.sun.star.uno.Type;
+import com.sun.star.uno.UnoRuntime;
+import com.sun.star.uno.XInterface;
+import com.sun.star.uno.XNamingService;
+
+
+
+public class TestPGP {
+
+
+ static void doSomething(Object r) throws com.sun.star.uno.Exception, Exception {
+ XNamingService rName = UnoRuntime.queryInterface(XNamingService.class, r);
+
+ if(rName != null) {
+ System.err.println("got the remote naming service !");
+ Object rXsmgr = rName.getRegisteredObject("StarOffice.ServiceManager");
+
+ XMultiServiceFactory rSmgr = UnoRuntime.queryInterface(XMultiServiceFactory.class, rXsmgr);
+ if(rSmgr != null) {
+ System.err.println("got the remote service manager !");
+ }
+
+ XSet set= UnoRuntime.queryInterface(XSet.class, rSmgr);
+ if( set == null) {
+ System.err.println(" couldn't get XSet from ServiceFactory");
+ return;
+ }
+ SimplePGPMailerFactoryReg mailerReg= new SimplePGPMailerFactoryReg();
+ XSingleServiceFactory factory= mailerReg.getServiceFactory(
+ "com.sun.star.pgp.SimplePGPMailerImpl", rSmgr, null, null);
+
+ if( factory == null) {
+ System.err.println("couldn't create PGP factory !");
+ return;
+ }
+ set.insert(factory );
+ System.err.println("PGP factory inserted into service manager");
+
+ }
+ }
+
+
+
+ public static void main(String argv[]) throws Exception {
+ if(argv.length != 1) {
+ System.err.println("usage : testoffice protocol:host:port");
+ System.exit(-1);
+ }
+
+ XUnoUrlResolver resolver = UnoUrlResolver.create(Bootstrap.createInitialComponentContext(null));
+
+ XConnector xConnector = UnoRuntime.queryInterface(XConnector.class, resolver.resolve("com.sun.star.connection.Connector"));
+ XConnection xConnection = xConnector.connect(argv[0]);
+
+ String rootOid = "classic_uno";
+ IBridge iBridge = UnoRuntime.getBridgeByName("java", null, "remote", null, new Object[]{"iiop", xConnection, null});
+
+ Object rInitialObject = iBridge.mapInterfaceFrom(rootOid, new Type(XInterface.class));
+
+ if(rInitialObject != null) {
+ System.err.println("got the remote object");
+ doSomething(rInitialObject);
+ }
+ }
+}
+
diff --git a/extensions/test/pgp/makefile.mk b/extensions/test/pgp/makefile.mk
new file mode 100644
index 000000000..d5805fbe1
--- /dev/null
+++ b/extensions/test/pgp/makefile.mk
@@ -0,0 +1,62 @@
+#
+# 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 := extensions
+PACKAGE :=
+TARGET := test_com_sun_star_pgp
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+# Files --------------------------------------------------------
+
+APPLICATRDB := $(SOLARBINDIR)$/applicat.rdb
+RDB := $(APPLICATRDB)
+
+JARFILES= jurt.jar
+
+GENJAVACLASSFILES= \
+ $(CLASSDIR)$/com$/sun$/star$/beans$/PropertyValue.class \
+ $(CLASSDIR)$/com$/sun$/star$/beans$/PropertyState.class \
+ $(CLASSDIR)$/com$/sun$/star$/container$/XSet.class \
+
+JAVACLASSFILES= \
+ $(CLASSDIR)$/$(PACKAGE)$/TestPGP.class
+
+
+TYPES={$(subst,.class, $(subst,$/,. $(subst,$(CLASSDIR)$/,-T $(GENJAVACLASSFILES))))}
+GENJAVAFILES = {$(subst,.class,.java $(subst,$/class, $(GENJAVACLASSFILES)))}
+JAVAFILES= $(subst,$(CLASSDIR)$/$(PACKAGE)$/, $(subst,.class,.java $(JAVACLASSFILES))) $(GENJAVAFILES)
+
+# --- Targets ------------------------------------------------------
+
+.IF "$(depend)" == ""
+ALL : $(GENJAVAFILES) ALLTAR
+.ELSE
+ALL: ALLDEP
+.ENDIF
+
+.INCLUDE : target.mk
+
+$(GENJAVAFILES) : $(RDB)
+ javamaker @$(mktmp -BUCR -O$(OUT) $(TYPES) $(RDB))
+
+$(JAVACLASSFILES) : $(GENJAVAFILES)
diff --git a/extensions/test/pgp/readme.txt b/extensions/test/pgp/readme.txt
new file mode 100644
index 000000000..8d4868770
--- /dev/null
+++ b/extensions/test/pgp/readme.txt
@@ -0,0 +1,33 @@
+The program TestPGP instantiates a SimplePGPMailerFactory and adds
+ it to the ServiceManager obtained from a running StarOffice.
+Then PGP can be used from within StarOffice.
+
+Prerequisites:
+StarOffice needs an entry in Office/user/sofficerc under the Common
+ section:
+
+ Port2=socket:hamburg-11070:1111 // old style
+as of 569 m
+Connection=socket,hamburg-11070,port=1111;iiop;
+
+Please note the semicolons!
+
+ hamburg-11070 is the host running the office and 1111 is a
+ freely choosable port number.
+
+
+ For the program to run make sure that the office has access
+ to classes.zip, libreoffice.jar, pgp.jar and swingall.jar.
+
+ Therefore do the necessary entries in
+ Office/user/config/javarc
+ under SystemClasspath.
+
+There is a bug with jdk1.1.8, therefore use 1.2 instead.
+
+The TestPGP is called without ;iiop; :
+
+java TestPGP "socket,host=localhost,port=1111"
+
+
+