3
3
The Universal Permissive License (UPL), Version 1.0
4
4
"""
5
5
6
+ import java .lang .System as JSystem
7
+ import java .lang .Thread as JThread
6
8
import java .util .logging .Level as JLevel
9
+ import java .util .logging .Logger as JLogger
10
+ import java .util .logging .LogRecord as JLogRecord
11
+
12
+ from oracle .weblogic .deploy .exception import ExceptionHelper
7
13
8
14
from wlsdeploy .util import model
9
15
from wlsdeploy .tool .validate import validation_utils
@@ -61,32 +67,25 @@ def print_details(self):
61
67
"""
62
68
63
69
for validation_result in self ._validation_result_dict .values ():
64
- if validation_result .get_errors_count () > 0 \
65
- or validation_result .get_warnings_count () > 0 \
66
- or validation_result .get_infos_count ():
67
-
68
- indent_level = 0
69
- validation_area = validation_utils .format_message ('WLSDPLY-05200' ,
70
- validation_result .get_validation_area ())
71
- validation_utils .print_blank_lines ()
72
- validation_utils .print_indent (validation_utils .divider_string , indent_level )
73
- validation_utils .print_indent (validation_area , indent_level )
74
- validation_utils .print_indent (validation_utils .divider_string , indent_level )
70
+ indent_level = 0
71
+ if validation_result .get_infos_count () > 0 :
72
+ _print_results_category_details (validation_utils .format_message ('WLSDPLY-05201' ),
73
+ validation_result .get_infos_count (),
74
+ validation_result .get_infos_messages (), indent_level )
75
75
76
- if validation_result .get_infos_count () > 0 :
77
- _print_results_category_details (validation_utils .format_message ('WLSDPLY-05201' ),
78
- validation_result .get_infos_count (),
79
- validation_result .get_infos_messages (), indent_level )
80
-
81
- if validation_result .get_warnings_count () > 0 :
82
- _print_results_category_details (validation_utils .format_message ('WLSDPLY-05202' ),
83
- validation_result .get_warnings_count (),
84
- validation_result .get_warnings_messages (), indent_level )
76
+ for validation_result in self ._validation_result_dict .values ():
77
+ indent_level = 0
78
+ if validation_result .get_warnings_count () > 0 :
79
+ _print_results_category_details (validation_utils .format_message ('WLSDPLY-05202' ),
80
+ validation_result .get_warnings_count (),
81
+ validation_result .get_warnings_messages (), indent_level )
85
82
86
- if validation_result .get_errors_count () > 0 :
87
- _print_results_category_details (validation_utils .format_message ('WLSDPLY-05203' ),
88
- validation_result .get_errors_count (),
89
- validation_result .get_errors_messages (), indent_level )
83
+ for validation_result in self ._validation_result_dict .values ():
84
+ indent_level = 0
85
+ if validation_result .get_errors_count () > 0 :
86
+ _print_results_category_details (validation_utils .format_message ('WLSDPLY-05203' ),
87
+ validation_result .get_errors_count (),
88
+ validation_result .get_errors_messages (), indent_level )
90
89
91
90
def log_results (self , logger ):
92
91
"""
@@ -97,72 +96,73 @@ def log_results(self, logger):
97
96
98
97
if logger is not None :
99
98
# Get counts for all the ValidationResult objects
100
- # in this ValidationResult object
99
+ # in this ValidationResults object
101
100
results_summary = self .__get_summary ()
102
101
103
- logger .set_level (JLevel .INFO )
102
+ jlogger = JLogger .getLogger (logger .get_name (), logger .resource_bundle_name )
103
+
104
+ jlogger .setLevel (JLevel .INFO )
104
105
105
106
# Determine what the severity level is going to be for the
106
107
# summary log message. Needs to be set in accordance with
107
108
# what the severest validation message was.
108
109
if results_summary ['infos_count' ] > 0 :
109
- logger . set_level (JLevel .INFO )
110
+ jlogger . setLevel (JLevel .INFO )
110
111
if results_summary ['warnings_count' ] > 0 :
111
- logger . set_level (JLevel .WARNING )
112
+ jlogger . setLevel (JLevel .WARNING )
112
113
if results_summary ['errors_count' ] > 0 :
113
- logger . set_level (JLevel .SEVERE )
114
+ jlogger . setLevel (JLevel .SEVERE )
114
115
115
116
total_messages_count = \
116
117
int (results_summary ['errors_count' ]) + int (results_summary ['warnings_count' ]) + \
117
118
int (results_summary ['infos_count' ])
118
119
119
- logger .log (logger . get_level (),
120
+ logger .log (jlogger . getLevel (),
120
121
'WLSDPLY-05204' ,
121
122
results_summary ['errors_count' ],
122
123
results_summary ['warnings_count' ],
123
124
results_summary ['infos_count' ],
124
- total_messages_count ,
125
125
class_name = self ._class_name , method_name = _method_name )
126
126
127
+ if total_messages_count > 0 :
128
+ logger .log (jlogger .getLevel (), 'WLSDPLY-05207' , total_messages_count ,
129
+ class_name = self ._class_name , method_name = _method_name )
130
+
127
131
for validation_result in self ._validation_result_dict .values ():
128
132
if validation_result .get_infos_count () > 0 :
129
- logger . set_level (JLevel .INFO )
133
+ jlogger . setLevel (JLevel .INFO )
130
134
self .__log_results_category_details (validation_result .get_infos_messages (),
131
- _method_name , logger )
135
+ _method_name , jlogger )
132
136
133
137
for validation_result in self ._validation_result_dict .values ():
134
138
if validation_result .get_warnings_count () > 0 :
135
- logger . set_level (JLevel .WARNING )
139
+ jlogger . setLevel (JLevel .WARNING )
136
140
self .__log_results_category_details (validation_result .get_warnings_messages (),
137
- _method_name , logger )
141
+ _method_name , jlogger )
138
142
139
143
for validation_result in self ._validation_result_dict .values ():
140
144
if validation_result .get_errors_count () > 0 :
141
- logger . set_level (JLevel .SEVERE )
145
+ jlogger . setLevel (JLevel .SEVERE )
142
146
self .__log_results_category_details (validation_result .get_errors_messages (),
143
- _method_name , logger )
147
+ _method_name , jlogger )
144
148
145
- logger . set_level (JLevel .INFO )
149
+ jlogger . setLevel (JLevel .INFO )
146
150
147
151
return
148
152
149
- def __log_results_category_details (self , category_messages , method_name , logger ):
153
+ def __log_results_category_details (self , category_messages , method_name , jlogger ):
150
154
"""
151
155
152
156
:param category_messages:
153
157
:param method_name:
154
- :param logger :
158
+ :param jlogger :
155
159
:return:
156
160
"""
157
161
158
162
for i in range (len (category_messages )):
159
163
messages = category_messages [i ]
160
- if 'message' in messages :
161
- logger .log (logger .get_level (), message = messages ['message' ],
162
- class_name = self ._class_name , method_name = method_name )
163
- elif 'valid_items' in messages :
164
- logger .log (logger .get_level (), message = messages ['valid_items' ],
165
- class_name = self ._class_name , method_name = method_name )
164
+ _log_category_message (jlogger , messages ['resource_id' ], messages ['args' ],
165
+ class_name = self ._class_name , method_name = method_name )
166
166
167
167
def __get_summary (self ):
168
168
"""
@@ -220,16 +220,28 @@ def _print_results_category_details(result_category, category_count, category_me
220
220
221
221
for i in range (len (category_messages )):
222
222
messages = category_messages [i ]
223
- if 'message' in messages :
224
- validation_utils .print_indent (
225
- validation_utils .format_message ('WLSDPLY-05205' , messages ['message' ]), indent_level + 2
226
- )
227
- elif 'valid_items' in messages :
228
- validation_utils .print_indent (
229
- validation_utils .format_message ('WLSDPLY-05206' , messages ['valid_items' ]), indent_level + 2
230
- )
231
- # if i == len(messages):
232
- # validation_utils.print_blank_lines()
223
+ validation_utils .print_indent (
224
+ ExceptionHelper .getMessage (messages ['resource_id' ], list (messages ['args' ])), indent_level + 2
225
+ )
226
+
227
+ return
228
+
229
+
230
+ def _log_category_message (jlogger , message , * args , ** kwargs ):
231
+ method = kwargs .get ('method_name' , None )
232
+ clazz = kwargs .get ('class_name' , None )
233
+ record = JLogRecord (jlogger .getLevel (), message )
234
+ record .setLoggerName (jlogger .getName ())
235
+ record .setMillis (JSystem .currentTimeMillis ())
236
+ record .setParameters (list (* args ))
237
+ record .setResourceBundle (jlogger .getResourceBundle ())
238
+ if clazz is not None :
239
+ record .setSourceClassName (clazz )
240
+ if method is not None :
241
+ record .setSourceMethodName (method )
242
+ record .setThreadID (int (JThread .currentThread ().getId ()))
243
+ jlogger .log (record )
244
+ return
233
245
234
246
235
247
class ValidationResult (object ):
@@ -268,41 +280,41 @@ def __str__(self):
268
280
269
281
return "{%s}" % tmp
270
282
271
- def add_error (self , error_item_message , valid_items_message = None ):
283
+ def add_error (self , resource_id , * args ):
272
284
"""
273
285
274
- :param error_item_message :
275
- :param valid_items_message :
286
+ :param resource_id :
287
+ :param args :
276
288
:return:
277
289
"""
278
290
self ._result ['errors' ]['count' ] += 1
279
- message = {'message' : error_item_message }
280
- if valid_items_message is not None :
281
- message ['valid_items' ] = valid_items_message
291
+ message = {'resource_id' : resource_id , 'args' : args }
282
292
self ._result ['errors' ]['messages' ].append (message )
293
+ return
283
294
284
- def add_warning (self , warning_item_message , valid_items_message = None ):
295
+ def add_warning (self , resource_id , * args ):
285
296
"""
286
297
287
- :param warning_item_message :
288
- :param valid_items_message :
298
+ :param resource_id :
299
+ :param args :
289
300
:return:
290
301
"""
291
302
self ._result ['warnings' ]['count' ] += 1
292
- message = {'message' : warning_item_message }
293
- if valid_items_message is not None :
294
- message ['valid_items' ] = valid_items_message
303
+ message = {'resource_id' : resource_id , 'args' : args }
295
304
self ._result ['warnings' ]['messages' ].append (message )
305
+ return
296
306
297
- def add_info (self , info_item_message ):
307
+ def add_info (self , resource_id , * args ):
298
308
"""
299
309
300
- :param info_item_message:
310
+ :param resource_id:
311
+ :param args:
301
312
:return:
302
313
"""
303
314
self ._result ['infos' ]['count' ] += 1
304
- message = {'message ' : info_item_message }
315
+ message = {'resource_id ' : resource_id , 'args' : args }
305
316
self ._result ['infos' ]['messages' ].append (message )
317
+ return
306
318
307
319
def get_validation_area (self ):
308
320
"""
@@ -353,20 +365,14 @@ def get_infos_messages(self):
353
365
"""
354
366
return self ._result ['infos' ]['messages' ]
355
367
356
- def print_details (self ):
357
- pass
358
-
359
368
def __to_string (self , category_name ):
360
369
tmp = ' "%s": {' % category_name
361
370
tmp += '"count": %d, ' % self ._result [category_name ]['count' ]
362
371
tmp += '"messages": ['
363
372
for message in self ._result [category_name ]['messages' ]:
364
373
tmp += "{"
365
- message_list = message .keys ()
366
- message_list .sort ()
367
- for name in message_list :
368
- value = message [name ]
369
- tmp += '"%s": "%s",' % (name , value )
374
+ tmp += '"%s": "%s",' % ('message' , ExceptionHelper .getMessage (message ['resource_id' ],
375
+ list (message ['args' ])))
370
376
if tmp [- 1 :] == ',' :
371
377
# Strip off trailing ','
372
378
tmp = tmp [:- 1 ]
0 commit comments