GEAbschlussFaecher.ts 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. import { JavaObject, cast_java_lang_Object } from '../../../java/lang/JavaObject';
  2. import { GEAbschlussFach, cast_de_nrw_schule_svws_core_data_abschluss_GEAbschlussFach } from '../../../core/data/abschluss/GEAbschlussFach';
  3. import { List, cast_java_util_List } from '../../../java/util/List';
  4. import { JavaString, cast_java_lang_String } from '../../../java/lang/JavaString';
  5. import { Vector, cast_java_util_Vector } from '../../../java/util/Vector';
  6. export class GEAbschlussFaecher extends JavaObject {
  7. public schuljahr : number = 0;
  8. public abschnitt : number = 0;
  9. public jahrgang : String | null = null;
  10. public faecher : List<GEAbschlussFach> = new Vector();
  11. public constructor() {
  12. super();
  13. }
  14. isTranspiledInstanceOf(name : string): boolean {
  15. return ['de.nrw.schule.svws.core.data.abschluss.GEAbschlussFaecher'].includes(name);
  16. }
  17. public static transpilerFromJSON(json : string): GEAbschlussFaecher {
  18. const obj = JSON.parse(json);
  19. const result = new GEAbschlussFaecher();
  20. if (typeof obj.schuljahr === "undefined")
  21. throw new Error('invalid json format, missing attribute schuljahr');
  22. result.schuljahr = obj.schuljahr;
  23. if (typeof obj.abschnitt === "undefined")
  24. throw new Error('invalid json format, missing attribute abschnitt');
  25. result.abschnitt = obj.abschnitt;
  26. result.jahrgang = typeof obj.jahrgang === "undefined" ? null : obj.jahrgang;
  27. if (!!obj.faecher) {
  28. for (let elem of obj.faecher) {
  29. result.faecher?.add(GEAbschlussFach.transpilerFromJSON(JSON.stringify(elem)));
  30. }
  31. }
  32. return result;
  33. }
  34. public static transpilerToJSON(obj : GEAbschlussFaecher) : string {
  35. let result = '{';
  36. result += '"schuljahr" : ' + obj.schuljahr + ',';
  37. result += '"abschnitt" : ' + obj.abschnitt + ',';
  38. result += '"jahrgang" : ' + ((!obj.jahrgang) ? 'null' : '"' + obj.jahrgang.valueOf() + '"') + ',';
  39. if (!obj.faecher) {
  40. result += '[]';
  41. } else {
  42. result += '[ ';
  43. for (let i : number = 0; i < obj.faecher.size(); i++) {
  44. let elem = obj.faecher.get(i);
  45. result += GEAbschlussFach.transpilerToJSON(elem);
  46. if (i < obj.faecher.size() - 1)
  47. result += ',';
  48. }
  49. result += ' ]' + ',';
  50. }
  51. result = result.slice(0, -1);
  52. result += '}';
  53. return result;
  54. }
  55. public static transpilerToJSONPatch(obj : Partial<GEAbschlussFaecher>) : string {
  56. let result = '{';
  57. if (typeof obj.schuljahr !== "undefined") {
  58. result += '"schuljahr" : ' + obj.schuljahr + ',';
  59. }
  60. if (typeof obj.abschnitt !== "undefined") {
  61. result += '"abschnitt" : ' + obj.abschnitt + ',';
  62. }
  63. if (typeof obj.jahrgang !== "undefined") {
  64. result += '"jahrgang" : ' + ((!obj.jahrgang) ? 'null' : '"' + obj.jahrgang.valueOf() + '"') + ',';
  65. }
  66. if (typeof obj.faecher !== "undefined") {
  67. if (!obj.faecher) {
  68. result += '[]';
  69. } else {
  70. result += '[ ';
  71. for (let i : number = 0; i < obj.faecher.size(); i++) {
  72. let elem = obj.faecher.get(i);
  73. result += GEAbschlussFach.transpilerToJSON(elem);
  74. if (i < obj.faecher.size() - 1)
  75. result += ',';
  76. }
  77. result += ' ]' + ',';
  78. }
  79. }
  80. result = result.slice(0, -1);
  81. result += '}';
  82. return result;
  83. }
  84. }
  85. export function cast_de_nrw_schule_svws_core_data_abschluss_GEAbschlussFaecher(obj : unknown) : GEAbschlussFaecher {
  86. return obj as GEAbschlussFaecher;
  87. }