summaryrefslogtreecommitdiffstats
path: root/kdejava/koala/test/dcop
diff options
context:
space:
mode:
authortoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
committertoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
commit90825e2392b2d70e43c7a25b8a3752299a933894 (patch)
treee33aa27f02b74604afbfd0ea4f1cfca8833d882a /kdejava/koala/test/dcop
downloadtdebindings-90825e2392b2d70e43c7a25b8a3752299a933894.tar.gz
tdebindings-90825e2392b2d70e43c7a25b8a3752299a933894.zip
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebindings@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kdejava/koala/test/dcop')
-rw-r--r--kdejava/koala/test/dcop/JavaDCOPObject.java45
-rw-r--r--kdejava/koala/test/dcop/README28
-rw-r--r--kdejava/koala/test/dcop/Test.java30
3 files changed, 103 insertions, 0 deletions
diff --git a/kdejava/koala/test/dcop/JavaDCOPObject.java b/kdejava/koala/test/dcop/JavaDCOPObject.java
new file mode 100644
index 00000000..8b97efaa
--- /dev/null
+++ b/kdejava/koala/test/dcop/JavaDCOPObject.java
@@ -0,0 +1,45 @@
+import org.kde.koala.*;
+import org.kde.qt.*;
+import java.util.*;
+import java.io.*;
+
+public class JavaDCOPObject extends DCOPObject{
+ public JavaDCOPObject(){
+ super("JavaDCOPObject");
+ }
+ public ArrayList functions(){
+ ArrayList operations = new ArrayList();
+ operations.add("QString myOperation()");
+ return operations;
+ }
+ public ArrayList interfaces(){
+ ArrayList list = new ArrayList();
+ list.add("JavaDCOPObject");
+ return list;
+ }
+ public DCOPAnswer javaProcess( String fun, byte[] data){
+ DCOPAnswer answer = new DCOPAnswer();
+ try{
+ if("myOperation()".equals(fun)){
+ answer.setReplyType("QString");
+ answer.setSucces(true);
+
+ ByteArrayOutputStream stream = new ByteArrayOutputStream();
+ DataOutputStream os = new DataOutputStream(stream);
+ Marchaller.write_QString(os, this.myOperation());
+ answer.setReplyData(stream.toByteArray());
+ return answer;
+ } else{
+ return answer;
+ }
+ }catch(IOException ioe){
+ ioe.printStackTrace();
+ return answer;
+ }
+ }
+
+ public String myOperation(){
+ return "test from Java";
+ }
+
+}
diff --git a/kdejava/koala/test/dcop/README b/kdejava/koala/test/dcop/README
new file mode 100644
index 00000000..3143c6ea
--- /dev/null
+++ b/kdejava/koala/test/dcop/README
@@ -0,0 +1,28 @@
+This directory contains a test for using a DCOPObject written Java.
+
+The java DCOP object is in JavaDCOPObject.java
+The test app is in Test.java
+
+
+To test it, you should do the following:
+
+set your CLASSPATH (qtjava.jar & koala.jar)
+set your LD_LIBRARY_PATH (${KDEDIR}/lib
+
+compile it (javac *.java)
+$javac *.java
+
+run it
+$java Test
+
+open kdcop and look voor a program called "JavaTest"
+open it and the JavaDCOPObjet appears. The JavaDCOPObject contains one
+operation called myOperation. If you select it and run it, you should see 'test from Java'
+
+You can quit the java program by calling quit() on the application dcop object! (or just hit ctrl-c)
+
+
+Note that the JavaDCOPObject implements javaProcess(), interfaces() and functions().
+These should be generated, but for the timebeing this is done manually.
+
+
diff --git a/kdejava/koala/test/dcop/Test.java b/kdejava/koala/test/dcop/Test.java
new file mode 100644
index 00000000..1117bf87
--- /dev/null
+++ b/kdejava/koala/test/dcop/Test.java
@@ -0,0 +1,30 @@
+import org.kde.qt.*;
+import org.kde.koala.*;
+
+public class Test{
+ static String description = "DCOP test application for Java";
+
+
+ /**
+ * test the DCOP stuff.
+ *
+ * This test doesn't simply construct a DCOPClient, because
+ * dcop needs the eventloop (app.exec())
+ */
+ public static void main(String[] argv){
+ KAboutData aboutData = new KAboutData( "test", "Test",
+ "0.1", description, KAboutData.License_GPL,
+ "(C) 2002 Gert-Jan van der Heiden");
+ KCmdLineArgs.init( argv, aboutData );
+
+ KApplication app = new KApplication();
+ app.dcopClient().registerAs("JavaTest", false);
+ JavaDCOPObject object = new JavaDCOPObject();
+ app.exec();
+ }
+
+ static{
+ qtjava.initialize();
+ kdejava.initialize();
+ }
+}