@@ -54,6 +54,15 @@ class ConfigInt {
54
54
ConfigInt () : m_set(false ), m_value(0 ) { }
55
55
bool m_set;
56
56
int m_value;
57
+
58
+ void merge (ConfigInt *from) {
59
+ if (m_set == true || from->m_set == false ) {
60
+ return ;
61
+ }
62
+ m_set = true ;
63
+ m_value = from->m_value ;
64
+ return ;
65
+ }
57
66
};
58
67
59
68
@@ -62,6 +71,15 @@ class ConfigDouble {
62
71
ConfigDouble () : m_set(false ), m_value(0 ) { }
63
72
bool m_set;
64
73
double m_value;
74
+
75
+ void merge (ConfigDouble *from) {
76
+ if (m_set == true || from->m_set == false ) {
77
+ return ;
78
+ }
79
+ m_set = true ;
80
+ m_value = from->m_value ;
81
+ return ;
82
+ }
65
83
};
66
84
67
85
@@ -70,6 +88,15 @@ class ConfigString {
70
88
ConfigString () : m_set(false ), m_value(" " ) { }
71
89
bool m_set;
72
90
std::string m_value;
91
+
92
+ void merge (ConfigString *from) {
93
+ if (m_set == true || from->m_set == false ) {
94
+ return ;
95
+ }
96
+ m_set = true ;
97
+ m_value = from->m_value ;
98
+ return ;
99
+ }
73
100
};
74
101
75
102
@@ -341,15 +368,8 @@ class RulesProperties {
341
368
to->m_tmpSaveUploadedFiles = from->m_tmpSaveUploadedFiles ;
342
369
}
343
370
344
- if (from->m_requestBodyLimit .m_set == true ) {
345
- to->m_requestBodyLimit .m_value = from->m_requestBodyLimit .m_value ;
346
- to->m_requestBodyLimit .m_set = true ;
347
- }
348
-
349
- if (from->m_responseBodyLimit .m_set == true ) {
350
- to->m_responseBodyLimit .m_value = from->m_responseBodyLimit .m_value ;
351
- to->m_responseBodyLimit .m_set = true ;
352
- }
371
+ to->m_requestBodyLimit .merge (&from->m_requestBodyLimit );
372
+ to->m_responseBodyLimit .merge (&from->m_responseBodyLimit );
353
373
354
374
if (from->m_requestBodyLimitAction != PropertyNotSetBodyLimitAction) {
355
375
to->m_requestBodyLimitAction = from->m_requestBodyLimitAction ;
@@ -359,45 +379,18 @@ class RulesProperties {
359
379
to->m_responseBodyLimitAction = from->m_responseBodyLimitAction ;
360
380
}
361
381
362
- if ( from->m_uploadFileLimit . m_set == true ) {
363
- to->m_uploadFileLimit . m_value = from->m_uploadFileLimit . m_value ;
364
- to->m_uploadFileLimit . m_set = true ;
365
- }
382
+ to-> m_uploadFileLimit . merge (& from->m_uploadFileLimit );
383
+ to->m_uploadFileMode . merge (& from->m_uploadFileMode ) ;
384
+ to->m_uploadDirectory . merge (&from-> m_uploadDirectory ) ;
385
+ to-> m_uploadTmpDirectory . merge (&from-> m_uploadTmpDirectory );
366
386
367
- if (from->m_uploadFileMode .m_set == true ) {
368
- to->m_uploadFileMode .m_value = from->m_uploadFileMode .m_value ;
369
- to->m_uploadFileMode .m_set = true ;
370
- }
387
+ to->m_secArgumentSeparator .merge (&from->m_secArgumentSeparator );
371
388
372
- if (from->m_uploadDirectory .m_set == true ) {
373
- to->m_uploadDirectory .m_value = from->m_uploadDirectory .m_value ;
374
- to->m_uploadDirectory .m_set = true ;
375
- }
376
-
377
- if (from->m_uploadTmpDirectory .m_set == true ) {
378
- to->m_uploadTmpDirectory .m_value = \
379
- from->m_uploadTmpDirectory .m_value ;
380
- to->m_uploadTmpDirectory .m_set = true ;
381
- }
382
-
383
- if (from->m_secArgumentSeparator .m_set == true ) {
384
- to->m_secArgumentSeparator .m_value = \
385
- from->m_secArgumentSeparator .m_value ;
386
- to->m_secArgumentSeparator .m_set = true ;
387
- }
388
-
389
- if (from->m_secWebAppId .m_set == true ) {
390
- to->m_secWebAppId .m_value = \
391
- from->m_secWebAppId .m_value ;
392
- to->m_secWebAppId .m_set = true ;
393
- }
389
+ to->m_secWebAppId .merge (&from->m_secWebAppId );
394
390
395
391
to->m_unicodeMapTable .merge (&from->m_unicodeMapTable );
396
392
397
- if (from->m_httpblKey .m_set == true ) {
398
- to->m_httpblKey .m_value = from->m_httpblKey .m_value ;
399
- to->m_httpblKey .m_set = from->m_httpblKey .m_set ;
400
- }
393
+ to->m_httpblKey .merge (&from->m_httpblKey );
401
394
402
395
to->m_exceptions .merge (&from->m_exceptions );
403
396
0 commit comments