Skip to content

Commit 6bad975

Browse files
committed
cleaning up inspect dialog message, behavior, and usages of ko.computed
1 parent 539e8d3 commit 6bad975

File tree

9 files changed

+93
-111
lines changed

9 files changed

+93
-111
lines changed

electron/app/locales/en/webui.json

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -809,12 +809,8 @@
809809
"wit-inspector-inspect-failed-title": "Inspect Image Failed",
810810
"wit-inspector-inspect-failed-error-message":"Unable to inspect image {{imageTag}}: {{error}}.",
811811
"wit-inspector-inspect-catch-all-error-message": "Inspect Image failed with an unexpected error: {{error}}",
812-
"wit-inspector-fmw-version-message": "Oracle Fusion Middleware {{version}} installed at {{path}}",
813-
"wit-inspector-fmw-message": "Oracle Fusion Middleware installed at {{path}}",
814-
"wit-inspector-java-version-message": "Java {{version}} installed at {{path}}",
815-
"wit-inspector-java-message": "Java installed at {{path}}",
816-
"wit-inspect-results-fmw-message": "Inspection of image {{imageTag}} found {{javaMessage}} and {{fmwMessage}}.",
817-
"wit-inspect-results-java-message": "Inspection of image {{imageTag}} found {{javaMessage}}.",
812+
"wit-inspect-results-fmw-message": "Inspection of image {{imageTag}} found both Java and Oracle Fusion Middleware installations.",
813+
"wit-inspect-results-java-message": "Inspection of image {{imageTag}} found a Java installation.",
818814
"wit-inspector-empty-contents-message": "Inspection of image {{imageTag}} did not find Java or Oracle Fusion Middleware installations",
819815

820816
"inspect-dialog-default-title": "Image Contents",
@@ -829,8 +825,8 @@
829825
"inspect-dialog-oracle-home-path-label": "Location:",
830826
"inspect-dialog-oracle-home-version-label": "Version:",
831827
"inspect-dialog-opatch-version-label": "OPatch Version:",
832-
"inspect-dialog-oracle-patches-section-title": "Oracle Patches Found:",
833-
"inspect-dialog-oracle-one-off-patches-label": "One-Off Patches:",
828+
"inspect-dialog-oracle-patches-section-title": "Oracle Patches:",
829+
"inspect-dialog-oracle-one-off-patches-label": "Oracle One-Off Patches:",
834830

835831
"wit-creator-image-not-create-message": "The Create New Primary Image option is off so there is nothing to do.",
836832
"wit-creator-aborted-error-title": "Create Image Aborted",

webui/src/js/utils/wit-inspector.js

Lines changed: 7 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -142,39 +142,15 @@ define(['utils/wit-actions-base', 'models/wkt-project', 'utils/i18n', 'utils/pro
142142
}
143143

144144
getInspectSuccessMessage(imageTag, imageContents) {
145-
const hasJdk = 'javaHome' in imageContents;
146-
const jdkPath = imageContents.javaHome;
147-
const jdkVersion = imageContents.javaVersion;
148-
const hasFmw = 'oracleHome' in imageContents;
149-
const fmwPath = imageContents.oracleHome;
150-
const fmwVersion = imageContents.wlsVersion;
151-
152-
const fmwMessage = this.getMessage('wit-inspector-fmw', hasFmw, fmwPath, fmwVersion);
153-
const javaMessage = this.getMessage('wit-inspector-java', hasJdk, jdkPath, jdkVersion);
154-
155-
let message;
156-
if (fmwMessage) {
157-
message = i18n.t('wit-inspect-results-fmw-message',
158-
{ imageTag: imageTag, javaMessage: javaMessage, fmwMessage: fmwMessage });
159-
} else if (javaMessage) {
160-
message = i18n.t('wit-inspect-results-java-message',
161-
{ imageTag: imageTag, javaMessage: javaMessage });
145+
let key;
146+
if ('oracleHome' in imageContents) {
147+
key = 'wit-inspect-results-fmw-message';
148+
} else if ('javaHome' in imageContents) {
149+
key = 'wit-inspect-results-java-message';
162150
} else {
163-
message = i18n.t('wit-inspector-empty-contents-message', { imageTag: imageTag });
151+
key = 'wit-inspector-empty-contents-message';
164152
}
165-
return message;
166-
}
167-
168-
getMessage(i18nPrefix, isInstalled, path, version) {
169-
let message;
170-
if (isInstalled) {
171-
if (version) {
172-
message = i18n.t(`${i18nPrefix}-version-message`, { path: path, version: version });
173-
} else {
174-
message = i18n.t(`${i18nPrefix}-message`, { path: path });
175-
}
176-
}
177-
return message;
153+
return i18n.t(key, { imageTag: imageTag });
178154
}
179155
}
180156

webui/src/js/viewModels/app-main.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ function(accUtils, ko, i18n, project, wktConsole, dialogHelper, viewHelper, Arra
198198

199199
this.collapseArrowClass = ko.computed(() => {
200200
return this.navCollapsed() ? 'oj-ux-ico-arrow-right' : 'oj-ux-ico-arrow-left';
201-
});
201+
}, this);
202202

