Author: remi
Date: 2009-03-31 16:06:14 +0200 (Tue, 31 Mar 2009)
New Revision: 4293

Added:
   
software_suite_v2/software/development_tools/tuxdroid-gadget-java-kit/branches/0.0.2/tuxdroid-gadget-java-kit/sources/com/kysoh/tuxdroid/gadget/framework/gadget/StdInComListener.java
Modified:
   
software_suite_v2/software/development_tools/tuxdroid-gadget-java-kit/branches/0.0.2/tuxdroid-gadget-java-kit/sources/com/kysoh/tuxdroid/gadget/framework/gadget/SimpleGadget.java
   
software_suite_v2/software/development_tools/tuxdroid-gadget-java-kit/branches/0.0.2/tuxdroid-gadget-java-kit/sources/com/kysoh/tuxdroid/gadget/framework/gadget/StdInCom.java
Log:
* forgot to implement a listener for the framework stop gadget event ...

Modified: 
software_suite_v2/software/development_tools/tuxdroid-gadget-java-kit/branches/0.0.2/tuxdroid-gadget-java-kit/sources/com/kysoh/tuxdroid/gadget/framework/gadget/SimpleGadget.java
===================================================================
--- 
software_suite_v2/software/development_tools/tuxdroid-gadget-java-kit/branches/0.0.2/tuxdroid-gadget-java-kit/sources/com/kysoh/tuxdroid/gadget/framework/gadget/SimpleGadget.java
  2009-03-31 13:57:18 UTC (rev 4292)
+++ 
software_suite_v2/software/development_tools/tuxdroid-gadget-java-kit/branches/0.0.2/tuxdroid-gadget-java-kit/sources/com/kysoh/tuxdroid/gadget/framework/gadget/SimpleGadget.java
  2009-03-31 14:06:14 UTC (rev 4293)
@@ -46,6 +46,26 @@
        /** configuration. */
        private CONFIGURATION configuration;
        private StdInCom stdInCom = null;
+       
+       /**
+        * Class which implements the Stdin pipe listener.
+        */
+       class StdInComObserver implements StdInComListener
+       {
+               /**
+                * Event on stdin stopped event.
+                */
+               public void stopped()
+               {
+                       try
+                       {
+                               SimpleGadget.this.onGadgetStop();
+                       } catch (Throwable e)
+                       {
+                               SimpleGadget.this.throwError(e);
+                       }
+               }
+       }
 
        /**
         * @return the configuration
@@ -170,6 +190,8 @@
                        if (this.configuration.isDaemon())
                        {
                                stdInCom = new StdInCom();
+                               StdInComObserver stdInComObserver = new 
StdInComObserver();
+                               stdInCom.addListener(stdInComObserver);
                                stdInCom.start();
                        }
                        start();
@@ -227,7 +249,6 @@
                {
                        this.stdInCom.stopPipe();
                }
-               
                try {
                        this.onGadgetStop();
                } catch (Throwable e) {

Modified: 
software_suite_v2/software/development_tools/tuxdroid-gadget-java-kit/branches/0.0.2/tuxdroid-gadget-java-kit/sources/com/kysoh/tuxdroid/gadget/framework/gadget/StdInCom.java
===================================================================
--- 
software_suite_v2/software/development_tools/tuxdroid-gadget-java-kit/branches/0.0.2/tuxdroid-gadget-java-kit/sources/com/kysoh/tuxdroid/gadget/framework/gadget/StdInCom.java
      2009-03-31 13:57:18 UTC (rev 4292)
+++ 
software_suite_v2/software/development_tools/tuxdroid-gadget-java-kit/branches/0.0.2/tuxdroid-gadget-java-kit/sources/com/kysoh/tuxdroid/gadget/framework/gadget/StdInCom.java
      2009-03-31 14:06:14 UTC (rev 4293)
@@ -30,7 +30,17 @@
 {
        private boolean isRun = false;
        private Object runMutex = new Object();
+       private StdInComListener stdInComListener = null;
        
+       /**
+        * Add a listener.
+        * @param StdInComListener Listener.
+        */
+       public void addListener(StdInComListener listener)
+       {
+               stdInComListener = listener;
+       }
+       
        /*
         * Set the run state of the communication handling.
         */
@@ -109,6 +119,10 @@
                        }
                        if (rcvLine.toLowerCase().startsWith("stop"))
                        {
+                               if (stdInComListener != null)
+                               {
+                                       stdInComListener.stopped();
+                               }
                                this.setRun(false);
                        }
                        try {

Added: 
software_suite_v2/software/development_tools/tuxdroid-gadget-java-kit/branches/0.0.2/tuxdroid-gadget-java-kit/sources/com/kysoh/tuxdroid/gadget/framework/gadget/StdInComListener.java
===================================================================
--- 
software_suite_v2/software/development_tools/tuxdroid-gadget-java-kit/branches/0.0.2/tuxdroid-gadget-java-kit/sources/com/kysoh/tuxdroid/gadget/framework/gadget/StdInComListener.java
                              (rev 0)
+++ 
software_suite_v2/software/development_tools/tuxdroid-gadget-java-kit/branches/0.0.2/tuxdroid-gadget-java-kit/sources/com/kysoh/tuxdroid/gadget/framework/gadget/StdInComListener.java
      2009-03-31 14:06:14 UTC (rev 4293)
@@ -0,0 +1,28 @@
+/* This file is part of "TuxDroid Gadget Java Kit" library.
+ *    Copyright 2009, kysoh
+ *    Author : Remi Jocaille
+ *    eMail  : [email protected]
+ *    Site   : http://www.kysoh.com/
+ *
+ * "TuxDroid Gadget Java Kit" is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * "TuxDroid Gadget Java Kit" is distributed in the hope that it will be 
useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with "TuxDroid Gadget Java Kit"; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package com.kysoh.tuxdroid.gadget.framework.gadget;
+
+public interface StdInComListener
+{
+       void stopped();
+}


------------------------------------------------------------------------------
_______________________________________________
Tux-droid-svn mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tux-droid-svn

Reply via email to