Skip to content

Commit 557827c

Browse files
committed
Added checks for JMS and file stores; updated, sorted blacklists; added doc
1 parent 1d85f60 commit 557827c

File tree

5 files changed

+139
-45
lines changed

5 files changed

+139
-45
lines changed

core/src/main/python/wlsdeploy/tool/create/domain_typedef.py

+73-8
Original file line numberDiff line numberDiff line change
@@ -120,27 +120,92 @@ def get_rcu_schemas(self):
120120
return list(self._domain_typedef['rcuSchemas'])
121121

122122
def is_system_app(self, name):
123+
"""
124+
Determine if the specified name matches a WLS system application.
125+
:param name: the name to be checked
126+
:return: True if the name matches a system application, False otherwise
127+
"""
123128
return self._is_system_name(name, 'apps')
124129

125-
def is_system_shared_library(self, name):
126-
return self._is_system_name(name, 'shared-libraries')
130+
def is_system_coherence_cluster(self, name):
131+
"""
132+
Determine if the specified name matches a WLS system Coherence cluster.
133+
:param name: the name to be checked
134+
:return: True if the name matches a system Coherence cluster, False otherwise
135+
"""
136+
return self._is_system_name(name, 'coherence-clusters')
127137

128138
def is_system_datasource(self, name):
139+
"""
140+
Determine if the specified name matches a WLS system datasource.
141+
:param name: the name to be checked
142+
:return: True if the name matches a system datasource, False otherwise
143+
"""
129144
return self._is_system_name(name, 'datasources')
130145

131-
def is_system_coherence_cluster(self, name):
132-
return self._is_system_name(name, 'coherence-clusters')
146+
def is_system_file_store(self, name):
147+
"""
148+
Determine if the specified name matches a WLS system file store.
149+
:param name: the name to be checked
150+
:return: True if the name matches a system file store, False otherwise
151+
"""
152+
return self._is_system_name(name, 'file-stores')
133153

134-
def is_system_wldf(self, name):
135-
return self._is_system_name(name, 'wldf')
154+
def is_system_jms(self, name):
155+
"""
156+
Determine if the specified name matches a WLS system JMS resource.
157+
:param name: the name to be checked
158+
:return: True if the name matches a system JMS resource, False otherwise
159+
"""
160+
return self._is_system_name(name, 'jms')
136161

137-
def is_system_startup_class(self, name):
138-
return self._is_system_name(name, 'startup-classes')
162+
def is_system_jms_server(self, name):
163+
"""
164+
Determine if the specified name matches a WLS system JMS server.
165+
:param name: the name to be checked
166+
:return: True if the name matches a system JMS server, False otherwise
167+
"""
168+
return self._is_system_name(name, 'jms-servers')
169+
170+
def is_system_shared_library(self, name):
171+
"""
172+
Determine if the specified name matches a WLS system shared library.
173+
:param name: the name to be checked
174+
:return: True if the name matches a system shared library, False otherwise
175+
"""
176+
return self._is_system_name(name, 'shared-libraries')
139177

140178
def is_system_shutdown_class(self, name):
179+
"""
180+
Determine if the specified name matches a WLS system shutdown class.
181+
:param name: the name to be checked
182+
:return: True if the name matches a system shutdown class, False otherwise
183+
"""
141184
return self._is_system_name(name, 'shutdown-classes')
142185

186+
def is_system_startup_class(self, name):
187+
"""
188+
Determine if the specified name matches a WLS system startup class.
189+
:param name: the name to be checked
190+
:return: True if the name matches a system startup class, False otherwise
191+
"""
192+
return self._is_system_name(name, 'startup-classes')
193+
194+
def is_system_wldf(self, name):
195+
"""
196+
Determine if the specified name matches a WLS system WLDF resource.
197+
:param name: the name to be checked
198+
:return: True if the name matches a system WLDF resource, False otherwise
199+
"""
200+
return self._is_system_name(name, 'wldf')
201+
143202
def _is_system_name(self, name, key):
203+
"""
204+
Determine if the specified name matches a WLS name of the specified type key.
205+
:param name: the name to be checked
206+
:param key: the key of the type to be checked against
207+
:return: True if the name matches a system name, False otherwise
208+
"""
144209
if key in self._system_elements:
145210
system_names = self._system_elements[key]
146211
for system_name in system_names:

core/src/main/python/wlsdeploy/tool/discover/common_resources_discoverer.py