203203
this.collapseNav = () => {
204204
this.navCollapsed(!this.navCollapsed());

webui/src/js/viewModels/domain-design-view.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,15 +33,15 @@ function (project, accUtils, utils, ko, i18n, BufferingDataProvider,
3333

3434
this.isDomainInPV = ko.computed(() => {
3535
return this.project.settings.targetDomainLocation.observable() === 'pv';
36-
});
36+
}, this);
3737

3838
this.isDomainInImage = ko.computed(() => {
3939
return this.project.settings.targetDomainLocation.observable() === 'dii';
40-
});
40+
}, this);
4141

4242
this.isModelInImage = ko.computed(() => {
4343
return this.project.settings.targetDomainLocation.observable() === 'mii';
44-
});
44+
}, this);
4545

4646
// Disable JRF as the domain type since the application does not (yet?) provide the mechanisms required
4747
// to specify the JRF schemas or the database connectivity and credential information needed to run RCU.
@@ -70,7 +70,7 @@ function (project, accUtils, utils, ko, i18n, BufferingDataProvider,
7070

7171
this.usingAuxImage = ko.computed(() => {
7272
return this.isModelInImage() && this.project.image.useAuxImage.value;
73-
});
73+
}, this);
7474

7575
this.hasNoClusters = () => {
7676
return this.project.k8sDomain.clusters.value.length === 0;

webui/src/js/viewModels/image-code-view.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,12 @@ function(accUtils, ko, i18n, project, ImageScriptGenerator, ArrayDataProvider) {
4242

4343
this.disablePrimaryImageScript = ko.computed(() => {
4444
return !this.project.image.createPrimaryImage.value;
45-
});
45+
}, this);
4646

4747
this.disableAuxiliaryImageScript = ko.computed(() => {
4848
return !(this.project.settings.targetDomainLocation.value === 'mii' &&
4949
this.project.image.useAuxImage.value && this.project.image.createAuxImage.value);
50-
});
50+
}, this);
5151

5252
this.subviews = [
5353
{
@@ -69,7 +69,7 @@ function(accUtils, ko, i18n, project, ImageScriptGenerator, ArrayDataProvider) {
6969

7070
this.tabsStatus = ko.computed(() => {
7171
return this.disablePrimaryImageScript() && this.disableAuxiliaryImageScript() ? 'disabled' : 'enabled';
72-
});
72+
}, this);
7373

7474
this.codeViewScriptLanguage = ko.observable(ImageScriptGenerator.getDefaultScriptingLanguage());
7575
this.codeViewScriptLanguages = [

webui/src/js/viewModels/image-design-view-impl.js

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -60,15 +60,15 @@ define(['utils/wkt-logger'],
6060

6161
this.disableAuxImage = ko.computed(() => {
6262
return !(this.targetDomainLocationIsMII() && this.project.image.useAuxImage.value);
63-
});
63+
}, this);
6464

6565
this.mainCreateImageSwitchHelp = ko.computed(() => {
6666
if (this.project.image.useAuxImage.value) {
6767
return this.labelMapper('create-image-aux-help');
6868
} else {
6969
return this.labelMapper('create-image-help');
7070
}
71-
});
71+
}, this);
7272

7373
this.mainImageTagHelpMII = () => {
7474
let key = 'image-tag-mii-use-help';
@@ -116,15 +116,15 @@ define(['utils/wkt-logger'],
116116
break;
117117
}
118118
return this.labelMapper(key);
119-
});
119+
}, this);
120120

121121
this.auxImageTagHelp = ko.computed(() => {
122122
if (this.project.image.createAuxImage.value) {
123123
return this.labelMapper('aux-image-tag-create-help');
124124
} else {
125125
return this.labelMapper('aux-image-tag-use-help');
126126
}
127-
});
127+
}, this);
128128

129129
this.subviews = [
130130
{id: 'fmwImage', name: this.labelMapper('image-tab')},
@@ -144,7 +144,7 @@ define(['utils/wkt-logger'],
144144
} else {
145145
return this.labelMapper('fmw-title');
146146
}
147-
});
147+
}, this);
148148

