(!*******************************************************
file passvalues.mos
```````````````````
a model that demonstrates passing values from Mosel to a Java method
(c) 2016 Fair Isaac Corporation
author: J. Farmer, 2016
*******************************************************!)
model myModel
uses 'mosjvm'
declarations
classAndMethodName = "PassValues.repeatValue"
valueToRepeat = "hello "
numRepetitions = 3
end-declarations
! Abort model if we encounter a Java exception
setparam('jvmabortonexception',true)
! Tell Java to look for classes in work directory
setparam('jvmclasspath',getparam('workdir'))
! PassValues.repeatValue(string A, int N) is a Java function that returns string A repeated N times
writeln('Repeated string: ', jvmcallstr( classAndMethodName, valueToRepeat, numRepetitions ))
end-model
|
/**
* Example Java class, containing a method that returns a string based on arguments passed to it
*
* @author J.Farmer, (c) Fair Isaac Corporation, 2016
**/
public class PassValues {
public static String repeatValue(String value, int nRepetitions) {
StringBuilder result = new StringBuilder();
for (int i=0;i<nRepetitions;i++) {
result.append(value);
}
return result.toString();
}
} |