+10-6
Original file line numberDiff line numberDiff line change
@@ -171,14 +171,18 @@ def get_file_stores(self):
171171
file_stores = self._find_names_in_folder(location)
172172
if file_stores is not None:
173173
_logger.info('WLSDPLY-06346', len(file_stores), class_name=_class_name, method_name=_method_name)
174+
typedef = self._model_context.get_domain_typedef()
174175
name_token = self._alias_helper.get_name_token(location)
175176
for file_store in file_stores:
176-
_logger.info('WLSDPLY-06347', file_store, class_name=_class_name, method_name=_method_name)
177-
result[file_store] = OrderedDict()
178-
location.add_name_token(name_token, file_store)
179-
self._populate_model_parameters(result[file_store], location)
180-
self.archive_file_store_directory(file_store, result[file_store])
181-
location.remove_name_token(name_token)
177+
if typedef.is_system_file_store(file_store):
178+
_logger.info('WLSDPLY-06363', file_store, class_name=_class_name, method_name=_method_name)
179+
else:
180+
_logger.info('WLSDPLY-06347', file_store, class_name=_class_name, method_name=_method_name)
181+
result[file_store] = OrderedDict()
182+
location.add_name_token(name_token, file_store)
183+
self._populate_model_parameters(result[file_store], location)
184+
self.archive_file_store_directory(file_store, result[file_store])
185+
location.remove_name_token(name_token)
182186
_logger.exiting(class_name=_class_name, method_name=_method_name, result=result)
183187
return model_top_folder_name, result
184188

core/src/main/python/wlsdeploy/tool/discover/jms_resources_discoverer.py

+23-15
Original file line numberDiff line numberDiff line change
@@ -61,14 +61,18 @@ def get_jms_servers(self):
6161
jms_servers = self._find_names_in_folder(location)
6262
if jms_servers is not None:
6363
_logger.info('WLSDPLY-06470', len(jms_servers), class_name=_class_name, method_name=_method_name)
64+
typedef = self._model_context.get_domain_typedef()
6465
name_token = self._alias_helper.get_name_token(location)
6566
for jms_server in jms_servers:
66-
_logger.info('WLSDPLY-06471', jms_server, class_name=_class_name, method_name=_method_name)
67-
location.add_name_token(name_token, jms_server)
68-
result[jms_server] = OrderedDict()
69-
self._populate_model_parameters(result[jms_server], location)
70-
self._discover_subfolders(result[jms_server], location)
71-
location.remove_name_token(name_token)
67+
if typedef.is_system_jms_server(jms_server):
68+
_logger.info('WLSDPLY-06490', jms_server, class_name=_class_name, method_name=_method_name)
69+
else:
70+
_logger.info('WLSDPLY-06471', jms_server, class_name=_class_name, method_name=_method_name)
71+
location.add_name_token(name_token, jms_server)
72+
result[jms_server] = OrderedDict()
73+
self._populate_model_parameters(result[jms_server], location)
74+
self._discover_subfolders(result[jms_server], location)
75+
location.remove_name_token(name_token)
7276

7377
_logger.exiting(class_name=_class_name, method_name=_method_name, result=result)
7478
return model_top_folder_name, result
@@ -161,17 +165,21 @@ def get_jms_system_resources(self):
161165
jms_resources = self._find_names_in_folder(location)
162166
if jms_resources is not None:
163167
_logger.info('WLSDPLY-06478', len(jms_resources), class_name=_class_name, method_name=_method_name)
168+
typedef = self._model_context.get_domain_typedef()
164169
name_token = self._alias_helper.get_name_token(location)
165170
for jms_resource in jms_resources:
166-
_logger.info('WLSDPLY-06479', jms_resource, class_name=_class_name, method_name=_method_name)
167-
result[jms_resource] = OrderedDict()
168-
location.add_name_token(name_token, jms_resource)
169-
self._populate_model_parameters(result[jms_resource], location)
170-
model_subfolder_name, subfolder_result = self._get_subdeployments(location)
171-
discoverer.add_to_model_if_not_empty(result[jms_resource], model_subfolder_name, subfolder_result)
172-
model_subfolder_name, subfolder_result = self._get_jms_resources(location)
173-
discoverer.add_to_model_if_not_empty(result[jms_resource], model_subfolder_name, subfolder_result)
174-
location.remove_name_token(name_token)
171+
if typedef.is_system_jms(jms_resource):
172+
_logger.info('WLSDPLY-06491', jms_resource, class_name=_class_name, method_name=_method_name)
173+
else:
174+
_logger.info('WLSDPLY-06479', jms_resource, class_name=_class_name, method_name=_method_name)
175+
result[jms_resource] = OrderedDict()
176+
location.add_name_token(name_token, jms_resource)
177+
self._populate_model_parameters(result[jms_resource], location)
178+
model_subfolder_name, subfolder_result = self._get_subdeployments(location)
179+
discoverer.add_to_model_if_not_empty(result[jms_resource], model_subfolder_name, subfolder_result)
180+
model_subfolder_name, subfolder_result = self._get_jms_resources(location)
181+
discoverer.add_to_model_if_not_empty(result[jms_resource], model_subfolder_name, subfolder_result)
182+
location.remove_name_token(name_token)
175183

176184
_logger.exiting(class_name=_class_name, method_name=_method_name, result=result)
177185
return model_top_folder_name, result

core/src/main/resources/oracle/weblogic/deploy/messages/wlsdeploy_rb.properties

