Artifact
ec507715db2506139f9675604053765263ba364d:
- File
codeChange.js
— part of check-in
[938b26d75e]
at
2014-04-23 15:30:17
on branch trunk
— Скрипт автоматической подстановки кода "Если ОбменДанными.Загрузка Тогда Возврат; КонецЕсли;" в начало обработчиков "ПередЗаписью" и "ПриЗаписи" для всех модулей кода в конфигурации
(user:
artbear
size: 6501)
0000: ef bb bf 24 65 6e 67 69 6e 65 20 4a 53 63 72 69 ...$engine JScri
0010: 70 74 0d 0a 24 75 6e 61 6d 65 20 d0 9f d0 b5 d1 pt..$uname .....
0020: 80 d0 b5 d0 b1 d0 be d1 80 d0 9c d0 be d0 b4 d1 ................
0030: 83 d0 bb d0 b5 d0 b9 0d 0a 24 64 6e 61 6d 65 20 .........$dname
0040: d0 9f d0 b5 d1 80 d0 b5 d0 b1 d0 be d1 80 20 d0 .............. .
0050: bc d0 be d0 b4 d1 83 d0 bb d0 b5 d0 b9 20 31 d0 ............. 1.
0060: a1 20 d0 b8 d0 b7 20 d0 ba d0 be d0 bd d1 84 d0 . .... .........
0070: b8 d0 b3 d1 83 d1 80 d0 b0 d1 86 d0 b8 d0 b8 0d ................
0080: 0a 24 61 64 64 69 6e 20 67 6c 6f 62 61 6c 0d 0a .$addin global..
0090: 24 61 64 64 69 6e 20 73 74 64 6c 69 62 0d 0a 24 $addin stdlib..$
00a0: 61 64 64 69 6e 20 73 74 64 63 6f 6d 6d 61 6e 64 addin stdcommand
00b0: 73 0d 0a 0d 0a 73 74 64 6c 69 62 2e 72 65 71 75 s....stdlib.requ
00c0: 69 72 65 28 27 53 79 6e 74 61 78 41 6e 61 6c 79 ire('SyntaxAnaly
00d0: 73 69 73 2e 6a 73 27 2c 20 53 65 6c 66 53 63 72 sis.js', SelfScr
00e0: 69 70 74 29 3b 0d 0a 73 74 64 6c 69 62 2e 72 65 ipt);..stdlib.re
00f0: 71 75 69 72 65 28 27 6c 6f 67 34 6a 73 2e 6a 73 quire('log4js.js
0100: 27 2c 20 53 65 6c 66 53 63 72 69 70 74 29 3b 0d ', SelfScript);.
0110: 0a 67 6c 6f 62 61 6c 2e 63 6f 6e 6e 65 63 74 47 .global.connectG
0120: 6c 6f 62 61 6c 73 28 53 65 6c 66 53 63 72 69 70 lobals(SelfScrip
0130: 74 29 3b 0d 0a 0d 0a 76 61 72 20 6c 6f 67 67 65 t);....var logge
0140: 72 20 3d 20 61 64 64 4c 6f 67 67 65 72 28 53 65 r = addLogger(Se
0150: 6c 66 53 63 72 69 70 74 2e 75 6e 69 71 75 65 4e lfScript.uniqueN
0160: 61 6d 65 2c 20 4c 6f 67 34 6a 73 2e 4c 65 76 65 ame, Log4js.Leve
0170: 6c 2e 45 52 52 4f 52 29 3b 20 2f 2f 4c 6f 67 34 l.ERROR); //Log4
0180: 6a 73 2e 4c 65 76 65 6c 2e 44 45 42 55 47 0d 0a js.Level.DEBUG..
0190: 0d 0a 76 61 72 20 73 74 6f 70 70 65 64 20 3d 20 ..var stopped =
01a0: 66 61 6c 73 65 0d 0a 76 61 72 20 63 68 61 6e 67 false..var chang
01b0: 65 64 4d 64 43 6f 75 6e 74 20 3d 30 3b 0d 0a 76 edMdCount =0;..v
01c0: 61 72 20 6d 64 43 6f 75 6e 74 20 3d 20 30 3b 0d ar mdCount = 0;.
01d0: 0a 0d 0a 53 65 6c 66 53 63 72 69 70 74 2e 73 65 ...SelfScript.se
01e0: 6c 66 5b 27 6d 61 63 72 6f 73 d0 92 d1 81 d1 82 lf['macros......
01f0: d0 b0 d0 b2 d0 b8 d1 82 d1 8c 20 d0 bf d1 80 d0 .......... .....
0200: be d0 b2 d0 b5 d1 80 d0 ba d1 83 20 d0 bd d0 b0 ........... ....
0210: 20 d0 9e d0 b1 d0 bc d0 b5 d0 bd d0 94 d0 b0 d0 ...............
0220: bd d0 bd d1 8b d0 bc d0 b8 2e d0 97 d0 b0 d0 b3 ................
0230: d1 80 d1 83 d0 b7 d0 ba d0 b0 20 d0 b2 20 d0 bc .......... .. ..
0240: d0 b5 d1 82 d0 be d0 b4 d1 8b 20 d0 9f d0 b5 d1 .......... .....
0250: 80 d0 b5 d0 b4 d0 97 d0 b0 d0 bf d0 b8 d1 81 d1 ................
0260: 8c d1 8e 20 d0 b8 20 d0 9f d1 80 d0 b8 d0 97 d0 ... .. .........
0270: b0 d0 bf d0 b8 d1 81 d0 b8 20 d0 b4 d0 bb d1 8f ......... ......
0280: 20 d0 b2 d1 81 d0 b5 d1 85 20 d0 bc d0 be d0 b4 ........ ......
0290: d1 83 d0 bb d0 b5 d0 b9 20 31 d0 a1 27 5d 20 3d ........ 1..'] =
02a0: 20 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0d 0a 0d function() {...
02b0: 0a 09 73 74 6f 70 70 65 64 20 3d 20 66 61 6c 73 ..stopped = fals
02c0: 65 0d 0a 09 63 68 61 6e 67 65 64 4d 64 43 6f 75 e...changedMdCou
02d0: 6e 74 20 3d 30 3b 0d 0a 09 6d 64 43 6f 75 6e 74 nt =0;...mdCount
02e0: 20 3d 20 30 3b 0d 0a 0d 0a 09 72 65 73 20 3d 20 = 0;.....res =
02f0: 73 74 64 6c 69 62 2e 66 6f 72 41 6c 6c 4d 64 4f stdlib.forAllMdO
0300: 62 6a 65 63 74 73 28 6d 65 74 61 64 61 74 61 2e bjects(metadata.
0310: 63 75 72 72 65 6e 74 2e 72 6f 6f 74 4f 62 6a 65 current.rootObje
0320: 63 74 2c 20 41 64 64 43 6f 64 65 49 6e 74 6f 4d ct, AddCodeIntoM
0330: 65 74 61 64 61 74 61 4d 6f 64 75 6c 65 54 65 78 etadataModuleTex
0340: 74 29 3b 0d 0a 09 0d 0a 09 69 66 28 6d 64 43 6f t);......if(mdCo
0350: 75 6e 74 20 21 3d 20 63 68 61 6e 67 65 64 4d 64 unt != changedMd
0360: 43 6f 75 6e 74 29 0d 0a 09 09 4d 65 73 73 61 67 Count)....Messag
0370: 65 28 22 d0 98 d0 b7 d0 bc d0 b5 d0 bd d0 b5 d0 e(".............
0380: bd d0 be 20 22 2b 63 68 61 6e 67 65 64 4d 64 43 ... "+changedMdC
0390: 6f 75 6e 74 2b 22 20 d0 bc d0 be d0 b4 d1 83 d0 ount+" .........
03a0: bb d0 b5 d0 b9 2e 20 d0 92 d1 81 d0 b5 d0 b3 d0 ...... .........
03b0: be 20 22 2b 6d 64 43 6f 75 6e 74 2b 22 20 d0 bc . "+mdCount+" ..
03c0: d0 be d0 b4 d1 83 d0 bb d0 b5 d0 b9 2c 20 d0 ba ............, ..
03d0: d0 be d1 82 d0 be d1 80 d1 8b d0 b5 20 d1 82 d1 ............ ...
03e0: 80 d0 b5 d0 b1 d1 83 d0 b5 d1 82 d1 81 d1 8f 20 ...............
03f0: d0 b8 d0 b7 d0 bc d0 b5 d0 bd d0 b8 d1 82 d1 8c ................
0400: 2e 20 d0 9d d0 b5 20 d1 83 d0 b4 d0 b0 d0 bb d0 . .... .........
0410: be d1 81 d1 8c 20 d0 b8 d0 b7 d0 bc d0 b5 d0 bd ..... ..........
0420: d0 b8 d1 82 d1 8c 20 22 2b 28 6d 64 43 6f 75 6e ...... "+(mdCoun
0430: 74 20 2d 20 63 68 61 6e 67 65 64 4d 64 43 6f 75 t - changedMdCou
0440: 6e 74 29 20 2b 22 20 d0 bc d0 be d0 b4 d1 83 d0 nt) +" .........
0450: bb d0 b5 d0 b9 21 22 29 0d 0a 09 65 6c 73 65 0d .....!")...else.
0460: 0a 09 09 4d 65 73 73 61 67 65 28 22 d0 a3 d0 b4 ...Message("....
0470: d0 b0 d0 bb d0 be d1 81 d1 8c 20 d0 b8 d0 b7 d0 .......... .....
0480: bc d0 b5 d0 bd d0 b8 d1 82 d1 8c 20 d0 b2 d1 81 ........... ....
0490: d0 b5 20 d0 bc d0 be d0 b4 d1 83 d0 bb d0 b8 2e .. .............
04a0: 20 d0 92 d1 81 d0 b5 d0 b3 d0 be 20 22 2b 6d 64 .......... "+md
04b0: 43 6f 75 6e 74 2b 22 20 d0 bc d0 be d0 b4 d1 83 Count+" ........
04c0: d0 bb d0 b5 d0 b9 21 22 29 0d 0a 7d 0d 0a 0d 0a ......!")..}....
04d0: 66 75 6e 63 74 69 6f 6e 20 41 64 64 43 6f 64 65 function AddCode
04e0: 49 6e 74 6f 4d 65 74 61 64 61 74 61 4d 6f 64 75 IntoMetadataModu
04f0: 6c 65 54 65 78 74 28 6d 64 4f 62 6a 29 7b 0d 0a leText(mdObj){..
0500: 09 69 66 20 28 21 73 74 6f 70 70 65 64 29 7b 0d .if (!stopped){.
0510: 0a 09 09 76 61 72 20 73 74 72 20 3d 20 6d 64 4f ...var str = mdO
0520: 62 6a 2e 6d 64 63 6c 61 73 73 2e 6e 61 6d 65 28 bj.mdclass.name(
0530: 31 29 20 2b 20 22 2e 22 20 2b 20 6d 64 4f 62 6a 1) + "." + mdObj
0540: 2e 6e 61 6d 65 0d 0a 09 09 53 74 61 74 75 73 28 .name....Status(
0550: 73 74 72 29 0d 0a 09 09 6c 6f 67 67 65 72 2e 64 str)....logger.d
0560: 65 62 75 67 28 73 74 72 29 0d 0a 09 09 0d 0a 09 ebug(str).......
0570: 09 76 61 72 20 6d 64 4f 62 6a 5f 6e 61 6d 65 20 .var mdObj_name
0580: 3d 20 6d 64 4f 62 6a 2e 6e 61 6d 65 3b 0d 0a 09 = mdObj.name;...
0590: 09 09 0d 0a 09 09 76 61 72 20 6d 64 63 20 3d 20 ......var mdc =
05a0: 6d 64 4f 62 6a 2e 6d 64 63 6c 61 73 73 3b 0d 0a mdObj.mdclass;..
05b0: 09 09 76 61 72 20 6d 64 63 5f 6e 61 6d 65 20 3d ..var mdc_name =
05c0: 20 6d 64 63 2e 6e 61 6d 65 28 31 29 0d 0a 09 09 mdc.name(1)....
05d0: 76 61 72 20 66 6f 72 6d 4e 61 6d 65 20 3d 20 22 var formName = "
05e0: 22 0d 0a 09 09 2f 2f 20 d0 b4 d0 bb d1 8f 20 d0 "....// ...... .
05f0: be d0 b1 d1 8a d0 b5 d0 ba d1 82 d0 be d0 b2 20 ...............
0600: d1 84 d0 be d1 80 d0 bc 20 d0 bf d0 be 20 d1 83 ........ .... ..
0610: d0 bc d0 be d0 bb d1 87 d0 b0 d0 bd d0 b8 d1 8e ................
0620: 20 d0 bd d0 b5 20 d0 bf d0 be d0 ba d0 b0 d0 b7 .... ..........
0630: d1 8b d0 b2 d0 b0 d1 8e d1 82 d1 81 d1 8f 20 d0 .............. .
0640: bf d0 be d0 bb d0 bd d1 8b d0 b5 20 d0 b8 d0 bc ........... ....
0650: d0 b5 d0 bd d0 b0 20 d0 bc d0 b5 d1 82 d0 b0 d0 ...... .........
0660: b4 d0 b0 d0 bd d0 bd d1 8b d1 85 2c 20 d0 bf d1 ..........., ...
0670: 80 d0 b8 d1 85 d0 be d0 b4 d0 b8 d1 82 d1 81 d1 ................
0680: 8f 20 d1 81 d0 bf d0 b5 d1 86 d0 b8 d0 b0 d0 bb . ..............
0690: d1 8c d0 bd d0 be 20 d0 b2 d1 8b d1 87 d0 b8 d1 ...... .........
06a0: 81 d0 bb d1 8f d1 82 d1 8c 20 d0 bc d0 b5 d1 82 ......... ......
06b0: d0 b0 d0 b4 d0 b0 d0 bd d0 bd d0 be d0 b5 0d 0a ................
06c0: 09 09 69 66 20 28 6d 64 63 5f 6e 61 6d 65 20 3d ..if (mdc_name =
06d0: 3d 20 22 d0 a4 d0 be d1 80 d0 bc d0 b0 22 29 20 = "..........")
06e0: 7b 20 0d 0a 09 09 09 66 6f 72 6d 4e 61 6d 65 20 { .....formName
06f0: 3d 20 22 2e 22 2b 6d 64 4f 62 6a 5f 6e 61 6d 65 = "."+mdObj_name
0700: 0d 0a 09 09 09 6d 64 4f 62 6a 5f 6e 61 6d 65 20 .....mdObj_name
0710: 3d 20 6d 64 4f 62 6a 2e 70 61 72 65 6e 74 2e 6e = mdObj.parent.n
0720: 61 6d 65 3b 0d 0a 09 09 09 6d 64 63 5f 6e 61 6d ame;.....mdc_nam
0730: 65 20 3d 20 6d 64 4f 62 6a 2e 70 61 72 65 6e 74 e = mdObj.parent
0740: 2e 6d 64 63 6c 61 73 73 2e 6e 61 6d 65 28 31 29 .mdclass.name(1)
0750: 3b 0d 0a 09 09 09 76 61 72 20 73 74 72 20 3d 20 ;.....var str =
0760: 22 09 09 22 20 2b 20 6d 64 4f 62 6a 2e 70 61 72 ".." + mdObj.par
0770: 65 6e 74 2e 6e 61 6d 65 20 2b 20 22 20 2d 20 22 ent.name + " - "
0780: 20 2b 6d 64 63 5f 6e 61 6d 65 20 2b 20 22 2e 22 +mdc_name + "."
0790: 20 2b 20 6d 64 4f 62 6a 5f 6e 61 6d 65 0d 0a 09 + mdObj_name...
07a0: 09 09 53 74 61 74 75 73 28 73 74 72 29 0d 0a 09 ..Status(str)...
07b0: 09 09 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 73 ..logger.debug(s
07c0: 74 72 29 0d 0a 09 09 7d 0d 0a 09 09 74 72 79 7b tr)....}....try{
07d0: 0d 0a 09 09 20 20 20 20 66 6f 72 28 76 61 72 20 .... for(var
07e0: 69 20 3d 20 30 2c 20 63 20 3d 20 6d 64 63 2e 70 i = 0, c = mdc.p
07f0: 72 6f 70 65 72 74 69 65 73 43 6f 75 6e 74 3b 20 ropertiesCount;
0800: 69 20 3c 20 63 3b 20 69 2b 2b 29 0d 0a 09 09 20 i < c; i++)....
0810: 20 20 20 7b 0d 0a 09 09 20 20 20 20 20 20 20 20 {....
0820: 76 61 72 20 6d 64 50 72 6f 70 20 3d 20 6d 64 63 var mdProp = mdc
0830: 2e 70 72 6f 70 65 72 74 79 41 74 28 69 29 0d 0a .propertyAt(i)..
0840: 0d 0a 09 09 20 20 20 20 20 20 20 20 76 61 72 20 .... var
0850: 6d 64 50 72 6f 70 4e 61 6d 65 20 3d 20 6d 64 50 mdPropName = mdP
0860: 72 6f 70 2e 6e 61 6d 65 28 31 29 3b 0d 0a 09 09 rop.name(1);....
0870: 20 20 20 20 20 20 20 20 69 66 28 6d 64 4f 62 6a if(mdObj
0880: 2e 69 73 50 72 6f 70 4d 6f 64 75 6c 65 28 6d 64 .isPropModule(md
0890: 50 72 6f 70 4e 61 6d 65 29 29 20 7b 0d 0a 09 09 PropName)) {....
08a0: 09 09 09 73 6f 75 72 63 65 54 65 78 74 20 3d 20 ...sourceText =
08b0: 6d 64 4f 62 6a 2e 67 65 74 4d 6f 64 75 6c 65 54 mdObj.getModuleT
08c0: 65 78 74 28 6d 64 50 72 6f 70 4e 61 6d 65 29 3b ext(mdPropName);
08d0: 0d 0a 09 09 09 09 09 69 66 28 73 6f 75 72 63 65 .......if(source
08e0: 54 65 78 74 2e 6c 65 6e 67 74 68 29 7b 0d 0a 09 Text.length){...
08f0: 09 09 09 09 09 76 61 72 20 73 74 72 20 3d 20 22 .....var str = "
0900: 09 22 20 2b 20 6d 64 4f 62 6a 2e 70 61 72 65 6e ." + mdObj.paren
0910: 74 2e 6e 61 6d 65 20 2b 20 22 20 2d 20 22 20 2b t.name + " - " +
0920: 6d 64 63 2e 6e 61 6d 65 28 31 29 20 2b 20 66 6f mdc.name(1) + fo
0930: 72 6d 4e 61 6d 65 20 2b 20 22 2e 22 20 2b 20 6d rmName + "." + m
0940: 64 4f 62 6a 2e 6e 61 6d 65 20 2b 20 22 2e 22 20 dObj.name + "."
0950: 2b 20 6d 64 50 72 6f 70 4e 61 6d 65 0d 0a 09 09 + mdPropName....
0960: 09 09 09 09 53 74 61 74 75 73 28 73 74 72 29 0d ....Status(str).
0970: 0a 09 09 09 09 09 09 6c 6f 67 67 65 72 2e 64 65 .......logger.de
0980: 62 75 67 28 73 74 72 29 0d 0a 09 09 09 09 09 09 bug(str)........
0990: 0d 0a 09 09 09 09 09 09 76 61 72 20 73 75 63 63 ........var succ
09a0: 65 73 73 4d 65 73 73 61 67 65 20 3d 20 6d 64 63 essMessage = mdc
09b0: 5f 6e 61 6d 65 20 2b 20 22 2e 22 20 2b 20 6d 64 _name + "." + md
09c0: 4f 62 6a 5f 6e 61 6d 65 20 2b 20 66 6f 72 6d 4e Obj_name + formN
09d0: 61 6d 65 20 2b 20 22 2e 22 20 2b 20 6d 64 50 72 ame + "." + mdPr
09e0: 6f 70 4e 61 6d 65 0d 0a 09 09 09 09 09 09 0d 0a opName..........
09f0: 09 09 09 09 09 09 63 6f 6e 74 65 78 74 20 3d 20 ......context =
0a00: 53 79 6e 74 61 78 41 6e 61 6c 79 73 69 73 2e 41 SyntaxAnalysis.A
0a10: 6e 61 6c 79 73 65 4d 6f 64 75 6c 65 28 73 6f 75 nalyseModule(sou
0a20: 72 63 65 54 65 78 74 2c 20 74 72 75 65 29 3b 0d rceText, true);.
0a30: 0a 0d 0a 09 09 09 09 09 09 76 61 72 20 69 73 53 .........var isS
0a40: 65 74 4d 6f 64 75 6c 65 54 65 78 74 20 3d 20 66 etModuleText = f
0a50: 61 6c 73 65 0d 0a 09 09 09 09 09 09 76 61 72 20 alse........var
0a60: 68 61 76 65 4d 65 74 68 6f 64 20 3d 20 66 61 6c haveMethod = fal
0a70: 73 65 0d 0a 09 09 09 09 09 09 0d 0a 09 09 09 09 se..............
0a80: 09 09 76 61 72 20 64 61 74 61 20 3d 20 67 65 74 ..var data = get
0a90: 4e 65 77 4d 65 74 68 6f 64 43 6f 64 65 28 63 6f NewMethodCode(co
0aa0: 6e 74 65 78 74 2c 20 22 d0 9f d0 b5 d1 80 d0 b5 ntext, "........
0ab0: d0 b4 d0 97 d0 b0 d0 bf d0 b8 d1 81 d1 8c d1 8e ................
0ac0: 22 2c 20 73 6f 75 72 63 65 54 65 78 74 2c 20 73 ", sourceText, s
0ad0: 75 63 63 65 73 73 4d 65 73 73 61 67 65 29 3b 0d uccessMessage);.
0ae0: 0a 09 09 09 09 09 09 69 66 20 28 21 68 61 76 65 .......if (!have
0af0: 4d 65 74 68 6f 64 20 26 26 20 64 61 74 61 2e 48 Method && data.H
0b00: 61 76 65 4d 65 74 68 6f 64 29 7b 0d 0a 09 09 09 aveMethod){.....
0b10: 09 09 09 09 68 61 76 65 4d 65 74 68 6f 64 20 3d ....haveMethod =
0b20: 20 74 72 75 65 0d 0a 09 09 09 09 09 09 09 6d 64 true.........md
0b30: 43 6f 75 6e 74 2b 2b 0d 0a 09 09 09 09 09 09 7d Count++........}
0b40: 0d 0a 09 09 09 09 09 09 09 0d 0a 09 09 09 09 09 ................
0b50: 09 69 66 20 28 64 61 74 61 2e 53 75 63 63 65 73 .if (data.Succes
0b60: 73 29 7b 0d 0a 09 09 09 09 09 09 09 69 73 53 65 s){.........isSe
0b70: 74 4d 6f 64 75 6c 65 54 65 78 74 20 3d 20 74 72 tModuleText = tr
0b80: 75 65 0d 0a 09 09 09 09 09 09 09 73 6f 75 72 63 ue.........sourc
0b90: 65 54 65 78 74 20 3d 20 64 61 74 61 2e 4e 65 77 eText = data.New
0ba0: 54 65 78 74 3b 0d 0a 09 09 09 09 09 09 09 63 6f Text;.........co
0bb0: 6e 74 65 78 74 20 3d 20 53 79 6e 74 61 78 41 6e ntext = SyntaxAn
0bc0: 61 6c 79 73 69 73 2e 41 6e 61 6c 79 73 65 4d 6f alysis.AnalyseMo
0bd0: 64 75 6c 65 28 73 6f 75 72 63 65 54 65 78 74 2c dule(sourceText,
0be0: 20 74 72 75 65 29 3b 0d 0a 09 09 09 09 09 09 7d true);........}
0bf0: 0d 0a 09 09 09 09 09 09 0d 0a 09 09 09 09 09 09 ................
0c00: 76 61 72 20 64 61 74 61 20 3d 20 67 65 74 4e 65 var data = getNe
0c10: 77 4d 65 74 68 6f 64 43 6f 64 65 28 63 6f 6e 74 wMethodCode(cont
0c20: 65 78 74 2c 20 22 d0 9f d1 80 d0 b8 d0 97 d0 b0 ext, "..........
0c30: d0 bf d0 b8 d1 81 d0 b8 22 2c 20 73 6f 75 72 63 ........", sourc
0c40: 65 54 65 78 74 2c 20 73 75 63 63 65 73 73 4d 65 eText, successMe
0c50: 73 73 61 67 65 29 3b 0d 0a 09 09 09 09 09 09 69 ssage);........i
0c60: 66 20 28 21 68 61 76 65 4d 65 74 68 6f 64 20 26 f (!haveMethod &
0c70: 26 20 64 61 74 61 2e 48 61 76 65 4d 65 74 68 6f & data.HaveMetho
0c80: 64 29 7b 0d 0a 09 09 09 09 09 09 09 68 61 76 65 d){.........have
0c90: 4d 65 74 68 6f 64 20 3d 20 74 72 75 65 0d 0a 09 Method = true...
0ca0: 09 09 09 09 09 09 6d 64 43 6f 75 6e 74 2b 2b 0d ......mdCount++.
0cb0: 0a 09 09 09 09 09 09 7d 0d 0a 09 09 09 09 09 09 .......}........
0cc0: 0d 0a 09 09 09 09 09 09 69 66 20 28 64 61 74 61 ........if (data
0cd0: 2e 53 75 63 63 65 73 73 29 7b 0d 0a 09 09 09 09 .Success){......
0ce0: 09 09 09 69 73 53 65 74 4d 6f 64 75 6c 65 54 65 ...isSetModuleTe
0cf0: 78 74 20 3d 20 74 72 75 65 0d 0a 09 09 09 09 09 xt = true.......
0d00: 09 09 73 6f 75 72 63 65 54 65 78 74 20 3d 20 64 ..sourceText = d
0d10: 61 74 61 2e 4e 65 77 54 65 78 74 3b 0d 0a 09 09 ata.NewText;....
0d20: 09 09 09 09 09 63 6f 6e 74 65 78 74 20 3d 20 53 .....context = S
0d30: 79 6e 74 61 78 41 6e 61 6c 79 73 69 73 2e 41 6e yntaxAnalysis.An
0d40: 61 6c 79 73 65 4d 6f 64 75 6c 65 28 73 6f 75 72 alyseModule(sour
0d50: 63 65 54 65 78 74 2c 20 74 72 75 65 29 3b 0d 0a ceText, true);..
0d60: 09 09 09 09 09 09 7d 0d 0a 09 09 09 09 09 09 0d ......}.........
0d70: 0a 09 09 09 09 09 09 69 66 20 28 69 73 53 65 74 .......if (isSet
0d80: 4d 6f 64 75 6c 65 54 65 78 74 29 20 7b 0d 0a 09 ModuleText) {...
0d90: 09 09 09 09 09 09 74 72 79 7b 0d 0a 09 09 09 09 ......try{......
0da0: 09 09 09 09 6d 64 4f 62 6a 2e 73 65 74 4d 6f 64 ....mdObj.setMod
0db0: 75 6c 65 54 65 78 74 28 6d 64 50 72 6f 70 4e 61 uleText(mdPropNa
0dc0: 6d 65 2c 20 73 6f 75 72 63 65 54 65 78 74 29 3b me, sourceText);
0dd0: 0d 0a 09 09 09 09 09 09 09 09 63 68 61 6e 67 65 ..........change
0de0: 64 4d 64 43 6f 75 6e 74 2b 2b 0d 0a 09 09 09 09 dMdCount++......
0df0: 09 09 09 09 76 61 72 20 73 74 72 20 3d 20 22 22 ....var str = ""
0e00: 2b 63 68 61 6e 67 65 64 4d 64 43 6f 75 6e 74 20 +changedMdCount
0e10: 2b 20 22 3a 20 22 20 2b 20 6d 64 63 5f 6e 61 6d + ": " + mdc_nam
0e20: 65 20 2b 20 22 2e 22 20 2b 20 6d 64 4f 62 6a 5f e + "." + mdObj_
0e30: 6e 61 6d 65 20 2b 20 66 6f 72 6d 4e 61 6d 65 20 name + formName
0e40: 2b 20 22 2e 22 20 2b 20 6d 64 50 72 6f 70 4e 61 + "." + mdPropNa
0e50: 6d 65 2b 20 22 20 2d 20 d0 bf d0 be d0 bc d0 b5 me+ " - ........
0e60: d0 bd d1 8f d0 bb 20 d0 bc d0 b5 d1 82 d0 be d0 ...... .........
0e70: b4 d1 8b 20 2d 20 d0 b4 d0 be d0 b1 d0 b0 d0 b2 ... - ..........
0e80: d0 b8 d0 bb 20 d0 bf d1 80 d0 be d0 b2 d0 b5 d1 .... ...........
0e90: 80 d0 ba d1 83 20 d0 bd d0 b0 20 d0 9e d0 b1 d0 ..... .... .....
0ea0: bc d0 b5 d0 bd d0 94 d0 b0 d0 bd d0 bd d1 8b d0 ................
0eb0: bc d0 b8 2e d0 97 d0 b0 d0 b3 d1 80 d1 83 d0 b7 ................
0ec0: d0 ba d0 b0 22 0d 0a 09 09 09 09 09 09 09 09 4d ...."..........M
0ed0: 65 73 73 61 67 65 28 73 74 72 29 0d 0a 09 09 09 essage(str).....
0ee0: 09 09 09 09 09 6c 6f 67 67 65 72 2e 64 65 62 75 .....logger.debu
0ef0: 67 28 73 74 72 29 0d 0a 09 09 09 09 09 09 09 7d g(str).........}
0f00: 63 61 74 63 68 28 65 29 20 7b 0d 0a 09 09 09 09 catch(e) {......
0f10: 09 09 09 09 6c 6f 67 67 65 72 2e 65 72 72 6f 72 ....logger.error
0f20: 28 22 d0 9e d1 88 d0 b8 d0 b1 d0 ba d0 b0 20 d0 ("............ .
0f30: b8 d0 b7 d0 bc d0 b5 d0 bd d0 b5 d0 bd d0 b8 d1 ................
0f40: 8f 20 d1 82 d0 b5 d0 ba d1 81 d1 82 d0 b0 3a 20 . ............:
0f50: 22 20 2b 20 6d 64 63 5f 6e 61 6d 65 20 2b 20 22 " + mdc_name + "
0f60: 2e 22 20 2b 20 6d 64 4f 62 6a 5f 6e 61 6d 65 20 ." + mdObj_name
0f70: 2b 20 66 6f 72 6d 4e 61 6d 65 20 2b 20 22 2e 22 + formName + "."
0f80: 20 2b 20 6d 64 50 72 6f 70 4e 61 6d 65 29 0d 0a + mdPropName)..
0f90: 09 09 09 09 09 09 09 7d 0d 0a 09 09 09 09 09 09 .......}........
0fa0: 09 0d 0a 09 09 09 09 09 09 09 53 74 61 74 75 73 ..........Status
0fb0: 28 22 22 29 0d 0a 09 09 09 09 09 09 09 2f 2f 73 ("").........//s
0fc0: 74 6f 70 70 65 64 20 3d 20 74 72 75 65 0d 0a 09 topped = true...
0fd0: 09 09 09 09 09 09 2f 2f 72 65 74 75 72 6e 0d 0a ......//return..
0fe0: 09 09 09 09 09 09 7d 0d 0a 09 09 09 09 09 7d 0d ......}.......}.
0ff0: 0a 09 09 09 09 7d 0d 0a 09 09 20 20 20 20 7d 0d .....}.... }.
1000: 0a 09 09 09 0d 0a 09 09 7d 0d 0a 09 09 63 61 74 ........}....cat
1010: 63 68 28 65 29 7b 0d 0a 20 20 20 20 20 20 20 20 ch(e){..
1020: 20 20 20 20 6c 6f 67 67 65 72 2e 65 72 72 6f 72 logger.error
1030: 28 22 d0 9e d1 88 d0 b8 d0 b1 d0 ba d0 b0 3a 20 ("............:
1040: 22 2b 65 2e 64 65 73 63 72 69 70 74 69 6f 6e 29 "+e.description)
1050: 0d 0a 09 09 09 74 72 79 7b 0d 0a 09 09 09 09 6c .....try{......l
1060: 6f 67 67 65 72 2e 65 72 72 6f 72 28 22 09 09 d0 ogger.error("...
1070: 9c d0 b5 d1 82 d0 b0 d0 b4 d0 b0 d0 bd d0 bd d0 ................
1080: be d0 b5 20 d1 81 20 d0 be d1 88 d0 b8 d0 b1 d0 ... .. .........
1090: ba d0 be d0 b9 3a 20 22 2b 20 6d 64 4f 62 6a 2e .....: "+ mdObj.
10a0: 70 61 72 65 6e 74 2e 6e 61 6d 65 20 2b 20 22 20 parent.name + "
10b0: 2d 20 22 20 2b 6d 64 63 5f 6e 61 6d 65 20 2b 20 - " +mdc_name +
10c0: 22 2e 22 20 2b 20 6d 64 4f 62 6a 5f 6e 61 6d 65 "." + mdObj_name
10d0: 20 2b 20 22 2e 22 20 2b 20 6d 64 50 72 6f 70 4e + "." + mdPropN
10e0: 61 6d 65 29 0d 0a 09 09 09 7d 63 61 74 63 68 28 ame).....}catch(
10f0: 65 29 7b 7d 0d 0a 09 09 7d 0d 0a 09 7d 0d 0a 7d e){}....}...}..}
1100: 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 67 65 74 ....function get
1110: 4e 65 77 4d 65 74 68 6f 64 43 6f 64 65 28 63 6f NewMethodCode(co
1120: 6e 74 65 78 74 2c 20 6d 65 74 68 6f 64 4e 61 6d ntext, methodNam
1130: 65 2c 20 73 6f 75 72 63 65 54 65 78 74 2c 20 73 e, sourceText, s
1140: 75 63 63 65 73 73 4d 65 73 73 61 67 65 29 7b 0d uccessMessage){.
1150: 0a 09 76 61 72 20 72 65 73 20 3d 20 7b 20 53 75 ..var res = { Su
1160: 63 63 65 73 73 3a 20 66 61 6c 73 65 2c 20 4e 65 ccess: false, Ne
1170: 77 54 65 78 74 3a 20 6e 75 6c 6c 2c 20 48 61 76 wText: null, Hav
1180: 65 4d 65 74 68 6f 64 20 3a 20 66 61 6c 73 65 20 eMethod : false
1190: 7d 3b 0d 0a 09 0d 0a 09 76 61 72 20 72 65 20 3d };......var re =
11a0: 20 6e 65 77 20 52 65 67 45 78 70 28 22 5e 5b 5e new RegExp("^[^
11b0: 2f 5d 2a 28 5c 5c 73 2a d0 95 d1 81 d0 bb d0 b8 /]*(\\s*........
11c0: 5c 5c 73 2b d0 9e d0 b1 d0 bc d0 b5 d0 bd d0 94 \\s+............
11d0: d0 b0 d0 bd d0 bd d1 8b d0 bc d0 b8 5c 5c 2e d0 ............\\..
11e0: 97 d0 b0 d0 b3 d1 80 d1 83 d0 b7 d0 ba d0 b0 5c ...............\
11f0: 5c 73 2b d0 a2 d0 be d0 b3 d0 b4 d0 b0 5c 5c 73 \s+..........\\s
1200: 2b d0 92 d0 be d0 b7 d0 b2 d1 80 d0 b0 d1 82 5c +..............\
1210: 5c 73 2a 3b 3f 5c 5c 73 2b d0 9a d0 be d0 bd d0 \s*;?\\s+.......
1220: b5 d1 86 d0 95 d1 81 d0 bb d0 b8 5c 5c 73 2a 3b ...........\\s*;
1230: 3f 29 22 29 3b 0d 0a 09 0d 0a 09 76 61 72 20 6d ?)");......var m
1240: 65 74 68 6f 64 20 3d 20 63 6f 6e 74 65 78 74 2e ethod = context.
1250: 67 65 74 4d 65 74 68 6f 64 42 79 4e 61 6d 65 28 getMethodByName(
1260: 6d 65 74 68 6f 64 4e 61 6d 65 29 3b 0d 0a 09 09 methodName);....
1270: 0d 0a 09 69 66 20 28 6d 65 74 68 6f 64 29 7b 0d ...if (method){.
1280: 0a 09 09 72 65 73 2e 48 61 76 65 4d 65 74 68 6f ...res.HaveMetho
1290: 64 20 3d 20 74 72 75 65 0d 0a 09 09 09 0d 0a 09 d = true........
12a0: 09 4c 69 6e 65 73 20 3d 20 73 6f 75 72 63 65 54 .Lines = sourceT
12b0: 65 78 74 2e 73 70 6c 69 74 28 22 5c 6e 22 29 3b ext.split("\n");
12c0: 0d 0a 09 09 6d 65 74 68 6f 64 4c 69 6e 65 73 20 ....methodLines
12d0: 3d 20 4c 69 6e 65 73 2e 73 6c 69 63 65 28 6d 65 = Lines.slice(me
12e0: 74 68 6f 64 2e 53 74 61 72 74 4c 69 6e 65 2c 20 thod.StartLine,
12f0: 6d 65 74 68 6f 64 2e 45 6e 64 4c 69 6e 65 2b 31 method.EndLine+1
1300: 29 3b 0d 0a 09 09 6d 65 74 68 6f 64 54 65 78 74 );....methodText
1310: 20 3d 20 6d 65 74 68 6f 64 4c 69 6e 65 73 2e 6a = methodLines.j
1320: 6f 69 6e 28 22 5c 6e 22 29 3b 0d 0a 09 09 0d 0a oin("\n");......
1330: 09 09 69 66 28 21 72 65 2e 74 65 73 74 28 6d 65 ..if(!re.test(me
1340: 74 68 6f 64 54 65 78 74 29 29 20 7b 0d 0a 09 09 thodText)) {....
1350: 09 2f 2f 6c 6f 67 67 65 72 2e 64 65 62 75 67 28 .//logger.debug(
1360: 22 73 6f 75 72 63 65 54 65 78 74 20 3c 22 2b 20 "sourceText <"+
1370: 73 6f 75 72 63 65 54 65 78 74 2b 22 3e 5c 6e 22 sourceText+">\n"
1380: 29 3b 0d 0a 09 09 09 2f 2f 6c 6f 67 67 65 72 2e );.....//logger.
1390: 64 65 62 75 67 28 22 6d 65 74 68 6f 64 54 65 78 debug("methodTex
13a0: 74 20 3c 22 2b 20 6d 65 74 68 6f 64 54 65 78 74 t <"+ methodText
13b0: 2b 22 3e 5c 6e 22 29 3b 0d 0a 09 09 09 0d 0a 09 +">\n");........
13c0: 09 09 62 65 66 6f 72 65 4c 69 6e 65 73 20 3d 20 ..beforeLines =
13d0: 4c 69 6e 65 73 2e 73 6c 69 63 65 28 30 2c 20 6d Lines.slice(0, m
13e0: 65 74 68 6f 64 2e 53 74 61 72 74 4c 69 6e 65 2b ethod.StartLine+
13f0: 31 29 3b 0d 0a 09 09 09 61 66 74 65 72 4c 69 6e 1);.....afterLin
1400: 65 73 20 3d 20 4c 69 6e 65 73 2e 73 6c 69 63 65 es = Lines.slice
1410: 28 6d 65 74 68 6f 64 2e 53 74 61 72 74 4c 69 6e (method.StartLin
1420: 65 2b 31 29 3b 0d 0a 09 09 09 0d 0a 09 09 09 6e e+1);..........n
1430: 65 77 4c 69 6e 65 73 20 3d 20 22 5c 6e 5c 6e 5c ewLines = "\n\n\
1440: 74 d0 95 d1 81 d0 bb d0 b8 20 d0 9e d0 b1 d0 bc t........ ......
1450: d0 b5 d0 bd d0 94 d0 b0 d0 bd d0 bd d1 8b d0 bc ................
1460: d0 b8 2e d0 97 d0 b0 d0 b3 d1 80 d1 83 d0 b7 d0 ................
1470: ba d0 b0 20 d0 a2 d0 be d0 b3 d0 b4 d0 b0 20 d0 ... .......... .
1480: 92 d0 be d0 b7 d0 b2 d1 80 d0 b0 d1 82 3b 20 d0 .............; .
1490: 9a d0 be d0 bd d0 b5 d1 86 d0 95 d1 81 d0 bb d0 ................
14a0: b8 3b 5c 6e 5c 6e 22 3b 0d 0a 09 09 09 6e 65 77 .;\n\n";.....new
14b0: 54 65 78 74 20 3d 20 62 65 66 6f 72 65 4c 69 6e Text = beforeLin
14c0: 65 73 2e 6a 6f 69 6e 28 22 5c 6e 22 29 2b 20 6e es.join("\n")+ n
14d0: 65 77 4c 69 6e 65 73 20 2b 20 61 66 74 65 72 4c ewLines + afterL
14e0: 69 6e 65 73 2e 6a 6f 69 6e 28 22 5c 6e 22 29 3b ines.join("\n");
14f0: 0d 0a 09 09 09 2f 2f 6c 6f 67 67 65 72 2e 64 65 .....//logger.de
1500: 62 75 67 28 22 6e 65 77 54 65 78 74 20 3c 22 2b bug("newText <"+
1510: 20 6e 65 77 54 65 78 74 2b 22 3e 5c 6e 22 29 3b newText+">\n");
1520: 0d 0a 09 09 09 2f 2f 6c 6f 67 67 65 72 2e 64 65 .....//logger.de
1530: 62 75 67 28 22 72 65 2e 74 65 73 74 28 6e 65 77 bug("re.test(new
1540: 54 65 78 74 29 20 3c 22 2b 20 72 65 2e 74 65 73 Text) <"+ re.tes
1550: 74 28 6e 65 77 54 65 78 74 29 2b 22 3e 5c 6e 22 t(newText)+">\n"
1560: 29 3b 0d 0a 09 09 09 0d 0a 09 09 09 72 65 73 2e );..........res.
1570: 4e 65 77 54 65 78 74 20 3d 20 6e 65 77 54 65 78 NewText = newTex
1580: 74 3b 0d 0a 09 09 09 72 65 73 2e 53 75 63 63 65 t;.....res.Succe
1590: 73 73 20 3d 20 74 72 75 65 3b 0d 0a 09 09 09 0d ss = true;......
15a0: 0a 09 09 09 53 74 61 74 75 73 28 22 22 29 0d 0a ....Status("")..
15b0: 09 09 09 76 61 72 20 73 74 72 20 3d 20 22 09 09 ...var str = "..
15c0: 22 20 2b 20 73 75 63 63 65 73 73 4d 65 73 73 61 " + successMessa
15d0: 67 65 20 2b 20 22 20 2d 20 d0 bd d1 83 d0 b6 d0 ge + " - .......
15e0: bd d0 be 20 d0 bf d0 be d0 bc d0 b5 d0 bd d1 8f ... ............
15f0: d1 82 d1 8c 20 d0 bc d0 b5 d1 82 d0 be d0 b4 20 .... ..........
1600: 22 2b 6d 65 74 68 6f 64 4e 61 6d 65 2b 22 22 0d "+methodName+"".
1610: 0a 09 09 09 4d 65 73 73 61 67 65 28 73 74 72 29 ....Message(str)
1620: 0d 0a 09 09 09 6c 6f 67 67 65 72 2e 64 65 62 75 .....logger.debu
1630: 67 28 73 74 72 29 0d 0a 09 09 7d 0d 0a 09 7d 0d g(str)....}...}.
1640: 0a 09 72 65 74 75 72 6e 20 72 65 73 0d 0a 7d 0d ..return res..}.
1650: 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 61 64 64 4c ...function addL
1660: 6f 67 67 65 72 28 6c 6f 67 67 65 72 4e 61 6d 65 ogger(loggerName
1670: 2c 20 6c 6f 67 4c 65 76 65 6c 29 20 7b 0d 0a 09 , logLevel) {...
1680: 76 61 72 20 6c 6f 67 67 65 72 20 3d 20 4c 6f 67 var logger = Log
1690: 34 6a 73 2e 67 65 74 4c 6f 67 67 65 72 28 6c 6f 4js.getLogger(lo
16a0: 67 67 65 72 4e 61 6d 65 29 3b 0d 0a 09 76 61 72 ggerName);...var
16b0: 20 61 70 70 65 6e 64 65 72 20 3d 20 6e 65 77 20 appender = new
16c0: 4c 6f 67 34 6a 73 2e 42 72 6f 77 73 65 72 43 6f Log4js.BrowserCo
16d0: 6e 73 6f 6c 65 41 70 70 65 6e 64 65 72 28 29 3b nsoleAppender();
16e0: 0d 0a 09 61 70 70 65 6e 64 65 72 2e 73 65 74 4c ...appender.setL
16f0: 61 79 6f 75 74 28 6e 65 77 20 4c 6f 67 34 6a 73 ayout(new Log4js
1700: 2e 50 61 74 74 65 72 6e 4c 61 79 6f 75 74 28 4c .PatternLayout(L
1710: 6f 67 34 6a 73 2e 50 61 74 74 65 72 6e 4c 61 79 og4js.PatternLay
1720: 6f 75 74 2e 54 54 43 43 5f 43 4f 4e 56 45 52 53 out.TTCC_CONVERS
1730: 49 4f 4e 5f 50 41 54 54 45 52 4e 29 29 3b 0d 0a ION_PATTERN));..
1740: 09 2f 2f 20 d1 81 d0 bb d0 b5 d0 b4 d1 83 d1 8e .// ............
1750: d1 89 d0 b8 d0 b9 20 d0 ba d0 be d0 b4 20 d0 bd ...... ...... ..
1760: d1 83 d0 b6 d0 b5 d0 bd 2c 20 d1 87 d1 82 d0 be ........, ......
1770: d0 b1 d1 8b 20 d0 bf d1 80 d0 b8 20 d0 bf d0 b5 .... ...... ....
1780: d1 80 d0 b5 d0 b7 d0 b0 d0 bf d1 83 d1 81 d0 ba ................
1790: d0 b5 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1 82 d0 .. .............
17a0: b0 20 d0 b1 d0 b5 d0 b7 20 d0 bf d0 b5 d1 80 d0 . ...... .......
17b0: b5 d0 b7 d0 b0 d0 bf d1 83 d1 81 d0 ba d0 b0 20 ...............
17c0: d0 9a d0 be d0 bd d1 84 d0 b8 d0 b3 d1 83 d1 80 ................
17d0: d0 b0 d1 82 d0 be d1 80 d0 b0 20 d0 bb d0 be d0 .......... .....
17e0: b3 20 d0 bd d0 b5 20 d0 b7 d0 b0 d0 b4 d0 b2 d0 . .... .........
17f0: be d0 b8 d1 82 d1 81 d1 8f 0d 0a 09 61 70 70 65 ............appe
1800: 6e 64 65 72 73 20 3d 20 5b 5d 3b 0d 0a 09 61 70 nders = [];...ap
1810: 70 65 6e 64 65 72 73 2e 70 75 73 68 28 61 70 70 penders.push(app
1820: 65 6e 64 65 72 29 3b 0d 0a 09 6c 6f 67 67 65 72 ender);...logger
1830: 2e 6f 6e 6c 6f 67 20 3d 20 6e 65 77 20 4c 6f 67 .onlog = new Log
1840: 34 6a 73 2e 43 75 73 74 6f 6d 45 76 65 6e 74 28 4js.CustomEvent(
1850: 29 3b 0d 0a 09 6c 6f 67 67 65 72 2e 6f 6e 63 6c );...logger.oncl
1860: 65 61 72 20 3d 20 6e 65 77 20 4c 6f 67 34 6a 73 ear = new Log4js
1870: 2e 43 75 73 74 6f 6d 45 76 65 6e 74 28 29 3b 0d .CustomEvent();.
1880: 0a 0d 0a 09 6c 6f 67 67 65 72 2e 73 65 74 41 70 ....logger.setAp
1890: 70 65 6e 64 65 72 73 28 61 70 70 65 6e 64 65 72 penders(appender
18a0: 73 29 3b 20 2f 2f 20 d0 ba d0 be d0 bd d0 b5 d1 s); // .........
18b0: 86 20 d0 b1 d0 bb d0 be d0 ba d0 b0 20 d0 b8 d1 . .......... ...
18c0: 81 d0 ba d0 bb d1 8e d1 87 d0 b5 d0 bd d0 b8 d1 ................
18d0: 8f 20 d0 b7 d0 b0 d0 b4 d0 b2 d0 be d0 b5 d0 bd . ..............
18e0: d0 b8 d1 8f 20 d0 bb d0 be d0 b3 d0 b0 0d 0a 09 .... ...........
18f0: 2f 2f 6c 6f 67 67 65 72 2e 61 64 64 41 70 70 65 //logger.addAppe
1900: 6e 64 65 72 28 6e 65 77 20 4c 6f 67 34 6a 73 2e nder(new Log4js.
1910: 46 69 6c 65 41 70 70 65 6e 64 65 72 28 22 66 3a FileAppender("f:
1920: 5c 5c 73 6f 6d 65 66 69 6c 65 2e 6c 6f 67 22 29 \\somefile.log")
1930: 29 3b 0d 0a 09 6c 6f 67 67 65 72 2e 73 65 74 4c );...logger.setL
1940: 65 76 65 6c 28 6c 6f 67 4c 65 76 65 6c 29 3b 0d evel(logLevel);.
1950: 0a 09 72 65 74 75 72 6e 20 6c 6f 67 67 65 72 3b ..return logger;
1960: 0d 0a 7d 0d 0a ..}..