1
1
"""
2
- Copyright (c) 2020, Oracle Corporation and/or its affiliates.
2
+ Copyright (c) 2020, 2021, Oracle and/or its affiliates.
3
3
Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl.
4
4
"""
5
5
from oracle .weblogic .deploy .util import FileUtils
15
15
DOMAIN_RESOURCE_SCHEMA_PATH = 'oracle/weblogic/deploy/wko/' + DOMAIN_RESOURCE_SCHEMA_FILE
16
16
17
17
SIMPLE_TYPES = [
18
+ 'integer' ,
18
19
'number' ,
19
20
'string' ,
20
21
'boolean'
21
22
]
22
23
24
+ OBJECT_TYPES = [
25
+ 'object' ,
26
+ None
27
+ ]
28
+
23
29
UNSUPPORTED_FOLDERS = [
24
30
'status' ,
25
31
'metadata/initializers' ,
@@ -63,7 +69,7 @@ def is_single_folder(schema_map):
63
69
:return: True if the map identifies a single folder
64
70
"""
65
71
property_type = get_type (schema_map )
66
- if property_type == "object" :
72
+ if property_type in OBJECT_TYPES :
67
73
return get_map_element_type (schema_map ) is None
68
74
return False
69
75
@@ -76,7 +82,7 @@ def is_multiple_folder(schema_map):
76
82
"""
77
83
property_type = get_type (schema_map )
78
84
if property_type == "array" :
79
- return get_array_element_type (schema_map ) == "object"
85
+ return get_array_element_type (schema_map ) in OBJECT_TYPES
80
86
return False
81
87
82
88
@@ -91,7 +97,7 @@ def is_simple_map(schema_map):
91
97
:return: True if the map identifies a simple map
92
98
"""
93
99
property_type = get_type (schema_map )
94
- if property_type == "object" :
100
+ if property_type in OBJECT_TYPES :
95
101
return get_map_element_type (schema_map ) is not None
96
102
return False
97
103
@@ -104,7 +110,7 @@ def is_simple_array(schema_map):
104
110
"""
105
111
property_type = get_type (schema_map )
106
112
if property_type == "array" :
107
- return get_array_element_type (schema_map ) != "object"
113
+ return get_array_element_type (schema_map ) not in OBJECT_TYPES
108
114
return False
109
115
110
116
@@ -123,7 +129,8 @@ def get_array_item_info(schema_map):
123
129
124
130
125
131
def get_properties (schema_map ):
126
- return dictionary_utils .get_element (schema_map , "properties" )
132
+ properties = dictionary_utils .get_element (schema_map , "properties" )
133
+ return properties or {}
127
134
128
135
129
136
def get_type (schema_map ):
0 commit comments