GostLeistungenFachwahl.ts 3.4 KB

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