1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
import org.perl.inline.java.*;
// Metodklass som anvnds av Java!
public class PerlObject extends InlineJavaPerlCaller {
String perlName;
// Konstruktor
public PerlObject(String perlName) throws InlineJavaException {
this.perlName = perlName;
}
// Metod fr att kalla p Perlobjektens egna metoder.
public Object method (String methodName) {
try {
Object ret = CallPerl( "main", "perlMethods", new Object[] {perlName, methodName} );
return ret == null ? new Integer(1) : ret;
}
catch (Exception e) {
return new Integer(-1);
}
}
public Object method (String methodName, Object arg) {
try {
Object ret = CallPerl( "main", "perlMethods", new Object[] {perlName, methodName, arg} );
return ret == null ? new Integer(1) : ret;
}
catch (Exception e) {
return new Integer(-1);
}
}
public Object method (String methodName, Object arg[]) {
try {
Object[] perlArg = new Object [arg.length+2];
perlArg[0] = perlName;
perlArg[1] = methodName;
for (int i = 0; i < arg.length; i++) {
perlArg[i+2] = arg[i];
}
Object ret = CallPerl( "main", "perlMethods", perlArg );
return ret == null ? new Integer(1) : ret;
}
catch (Exception e) {
return new Integer(-1);
}
}
}
|