149149
this.mainImageRequiresWdt = () => {
150150
let result = false;
@@ -210,9 +210,15 @@ define(['utils/wkt-logger'],
210210
return !this.project.image.baseImageContentsIncludesMiddleware();
211211
};
212212

213-
this.needsInstallers = () => {
214-
215-
};
213+
this.needsInstallers = ko.computed(function() {
214+
let result = true;
215+
if (this.project.image.useCustomBaseImage.observable()) {
216+
if (this.project.image.baseImageContentsIncludesMiddleware()) {
217+
result = false;
218+
}
219+
}
220+
return result;
221+
}, this);
216222

217223
this.chooseJDK = () => {
218224
window.api.ipc.invoke('get-jdk-installer-location')

webui/src/js/viewModels/network-page.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,11 @@ function(accUtils, ko, i18n, project) {
3636
this.topMessage = ko.computed(() => {
3737
const messageKey = this.connectOk() ? 'proceed' : 'warning';
3838
return this.labelMapper(messageKey);
39-
});
39+
}, this);
4040

4141
this.topClass = ko.computed(() => {
4242
return this.connectOk() ? 'wkt-proceed' : 'wkt-warning';
43-
});
43+
}, this);
4444

4545
this.tryConnect = () => {
4646
this.tryMessage(this.labelMapper('trying'));

webui/src/js/viewModels/project-settings-page.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ function(accUtils, ko, i18n, project, ArrayDataProvider) {
5555
key = 'java-directory-location-with-pv-answer-message';
5656
}
5757
return this.labelMapper(key);
58-
});
58+
}, this);
5959

6060
this.requiresOracleHome = () => {
6161
return this.project.settings.targetDomainLocation.value !== 'pv';
@@ -103,7 +103,7 @@ function(accUtils, ko, i18n, project, ArrayDataProvider) {
103103
key = 'build-tool-type-with-pv-answer-message';
104104
}
105105
return this.labelMapper(key);
106-
});
106+
}, this);
107107

