EmbedJava.ecl 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. //run on hthor
  2. //If you are running without the Java plugin installed, you will get syntax errors
  3. IMPORT java;
  4. INTEGER add1(INTEGER val) := IMPORT(java, 'JavaCat.add1:(I)I');
  5. STRING add2(STRING val) := IMPORT(java, 'JavaCat.add2:(Ljava/lang/String;)Ljava/lang/String;');
  6. STRING add3(VARSTRING val) := IMPORT(java, 'JavaCat.add2:(Ljava/lang/String;)Ljava/lang/String;');
  7. UTF8 add4(UTF8 val) := IMPORT(java, 'JavaCat.add2:(Ljava/lang/String;)Ljava/lang/String;');
  8. UNICODE add5(UNICODE val) := IMPORT(java, 'JavaCat.add2:(Ljava/lang/String;)Ljava/lang/String;');
  9. STRING addChar(STRING c) := IMPORT(java, 'JavaCat.addChar:(C)C');
  10. STRING cat(STRING s1, STRING s2) := IMPORT(java, 'JavaCat.cat:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;');
  11. DATA testData(DATA indata) := IMPORT(java, 'JavaCat.testData:([B)[B');
  12. INTEGER testArrays(SET OF BOOLEAN b, SET OF INTEGER2 s, SET OF INTEGER4 i, SET OF REAL8 d)
  13. := IMPORT(java, 'JavaCat.testArrays:([Z[S[I[D)I');
  14. SET OF STRING testStringArray1(SET OF STRING s)
  15. := IMPORT(java, 'JavaCat.testStringArray:([Ljava/lang/String;)[Ljava/lang/String;');
  16. SET OF VARSTRING testStringArray2(SET OF VARSTRING s)
  17. := IMPORT(java, 'JavaCat.testStringArray:([Ljava/lang/String;)[Ljava/lang/String;');
  18. SET OF STRING8 testStringArray3(SET OF STRING8 s)
  19. := IMPORT(java, 'JavaCat.testStringArray:([Ljava/lang/String;)[Ljava/lang/String;');
  20. SET OF VARSTRING8 testStringArray4(SET OF VARSTRING8 s)
  21. := IMPORT(java, 'JavaCat.testStringArray:([Ljava/lang/String;)[Ljava/lang/String;');
  22. SET OF UTF8 testStringArray5(SET OF UTF8 s)
  23. := IMPORT(java, 'JavaCat.testStringArray:([Ljava/lang/String;)[Ljava/lang/String;');
  24. SET OF UNICODE8 testStringArray6(SET OF UNICODE8 s)
  25. := IMPORT(java, 'JavaCat.testStringArray:([Ljava/lang/String;)[Ljava/lang/String;');
  26. SET OF UNICODE testStringArray7(SET OF UNICODE s)
  27. := IMPORT(java, 'JavaCat.testStringArray:([Ljava/lang/String;)[Ljava/lang/String;');
  28. add1(10);
  29. add2('Hello');
  30. add3('World');
  31. add4(U'Leovenaðes');
  32. add5(U'你好世界');
  33. addChar('A');
  34. cat('Hello', ' world');
  35. testData(d'aa');
  36. testArrays([true],[2,3],[4,5,6,7],[8.0,9.0]);
  37. testArrays([],[],[],[]);
  38. testStringArray1(['one', 'two', 'three']);
  39. testStringArray2(['one', 'two', 'three']);
  40. testStringArray3(['one', 'two', 'three']);
  41. testStringArray4(['one', 'two', 'three']);
  42. testStringArray5(['one', 'two', 'three']);
  43. testStringArray6(['one', 'two', 'three']);
  44. testStringArray7(['one', 'two', 'three']);
  45. s1 :=DATASET(250000, TRANSFORM({ integer a }, SELF.a := add1(COUNTER)));
  46. s2 :=DATASET(250000, TRANSFORM({ integer a }, SELF.a := add1(COUNTER/2)));
  47. SUM(NOFOLD(s1 + s2), a);
  48. s1a :=DATASET(250000, TRANSFORM({ integer a }, SELF.a := (integer) add2((STRING)COUNTER)));
  49. s2a :=DATASET(250000, TRANSFORM({ integer a }, SELF.a := (integer) add3((STRING)(COUNTER/2))));
  50. SUM(NOFOLD(s1a + s2a), a);
  51. s1b :=DATASET(250000, TRANSFORM({ integer a }, SELF.a := COUNTER+1));
  52. s2b :=DATASET(250000, TRANSFORM({ integer a }, SELF.a := (COUNTER/2)+1));
  53. SUM(NOFOLD(s1b + s2b), a);
  54. s1c :=DATASET(250000, TRANSFORM({ integer a }, SELF.a := (integer) ((STRING) COUNTER + '1')));
  55. s2c :=DATASET(250000, TRANSFORM({ integer a }, SELF.a := (integer) ((STRING)(COUNTER/2) + '1')));
  56. SUM(NOFOLD(s1c + s2c), a);