From: Michael G. <gof...@us...> - 2007-02-24 21:59:18
|
Update of /cvsroot/octave/octave-forge/extra/java/inst In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv12084/inst Added Files: javaArray.m javaaddpath.m javaclasspath.m Log Message: New package for java interface --- NEW FILE: javaclasspath.m --- ## Copyright (C) 2007 Michael Goffioul ## ## This program 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 of the License, or ## (at your option) any later version. ## ## This program 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 this program; if not, write to the Free Software ## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA ## 02110-1301 USA ## -*- texinfo -*- ## @deftypefn {Function file} {@var{P} =} javaclasspath ## ## Returns the dynamic class path of the Java virtual machine in ## the form of a cell array of strings. If no output variable is ## given, the result is simply printed on the standard output. ## ## @end deftypefn ## @seealso{javaaddpath} function varargout = javaclasspath c_path = java_invoke ("org.octave.ClassHelper", "getClassPath"); path_list = split (c_path, ';'); switch nargout case 0 if (! isempty (path_list)) disp(path_list); endif case 1 varargout{1} = cellstr (path_list); endswitch endfunction --- NEW FILE: javaaddpath.m --- ## Copyright (C) 2007 Michael Goffioul ## ## This program 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 of the License, or ## (at your option) any later version. ## ## This program 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 this program; if not, write to the Free Software ## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA ## 02110-1301 USA ## -*- texinfo -*- ## @deftypefn {Function file} {} javaaddpath (@var{path}) ## ## Adds @var{path} to the dynamic class path of the Java virtual ## machine. @var{path} can be either a directory where .class files ## can be found, or a .jar file containing Java classes. ## ## @end deftypefn ## @seealso{javaclasspath} function javaaddpath (class_path) new_path = canonicalize_file_name (class_path); if (exist (new_path, "dir")) if (! strcmp (new_path (end), filesep)) new_path = [new_path, filesep]; endif elseif (! exist (new_path, "file")) error ("invalid Java classpath: %s", class_path); endif java_invoke ("org.octave.ClassHelper", "addClassPath", new_path); endfunction --- NEW FILE: javaArray.m --- ## Copyright (C) 2007 Michael Goffioul ## ## This program 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 of the License, or ## (at your option) any later version. ## ## This program 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 this program; if not, write to the Free Software ## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA ## 02110-1301 USA ## -*- texinfo -*- ## @deftypefn {Function file} {@var{a} =} javaArray (@var{class},@var{[M,N,...]}) ## @deftypefnx {Function file} {@var{a} =} javaArray (@var{class},@var{M},@var{N},...) ## ## Creates a Java array of size [@var{M},@var{N},...] with elements of ## class @var{class}. @var{class} can be a Java object representing a class ## or a string containing the fully qualified class name. ## ## The generated array is uninitialized, all elements are set to null ## if @var{class} is a reference type, or to a default value (usually 0) ## if @var{class} is a primitive type. ## ## @example ## a = javaArray ("java.lang.String", 2, 2); ## a(1,1) = "Hello"; ## @end example ## ## @end deftypefn function [ ret ] = javaArray (class_name, varargin) switch length (varargin) case 0 error ("missing array size"); case 1 dims = varargin{1}; otherwise dims = [varargin{:}]; endswitch ret = java_invoke ("org.octave.ClassHelper", "createArray", class_name, dims); endfunction |