108108
this.getBuilderExecutableFilePathLabel = () => {
109109
let name = this.getDockerLabelForBuilderType(this.project.settings.builderType.value) || '<Unknown>';

webui/src/js/views/image-design-view.html

Lines changed: 56 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -231,66 +231,70 @@ <h6 class="wkt-subheading"><oj-bind-text value="[[labelMapper('patches-title')]]
231231
</oj-bind-if>
232232
</div>
233233
</oj-bind-if>
234-
235-
<oj-bind-if test="[[mainImageRequiresWdt() === true]]">
236-
<div class="oj-panel">
237-
<h6 class="wkt-subheading"><oj-bind-text value="[[labelMapper('wdt-installer-title')]]"></oj-bind-text></h6>
238-
<oj-form-layout max-columns="1" direction="row">
239-
<oj-switch label-hint="[[labelMapper('use-wdt-installer-label')]]"
240-
value="{{project.image.useLatestWdtVersion.observable}}"
241-
help.instruction="[[labelMapper('use-wdt-installer-help')]]">
242-
</oj-switch>
243-
</oj-form-layout>
244-
<oj-bind-if test="[[project.image.useLatestWdtVersion.observable() === false]]">
245-
<oj-form-layout max-columns="2" direction="row">
246-
<oj-input-text label-hint="[[labelMapper('wdt-installer-label')]]"
247-
value="{{project.image.wdtInstaller.observable}}"
248-
help.instruction="[[labelMapper('wdt-installer-help')]]">
249-
<oj-button slot="end" display="icons" chroming="borderless" on-oj-action="[[chooseWDT]]">
250-
<span slot="endIcon" class="oj-ux-ico-file-text" role="img"></span>
251-
</oj-button>
252-
</oj-input-text>
253-
<oj-input-text label-hint="[[labelMapper('wdt-installer-version-label')]]"
254-
value="{{project.image.wdtInstallerVersion.observable}}"
255-
help.instruction="[[labelMapper('wdt-installer-version-help')]]">
256-
</oj-input-text>
257-
</oj-form-layout>
258-
</oj-bind-if>
259-
</div>
260-
</oj-bind-if>
261234
</div>
262235
</oj-bind-if>
263236

264-
<oj-collapsible expanded='false'>
265-
<h6 slot="header" class="wkt-subheading"><oj-bind-text value="[[labelMapper('page-design-advanced-label')]]"></oj-bind-text></h6>
237+
<div>
266238
<oj-bind-if test="[[mainImageRequiresWdt() === true]]">
267239
<div class="oj-panel">
268-
<h6 class="wkt-subheading"><oj-bind-text value="[[labelMapper('wdt-section-title')]]"></oj-bind-text></h6>
269-
<oj-form-layout max-columns="2" direction="row">
270-
<oj-bind-if test="[[targetDomainLocationIsDII() === true]]">
271-
<oj-select-single label-hint="[[labelMapper('domain-type-label')]]"
272-
value="{{project.image.targetDomainType.observable}}"
273-
data="{{wdtDomainTypesDP}}"
274-
help.instruction="[[labelMapper('domain-type-help')]]">
275-
</oj-select-single>
276-
</oj-bind-if>
277-
<oj-bind-if test="[[targetDomainLocationIsDII() === true]]">
278-
<oj-input-text label-hint="[[labelMapper('wdt-domain-home-label')]]"
279-
value="{{project.image.domainHomePath.observable}}"
280-
help.instruction="[[labelMapper('wdt-domain-home-help')]]">
281-
</oj-input-text>
282-
</oj-bind-if>
283-
<oj-input-text label-hint="[[labelMapper('wdt-home-label')]]"
284-
value="{{project.image.wdtHomePath.observable}}"
285-
help.instruction="[[labelMapper('wdt-home-help')]]">
286-
</oj-input-text>
287-
<oj-input-text label-hint="[[labelMapper('wdt-model-home-label')]]"
288-
value="{{project.image.modelHomePath.observable}}"
289-
help.instruction="[[labelMapper('wdt-model-home-help')]]">
290-
</oj-input-text>
240+
<h6 class="wkt-subheading"><oj-bind-text value="[[labelMapper('wdt-installer-title')]]"></oj-bind-text></h6>
241+
<oj-form-layout max-columns="1" direction="row">
242+
<oj-switch label-hint="[[labelMapper('use-wdt-installer-label')]]"
243+
value="{{project.image.useLatestWdtVersion.observable}}"
244+
help.instruction="[[labelMapper('use-wdt-installer-help')]]">
245+
</oj-switch>
291246
</oj-form-layout>
247+
<oj-bind-if test="[[project.image.useLatestWdtVersion.observable() === false]]">
248+
<oj-form-layout max-columns="2" direction="row">
249+
<oj-input-text label-hint="[[labelMapper('wdt-installer-label')]]"
250+
value="{{project.image.wdtInstaller.observable}}"
251+
help.instruction="[[labelMapper('wdt-installer-help')]]">
252+
<oj-button slot="end" display="icons" chroming="borderless" on-oj-action="[[chooseWDT]]">
253+
<span slot="endIcon" class="oj-ux-ico-file-text" role="img"></span>
254+
</oj-button>
255+
</oj-input-text>
256+
<oj-input-text label-hint="[[labelMapper('wdt-installer-version-label')]]"
257+
value="{{project.image.wdtInstallerVersion.observable}}"
258+
help.instruction="[[labelMapper('wdt-installer-version-help')]]">
259+
</oj-input-text>
260+
</oj-form-layout>
261+
</oj-bind-if>
292262
</div>
293263
</oj-bind-if>
264+
</div>
265+
266+
<oj-collapsible expanded='false'>
267+
<h6 slot="header" class="wkt-subheading"><oj-bind-text value="[[labelMapper('page-design-advanced-label')]]"></oj-bind-text></h6>
268+
<div>
269+
<oj-bind-if test="[[mainImageRequiresWdt() === true]]">
270+
<div class="oj-panel">
271+
<h6 class="wkt-subheading"><oj-bind-text value="[[labelMapper('wdt-section-title')]]"></oj-bind-text></h6>
272+
<oj-form-layout max-columns="2" direction="row">
273+
<oj-bind-if test="[[targetDomainLocationIsDII() === true]]">
274+
<oj-select-single label-hint="[[labelMapper('domain-type-label')]]"
275+
value="{{project.image.targetDomainType.observable}}"
276+
data="{{wdtDomainTypesDP}}"
277+
help.instruction="[[labelMapper('domain-type-help')]]">
278+
</oj-select-single>
279+
</oj-bind-if>
280+
<oj-bind-if test="[[targetDomainLocationIsDII() === true]]">
281+
<oj-input-text label-hint="[[labelMapper('wdt-domain-home-label')]]"
282+
value="{{project.image.domainHomePath.observable}}"
283+
help.instruction="[[labelMapper('wdt-domain-home-help')]]">
284+
</oj-input-text>
285+
</oj-bind-if>
286+
<oj-input-text label-hint="[[labelMapper('wdt-home-label')]]"
287+
value="{{project.image.wdtHomePath.observable}}"
288+
help.instruction="[[labelMapper('wdt-home-help')]]">
289+
</oj-input-text>
290+
<oj-input-text label-hint="[[labelMapper('wdt-model-home-label')]]"
291+
value="{{project.image.modelHomePath.observable}}"
292+
help.instruction="[[labelMapper('wdt-model-home-help')]]">
293+
</oj-input-text>
294+
</oj-form-layout>
295+
</div>
296+
</oj-bind-if>
297+
</div>
294298

295299
<div class="oj-panel">
296300
<h6 class="wkt-subheading"><oj-bind-text value="[[labelMapper('build-config-title')]]"></oj-bind-text></h6>

0 commit comments

Comments
 (0)