+3
Original file line numberDiff line numberDiff line change
@@ -509,6 +509,7 @@ WLSDPLY-06359=Collect script from location {0} for WLDF script action {1}
509509
WLSDPLY-06360=Unable to locate and add {0} Script file {1} to archive file : {2}
510510
WLSDPLY-06361=Skipping system JDBC System Resource {0}
511511
WLSDPLY-06362=Skipping system WLDF System Resource {0}
512+
WLSDPLY-06363=Skipping system File Store {0}
512513

513514
# deployments_discoverer.py
514515
WLSDPLY-06380=Discovering domain model deployments
@@ -575,6 +576,8 @@ WLSDPLY-06487=Adding Group Param with Sub-Deployment name {0} to {1}
575576
WLSDPLY-06488=Key missing for Foreign JNDI Property Foreign Server {0} to {1}. The JNDI Property \
576577
will not be added to the discovered model.
577578
WLSDPLY-06489=Adding JNDI Property with name {0} to {1}
579+
WLSDPLY-06490=Skipping system JMS Server {0}
580+
WLSDPLY-06491=Skipping system JMS System Resource {0}
578581

579582
# topology_discoverer.py
580583
WLSDPLY-06600=Discovering domain model topology

core/src/main/typedefs/JRF.json

+30-16
Original file line numberDiff line numberDiff line change
@@ -66,44 +66,55 @@
6666
},
6767
"system-elements": {
6868
"apps": [
69+
"coherence-transaction-rar",
70+
"DMS Application%%",
71+
"em",
6972
"opss-rest",
7073
"state-management-provider-memory-rar",
71-
"DMS Application%%",
72-
"coherence-transaction-rar",
73-
"em"
74+
"wsm-pm"
7475
],
7576
"coherence-clusters": [
7677
"defaultCoherenceCluster"
7778
],
7879
"datasources": [
79-
"WLSSchemaDataSource",
8080
"LocalSvcTblDataSource",
81-
"opss-data-source",
82-
"opss-audit-viewDS",
81+
"mds-owsm",
8382
"opss-audit-DBDS",
83+
"opss-audit-viewDS",
84+
"opss-data-source",
85+
"WLSSchemaDataSource"
86+
],
87+
"file-stores": [
88+
"JRFWSAsyncFileStore",
8489
"mds-owsm"
8590
],
91+
"jms": [
92+
"JRFWSAsyncJmsModule"
93+
],
94+
"jms-servers": [
95+
"JRFWSAsyncJmsServer"
96+
],
8697
"shared-libraries": [
98+
"adf.oracle.businesseditor%%",
8799
"adf.oracle.domain%%",
88100
"adf.oracle.domain.webapp%%",
89-
"adf.oracle.businesseditor%%",
90101
"em_common%%",
91102
"em_core_ppc_pojo_jar",
92103
"em_error%%",
93104
"em_sdkcore_ppc_public_pojo_jar",
94-
"emas",
95105
"emagentsdk_jar%%",
96106
"emagentsdkimpl_jar%%",
97107
"emagentsdkimplpriv_jar%%",
108+
"emas",
98109
"emcore",
99110
"emcore_jar",
100-
"emcoresdk_jar%%",
101-
"emcoreintsdk_jar%%",
102-
"emcoresdkimpl_jar%%",
111+
"emcoreclient_jar",
103112
"emcorecommon_jar",
104113
"emcoreconsole_jar",
114+
"emcoreintsdk_jar%%",
105115
"emcorepbs_jar",
106-
"emcoreclient_jar",
116+
"emcoresdk_jar%%",
117+
"emcoresdkimpl_jar%%",
107118
"jsf%%",
108119
"jstl%%",
109120
"log4j_jar%%",
@@ -112,21 +123,24 @@
112123
"ohw-rcf%%",
113124
"ohw-uix%%",
114125
"oracle.adf.dconfigbeans%%",
115-
"oracle.adf.management%%",
116-
"oracle.adf.desktopintegration.model%%",
117126
"oracle.adf.desktopintegration%%",
118-
"oracle.bi.jbips%%",
119-
"oracle.bi.composer%%",
127+
"oracle.adf.desktopintegration.model%%",
128+
"oracle.adf.management%%",
120129
"oracle.bi.adf.model.slib%%",
121130
"oracle.bi.adf.view.slib%%",
122131
"oracle.bi.adf.webcenter.slib%%",
132+
"oracle.bi.composer%%",
133+
"oracle.bi.jbips%%",
123134
"oracle.dconfig-infra%%",
124135
"oracle.jrf.system.filter",
125136
"oracle.jsp.next%%",
126137
"oracle.pwdgen%%",
127138
"oracle.sdp.client%%",
139+
"oracle.sdp.messaging%%",
128140
"oracle.webcenter.composer%%",
129141
"oracle.webcenter.skin%%",
142+
"oracle.wsm.console%%",
143+
"oracle.wsm.idmrest%%",
130144
"oracle.wsm.seedpolicies%%",
131145
"orai18n-adf%%",
132146
"owasp.esapi%%",

0 commit comments

Comments
 (0)