changeset 15805:420b5603cbbf

build: Move usejava.m from scripts/miscellaneous to scripts/java directory. * scripts/java/module.mk: Add usejava.m to build system. * scripts/java/usejava.m: Added m-file. * scripts/miscellaneous/module.mk: Remove usejava from miscellaneous directory build. * scripts/miscellaneous/usejava.m: Removed m-file.
author Rik <rik@octave.org>
date Mon, 17 Dec 2012 10:16:08 -0800
parents b15cfb7ed0eb
children 01d4f742d75d
files scripts/java/module.mk scripts/java/usejava.m scripts/miscellaneous/module.mk scripts/miscellaneous/usejava.m
diffstat 4 files changed, 93 insertions(+), 90 deletions(-) [+]
line wrap: on
line diff
--- a/scripts/java/module.mk	Mon Dec 17 09:19:27 2012 -0800
+++ b/scripts/java/module.mk	Mon Dec 17 10:16:08 2012 -0800
@@ -13,6 +13,7 @@
   java/listdlg.m \
   java/msgbox.m \
   java/questdlg.m \
+  java/usejava.m \
   java/warndlg.m
 
 FCN_FILES += $(java_FCN_FILES)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/scripts/java/usejava.m	Mon Dec 17 10:16:08 2012 -0800
@@ -0,0 +1,92 @@
+## Copyright (C) 2012 Rik Wehbring
+## Parts Copyright (C) 2012 Philip Nienhuis <prnienhuis@users.sf.net>
+##
+## This file is part of Octave.
+##
+## Octave 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 3 of the License, or (at
+## your option) any later version.
+##
+## Octave 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 Octave; see the file COPYING.  If not, see
+## <http://www.gnu.org/licenses/>.
+
+## -*- texinfo -*-
+## @deftypefn {Function File} {} usejava (@var{feature})
+## Return true if the Java element @var{feature} is available.
+##
+## Possible features are:
+##
+## @table @asis
+## @item "awt"
+## Abstract Window Toolkit for GUIs.
+##
+## @item "desktop"
+## Interactive desktop is running.
+##
+## @item "jvm"
+## Java Virtual Machine.
+##
+## @item "swing"
+## Swing components for lightweight GUIs.
+## @end table
+##
+## @code{usejava} determines if specific Java features are available in an
+## Octave session.  This function is provided for scripts which may alter
+## their behavior based on the availability of Java.  The feature "desktop"
+## always returns @code{false} as Octave has no Java-based desktop.  Other
+## features may be available if Octave was compiled with the Java Interface
+## and Java is installed.
+## @end deftypefn
+
+function retval = usejava (feature)
+
+  if (nargin != 1 || ! ischar (feature))
+    print_usage ();
+  endif
+
+  retval = false;
+
+  switch feature
+    ## For each feature, try methods() on a Java class of a feature
+    case "awt"
+      try
+        dum = methods ("java.awt.Frame");
+        retval = true;
+      end_try_catch
+    case "desktop"
+      ## Octave has no Java based GUI/desktop, leave retval = false
+    case "jvm"
+      try
+        dum = methods ("java.lang.Runtime");
+        retval = true;
+      end_try_catch
+    case "swing"
+      try
+        dum = methods ("javax.swing.Popup");
+        retval = true;
+      end_try_catch
+    otherwise
+      error ("usejava: unrecognized feature '%s'", feature);
+  endswitch
+
+endfunction
+
+
+%!assert (usejava ("desktop"), false)
+
+%!testif HAVE_JAVA
+%! assert (usejava ("jvm"), true);
+
+%% Test input validation
+%!error usejava ()
+%!error usejava (1, 2)
+%!error usejava (1)
+%!error <unrecognized feature> usejava ("abc")
+
--- a/scripts/miscellaneous/module.mk	Mon Dec 17 09:19:27 2012 -0800
+++ b/scripts/miscellaneous/module.mk	Mon Dec 17 10:16:08 2012 -0800
@@ -69,7 +69,6 @@
   miscellaneous/unpack.m \
   miscellaneous/untar.m \
   miscellaneous/unzip.m \
-  miscellaneous/usejava.m \
   miscellaneous/ver.m \
   miscellaneous/version.m \
   miscellaneous/warning_ids.m \
--- a/scripts/miscellaneous/usejava.m	Mon Dec 17 09:19:27 2012 -0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,89 +0,0 @@
-## Copyright (C) 2012 Rik Wehbring
-## Parts Copyright (C) 2012 Philip Nienhuis <prnienhuis@users.sf.net>
-##
-## This file is part of Octave.
-##
-## Octave 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 3 of the License, or (at
-## your option) any later version.
-##
-## Octave 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 Octave; see the file COPYING.  If not, see
-## <http://www.gnu.org/licenses/>.
-
-## -*- texinfo -*-
-## @deftypefn {Function File} {} usejava (@var{feature})
-## Return true if the Java element @var{feature} is available.
-##
-## Possible features are:
-##
-## @table @asis
-## @item "awt"
-## Abstract Window Toolkit for GUIs.
-##
-## @item "desktop"
-## Interactive desktop is running.
-##
-## @item "jvm"
-## Java Virtual Machine.
-##
-## @item "swing"
-## Swing components for lightweight GUIs.
-## @end table
-##
-## @code{usejava} determines if specific Java features are available in an
-## Octave session.  This function is provided for compatibility with scripts
-## which may alter their behavior based on the availability of Java.  The
-## feature "desktop" always returns @code{false} as Octave has no Java-based
-## desktop.  Other features may be available if the Octave-Forge Java package
-## has been installed.
-## @end deftypefn
-
-function retval = usejava (feature)
-
-  if (nargin != 1 || ! ischar (feature))
-    print_usage ();
-  endif
-
-  retval = false;
-
-  switch feature
-    ## For each feature, try javamethods() on a Java class of a feature
-    case "awt"
-      try
-        dum = javamethods ("java.awt.Frame");
-        retval = true;
-      end_try_catch
-    case "desktop"
-      ## Octave has no Java based GUI/desktop, leave retval = false
-    case "jvm"
-      try
-        dum = javamethods ("java.lang.Runtime");
-        retval = true;
-      end_try_catch
-    case "swing"
-      try
-        dum = javamethods ("javax.swing.Popup");
-        retval = true;
-      end_try_catch
-    otherwise
-      error ("usejava: unrecognized feature '%s'", feature);
-  endswitch
-
-endfunction
-
-
-%!assert (usejava ("desktop"), false)
-
-%% Test input validation
-%!error usejava ()
-%!error usejava (1, 2)
-%!error usejava (1)
-%!error <unrecognized feature> usejava ("abc")
-