changeset 1602:e6350d5249d3

2009-06-16 Omair Majid <omajid@redhat.com> * rt/javax/jnlp/SingleInstanceListener.java: New file. * rt/javax/jnlp/SingleInstanceService.java: New file.
author Omair Majid <omajid@redhat.com>
date Tue, 16 Jun 2009 10:58:00 -0400
parents 450de765ec22
children 4a617634d81c
files ChangeLog rt/javax/jnlp/SingleInstanceListener.java rt/javax/jnlp/SingleInstanceService.java
diffstat 3 files changed, 86 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Tue Jun 16 10:23:45 2009 -0400
+++ b/ChangeLog	Tue Jun 16 10:58:00 2009 -0400
@@ -1,3 +1,8 @@
+2009-06-16  Omair Majid  <omajid@redhat.com>
+
+	* rt/javax/jnlp/SingleInstanceListener.java: New file.
+	* rt/javax/jnlp/SingleInstanceService.java: New file.
+
 2009-06-16  Omair Majid  <omajid@redhat.com>
 
 	* rt/net/sourceforge/jnlp/services/ServiceUtil.java:
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/rt/javax/jnlp/SingleInstanceListener.java	Tue Jun 16 10:58:00 2009 -0400
@@ -0,0 +1,35 @@
+// Copyright (C) 2009 Red Hat, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+//
+// This library 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
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+
+package javax.jnlp;
+
+/**
+ * This interface specifies a listener which is notified whenever a new instance
+ * of the web start application is launched.
+ * 
+ */
+public interface SingleInstanceListener {
+
+    /**
+     * This method is called when a new instance of the application is launched.
+     * The arguments passed to the new instance are passed into this method.
+     * 
+     * @param arguments the arguments passed to the new instance of the
+     *        application
+     */
+    void newActivation(String[] arguments);
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/rt/javax/jnlp/SingleInstanceService.java	Tue Jun 16 10:58:00 2009 -0400
@@ -0,0 +1,46 @@
+// Copyright (C) 2009 Red Hat, Inc.
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+//
+// This library 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
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+
+package javax.jnlp;
+
+/**
+ * The SingleInstanceService provides a way to ensure that only one instance of
+ * the application is ever running - singleton behavior at the application
+ * level.
+ * 
+ */
+public interface SingleInstanceService {
+
+    /**
+     * Adds the specified SingleInstanceListener to the notification list. This
+     * listener is notified when a new instance of the application is started.
+     * 
+     * 
+     * @param listener the single instance listener to be added. No action is
+     *        performed if it is null.
+     */
+    void addSingleInstanceListener(SingleInstanceListener listener);
+
+    /**
+     * Removes the specified SingleInstanceListener from the notification list.
+     * This listener will not be notified if a new instance of the application
+     * is started.
+     * 
+     * @param listener the single instance listener to be removed. No action is
+     *        performed if it is null or not in the notification list.
+     */
+    void removeSingleInstanceListener(SingleInstanceListener listener);
+}