Gilad Chaplik has posted comments on this change. Change subject: common: introduce qos package, and storage qos ......................................................................
Patch Set 5: (9 comments) thanks for the review Yevgeny :-) ! http://gerrit.ovirt.org/#/c/27093/5/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/qos/BaseQos.java File backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/qos/BaseQos.java: Line 17: */ Line 18: public abstract class BaseQos extends IVdcQueryable implements BusinessEntity<Guid>, Serializable { Line 19: private static final long serialVersionUID = 1122772549710787678L; Line 20: private Guid id = Guid.Empty; Line 21: private QosType qoSType; > 1. changing of the type isn't allowed, so make it final and remove the defa about final, will get back to you. for others I think it is okay (c'tor see line 31, S capital because it's QoS). Line 22: Line 23: @NotNull(message = "ACTION_TYPE_FAILED_NETWORK_QOS_INVALID_DC_ID") Line 24: private Guid storagePoolId; Line 25: Line 27: @Size(min = 1, max = BusinessEntitiesDefinitions.GENERAL_NAME_SIZE, message = "QOS_NAME_TOO_LONG") Line 28: @ValidI18NName(message = "QOS_NAME_INVALID") Line 29: private String name; Line 30: Line 31: private BaseQos() { > Is this needed? yes. for GWT. Line 32: } Line 33: Line 34: public BaseQos(QosType qoSType) { Line 35: this(); Line 32: } Line 33: Line 34: public BaseQos(QosType qoSType) { Line 35: this(); Line 36: this.qoSType = qoSType; > is null type allowed? if not i'd add a validation here validation in ctor.... don't like it. Line 37: } Line 38: /** Line 39: * @return object's type Line 40: */ Line 42: return qoSType; Line 43: } Line 44: Line 45: /** Line 46: * Shows object'ss limits according to type > Is this javadoc block relevant here? javadoc is always good. you didn't understand why I added getString(), will fix it to be more readable/understandable. Line 47: * Line 48: * @return Line 49: */ Line 50: public abstract String getString(); Line 46: * Shows object'ss limits according to type Line 47: * Line 48: * @return Line 49: */ Line 50: public abstract String getString(); > 1. Should this be public? getString() will be used later on for view and aggregation; I'd rather save toString() and of-course it should be public, like toString(). Line 51: Line 52: /** Line 53: * Check whether specific derived values are equal. Line 54: * Line 54: * Line 55: * @param other Line 56: * @return are equals Line 57: */ Line 58: public abstract boolean equalValues(BaseQos other); > Should this be public? yes. we check for equal values in other places, that's why it's separated (see vnic) Line 59: Line 60: /** Line 61: * @return derived values hash code Line 62: */ Line 112: return false; Line 113: if (getClass() != obj.getClass()) Line 114: return false; Line 115: BaseQos other = (BaseQos) obj; Line 116: if (id == null) { > This block is quite repetitive. Looks like someone though about that before I reject any use of un-generated equals method. eclipse does it good enough Line 117: if (other.id != null) Line 118: return false; Line 119: } else if (!id.equals(other.id)) Line 120: return false; http://gerrit.ovirt.org/#/c/27093/5/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/qos/QosType.java File backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/qos/QosType.java: Line 6: Line 7: public enum QosType implements Identifiable { Line 8: STORAGE(1); Line 9: Line 10: private int value; > I'd call that id that's how enums is implemented in ovirt. Line 11: private static final HashMap<Integer, QosType> valueToStatus = new HashMap<Integer, QosType>(); Line 12: Line 13: static { Line 14: for (QosType status : values()) { Line 9: Line 10: private int value; Line 11: private static final HashMap<Integer, QosType> valueToStatus = new HashMap<Integer, QosType>(); Line 12: Line 13: static { > IMHO the following is more elegant way: same. if you still disagree please ask devel list for global refactoring Line 14: for (QosType status : values()) { Line 15: valueToStatus.put(status.getValue(), status); Line 16: } Line 17: } -- To view, visit http://gerrit.ovirt.org/27093 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: I1a9af59277b5055453159f002f19046c0051d8ff Gerrit-PatchSet: 5 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Gilad Chaplik <[email protected]> Gerrit-Reviewer: Allon Mureinik <[email protected]> Gerrit-Reviewer: Doron Fediuck <[email protected]> Gerrit-Reviewer: Gilad Chaplik <[email protected]> Gerrit-Reviewer: Kobi Ianko <[email protected]> Gerrit-Reviewer: Lior Vernia <[email protected]> Gerrit-Reviewer: Liron Ar <[email protected]> Gerrit-Reviewer: Moti Asayag <[email protected]> Gerrit-Reviewer: Yevgeny Zaspitsky <[email protected]> Gerrit-Reviewer: [email protected] Gerrit-Reviewer: oVirt Jenkins CI Server Gerrit-HasComments: Yes _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
