Daniel Erez has posted comments on this change. Change subject: webadmin: introduce storage qos ......................................................................
Patch Set 6: (8 comments) http://gerrit.ovirt.org/#/c/29530/6//COMMIT_MSG Commit Message: Line 7: webadmin: introduce storage qos Line 8: Line 9: * storage qos subtab under datacenters. Line 10: * create/update/remove dialog storage qos. Line 11: * backend integration in GUI. > added a feature page link, is there anything in particular? Yes, for each item mention the relevant section in the feature page. Line 12: Line 13: Change-Id: I4d5c14409be9e1fad1df3487cf3615f4b4955930 http://gerrit.ovirt.org/#/c/29530/6/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java File backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java: Line 140: DefaultMtu, Line 141: LiveMergeSupported(ConfigAuthType.User), Line 142: maxThroughputUpperBoundQosValue, Line 143: maxReadThroughputUpperBoundQosValue, Line 144: maxWriteThroughputUpperBoundQosValue, are all of these hidden in the user portal? Line 145: maxIopsUpperBoundQosValue, Line 146: maxReadIopsUpperBoundQosValue, Line 147: maxWriteIopsUpperBoundQosValue; Line 148: http://gerrit.ovirt.org/#/c/29530/6/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/qos/DataCenterStorageQosListModel.java File frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/qos/DataCenterStorageQosListModel.java: Line 37: } Line 38: Line 39: @Override Line 40: protected RemoveQosModel<StorageQos> getRemoveQosModel() { Line 41: return new RemoveStorageQosModel(this); > do you have a simple alternative? use events instead.. Line 42: } Line 43: Line 44: @Override Line 45: protected String getListName() { http://gerrit.ovirt.org/#/c/29530/6/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/qos/EditStorageQosModel.java File frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/qos/EditStorageQosModel.java: Line 22: @Override Line 23: protected QosParametersBase<StorageQos> getParameters() { Line 24: QosParametersBase<StorageQos> qosParametersBase = new QosParametersBase<StorageQos>(); Line 25: qosParametersBase.setQos(getQos()); Line 26: qosParametersBase.setQosId(getQos().getId()); > a base parameter class for all qos objects, used for all CRUD commands, req why not extract the id from the object? Line 27: return qosParametersBase; Line 28: } Line 29: Line 30: @Override http://gerrit.ovirt.org/#/c/29530/6/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/qos/RemoveQosModel.java File frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/qos/RemoveQosModel.java: Line 87: setItems(list); Line 88: } else { Line 89: setMessage(getRemoveQosMessage(profiles.size())); Line 90: Line 91: ArrayList<String> list = new ArrayList<String>(); > cannot reuse. then use object or something.. these two pieces of code are too similar for not being able to extract :) Line 92: for (ProfileBase item : profiles) { Line 93: list.add(item.getName()); Line 94: } Line 95: setItems(list); http://gerrit.ovirt.org/#/c/29530/6/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/qos/StorageQosMetricParametersModel.java File frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/qos/StorageQosMetricParametersModel.java: Line 69: if (!getEnabled().getEntity()) { Line 70: return true; Line 71: } Line 72: Line 73: getTotal().validateEntity(new IValidation[] { > I prefer to have a single method dedicated for validation, don't see any be why not? a refactor here can mean less code, hence, less bugs :) Line 74: new NotEmptyValidation(), Line 75: new IntegerValidation(0, Line 76: (Integer) AsyncDataProvider.getInstance().getConfigValuePreConverted(maxTotal)) }); Line 77: getRead().validateEntity(new IValidation[] { http://gerrit.ovirt.org/#/c/29530/6/frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIMessages.java File frontend/webadmin/modules/uicompat/src/main/java/org/ovirt/engine/ui/uicompat/UIMessages.java: Line 303: Line 304: @DefaultMessage("This Network QoS is used by {0} Vnic Profiles.\nAre you sure you want to remove this Network QoS?\n\n Profiles using this QoS:\n") Line 305: String removeNetworkQoSMessage(int numOfProfiles); Line 306: Line 307: @DefaultMessage("This Storage QoS is used by {0} Disk Profiles.\nAre you sure you want to remove this Storage QoS?\n\n Profiles using this QoS:\n") > what? i mean, why 'Profiles using this QoS:' is needed as apart of this string Line 308: String removeStorageQoSMessage(int numOfProfiles); Line 309: Line 310: @DefaultMessage("{0} ({1} Socket(s), {2} Core(s) per Socket)") Line 311: String cpuInfoMessage(int numOfCpus, int sockets, int coresPerSocket); http://gerrit.ovirt.org/#/c/29530/6/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/qos/StorageQosWidget.java File frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/qos/StorageQosWidget.java: Line 85: @WithElementId Line 86: IntegerEntityModelTextBoxOnlyEditor iopsWriteEditor; Line 87: Line 88: private StorageQosParametersModel model; Line 89: private final IEventListener availabilityListener; > which presenter? it's a widget. didn't you create a PresenterWidget? Line 90: Line 91: public StorageQosWidget(ApplicationConstants constants) { Line 92: throughputEnabled = new EntityModelCheckBoxEditor(Align.RIGHT); Line 93: iopsEnabled = new EntityModelCheckBoxEditor(Align.RIGHT); -- To view, visit http://gerrit.ovirt.org/29530 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: I4d5c14409be9e1fad1df3487cf3615f4b4955930 Gerrit-PatchSet: 6 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Gilad Chaplik <gchap...@redhat.com> Gerrit-Reviewer: Daniel Erez <de...@redhat.com> Gerrit-Reviewer: Gilad Chaplik <gchap...@redhat.com> Gerrit-Reviewer: Kanagaraj M <kmayi...@redhat.com> Gerrit-Reviewer: Tal Nisan <tni...@redhat.com> Gerrit-Reviewer: automat...@ovirt.org Gerrit-Reviewer: oVirt Jenkins CI Server Gerrit-HasComments: Yes _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches