Roy Golan has posted comments on this change.

Change subject: core: import/export from template version
......................................................................


Patch Set 17:

(7 comments)

http://gerrit.ovirt.org/#/c/22737/17/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateCommand.java
File 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmTemplateCommand.java:

Line 201:             retVal = validateMacAddress(Entities.<VmNic, 
VmNetworkInterface> upcast(getVmTemplate().getInterfaces()));
Line 202:         }
Line 203: 
Line 204:         // if this is a template version, check base template exist
Line 205:         if (retVal && 
!getVmTemplate().getId().equals(getVmTemplate().getBaseTemplateId())) {
I think this worth an isVersioned() or maybe isBaseVersion() helper method on 
template so the logic is encapsulated and we don't need to go figure it
Line 206:             VmTemplate baseTemplate = 
getVmTemplateDAO().get(getVmTemplate().getBaseTemplateId());
Line 207:             if (baseTemplate == null) {
Line 208:                 retVal = false;
Line 209:                 
addCanDoActionMessage(VdcBllMessages.ACTION_TYPE_FAILED_TEMPLATE_DOES_NOT_EXIST);


http://gerrit.ovirt.org/#/c/22737/17/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java
File 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java:

Line 750:     
VALIDATION_STORAGE_CONNECTION_EMPTY_CONNECTION(ErrorType.BAD_PARAMETERS),
Line 751:     
ACTION_TYPE_FAILED_ACTION_IS_SUPPORTED_ONLY_FOR_ISCSI_DOMAINS(ErrorType.BAD_PARAMETERS),
Line 752:     
ACTION_TYPE_FAILED_STORAGE_CONNECTION_ID_EMPTY(ErrorType.BAD_PARAMETERS),
Line 753:     
ACTION_TYPE_FAILED_STORAGE_CONNECTION_ID_NOT_EMPTY(ErrorType.BAD_PARAMETERS),
Line 754:     
ACTION_TYPE_FAILED_BASE_TEMPLATE_DOES_NOT_EXIST(ErrorType.CONFLICT),
actually a BAD_PARAM I think
Line 755:     // Cluster Policy messages
Line 756:     
ACTION_TYPE_FAILED_CLUSTER_POLICY_PARAMETERS_INVALID(ErrorType.BAD_PARAMETERS),
Line 757:     
ACTION_TYPE_FAILED_CLUSTER_POLICY_NAME_INUSE(ErrorType.BAD_PARAMETERS),
Line 758:     
ACTION_TYPE_FAILED_CLUSTER_POLICY_LOCKED(ErrorType.BAD_PARAMETERS),


http://gerrit.ovirt.org/#/c/22737/17/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ovf/OvfTemplateReader.java
File 
backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ovf/OvfTemplateReader.java:

Line 198:         }
Line 199: 
Line 200:         // in case template version is missing, we assume its version 
1
Line 201:         if (_vmTemplate.getTemplateVersionNumber() == null) {
Line 202:             _vmTemplate.setTemplateVersionNumber(1);
magic
Line 203:         } else {
Line 204:             node = content.SelectSingleNode("BaseTemplateId");
Line 205:             if (node != null) {
Line 206:                 
_vmTemplate.setBaseTemplateId(Guid.createGuidFromString(node.innerText));


Line 211:         if (_vmTemplate.getBaseTemplateId() == null) {
Line 212:             _vmTemplate.setBaseTemplateId(_vmTemplate.getId());
Line 213:         }
Line 214: 
Line 215:         node = content.SelectSingleNode("templateVersionNumber");
this node starts with "t" and TemplateVersionName in "T"  - pls sync
Line 216:         if (node != null) {
Line 217:             if (!StringUtils.isEmpty(node.innerText)) {
Line 218:                 
_vmTemplate.setTemplateVersionNumber(Integer.parseInt(node.innerText));
Line 219:             }


http://gerrit.ovirt.org/#/c/22737/17/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ovf/OvfTemplateWriter.java
File 
backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ovf/OvfTemplateWriter.java:

Line 44:         
_writer.WriteRaw(String.valueOf(_vmTemplate.isTrustedService()));
Line 45:         _writer.WriteEndElement();
Line 46:         _writer.WriteStartElement("TemplateType");
Line 47:         _writer.WriteRaw(_vmTemplate.getTemplateType().name());
Line 48:         _writer.WriteEndElement();
all of the other elements are being written even if they portentially hold null 
values. that way the OVF is complete all the time. we should maintain that 
behaviour
Line 49:         if (_vmTemplate.getBaseTemplateId() != null) {
Line 50:             _writer.WriteStartElement("BaseTemplateId");
Line 51:             
_writer.WriteRaw(_vmTemplate.getBaseTemplateId().toString());
Line 52:             _writer.WriteEndElement();


Line 50:             _writer.WriteStartElement("BaseTemplateId");
Line 51:             
_writer.WriteRaw(_vmTemplate.getBaseTemplateId().toString());
Line 52:             _writer.WriteEndElement();
Line 53:         }
Line 54:         _writer.WriteStartElement("templateVersionNumber");
"t"
Line 55:         
_writer.WriteRaw(String.valueOf(_vmTemplate.getTemplateVersionNumber()));
Line 56:         _writer.WriteEndElement();
Line 57:         if (_vmTemplate.getTemplateVersionName() != null) {
Line 58:             _writer.WriteStartElement("TemplateVersionName");


Line 54:         _writer.WriteStartElement("templateVersionNumber");
Line 55:         
_writer.WriteRaw(String.valueOf(_vmTemplate.getTemplateVersionNumber()));
Line 56:         _writer.WriteEndElement();
Line 57:         if (_vmTemplate.getTemplateVersionName() != null) {
Line 58:             _writer.WriteStartElement("TemplateVersionName");
"T"
Line 59:             _writer.WriteRaw(_vmTemplate.getTemplateVersionName());
Line 60:             _writer.WriteEndElement();
Line 61:         }
Line 62:     }


-- 
To view, visit http://gerrit.ovirt.org/22737
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I3dd434f5857a707f12508ebb6ab20e46a4f1be3c
Gerrit-PatchSet: 17
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Omer Frenkel <[email protected]>
Gerrit-Reviewer: Alissa Bonas <[email protected]>
Gerrit-Reviewer: Arik Hadas <[email protected]>
Gerrit-Reviewer: Omer Frenkel <[email protected]>
Gerrit-Reviewer: Roy Golan <[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

Reply via email to