@@ -496,15 +496,16 @@ def _check_attribute_exists(self, location, generated_attribute, generated_attri
496
496
_logger .entering (location .get_folder_path (), generated_attribute ,
497
497
class_name = CLASS_NAME , method_name = _method_name )
498
498
499
- exists , model_attribute_name = self ._does_alias_attribute_exist (location , generated_attribute ,
499
+ exists , model_attribute_name , rod = self ._does_alias_attribute_exist (location , generated_attribute ,
500
500
generated_attribute_info , alias_name_map )
501
501
if exists :
502
- if model_attribute_name is None :
502
+ if model_attribute_name is None or rod :
503
503
# if the alias attribute is correctly identified as read-only, it's not an error, but we cannot
504
504
# verify any of the other attribute information using aliases methods. And since its read-only
505
505
# we don't really care about any of the attribute information. This is also true for clear
506
506
# text password fields.
507
- exists = False
507
+ if not rod :
508
+ exists = False
508
509
# clear text attributes (don't have Encrypted on the end) are not defined in the definitions
509
510
# they are only artificially known and ignored by alias definitions
510
511
read_only = \
@@ -544,9 +545,15 @@ def _does_alias_attribute_exist(self, location, generated_attribute, generated_a
544
545
lower_case_list = alias_name_map .values ()
545
546
exists = True
546
547
model_attribute = None
548
+ rod = False
547
549
try :
548
550
# no exception is thrown if it is found but read only, just returns empty model_attribute name
549
551
model_attribute = self ._alias_helper .get_model_attribute_name (location , generated_attribute )
552
+ # if value returned check to see if access type is ROD. If so change model_attribute to None
553
+ if model_attribute is not None :
554
+ wlst_attributes = self ._alias_helper .get_wlst_access_rod_attribute_names (location )
555
+ if wlst_attributes is not None and generated_attribute in wlst_attributes :
556
+ rod = True
550
557
except AliasException :
551
558
exists = False
552
559
@@ -580,7 +587,7 @@ def _does_alias_attribute_exist(self, location, generated_attribute, generated_a
580
587
class_name = CLASS_NAME , method_name = _method_name )
581
588
582
589
_logger .exiting (result = model_attribute , class_name = CLASS_NAME , method_name = _method_name )
583
- return exists , model_attribute
590
+ return exists , model_attribute , rod
584
591
585
592
def _is_generated_attribute_readonly (self , location , generated_attribute , generated_attribute_info ,
586
593
alias_get_required_attribute_list = None ):
0 commit comments