bug 11814: connect template and instance details data when sending command to resource

This commit is contained in:
Kelven Yang 2011-11-17 14:49:23 -08:00
parent 83d7757f2e
commit 7021fd3cb5
1 changed files with 14 additions and 2 deletions

View File

@ -18,18 +18,24 @@
package com.cloud.hypervisor;
import java.util.List;
import java.util.Map;
import com.cloud.agent.api.Command;
import com.cloud.agent.api.to.NicTO;
import com.cloud.agent.api.to.VirtualMachineTO;
import com.cloud.agent.api.to.VolumeTO;
import com.cloud.offering.ServiceOffering;
import com.cloud.storage.dao.VMTemplateDetailsDao;
import com.cloud.utils.component.AdapterBase;
import com.cloud.utils.component.Inject;
import com.cloud.vm.NicProfile;
import com.cloud.vm.VirtualMachine;
import com.cloud.vm.VirtualMachineProfile;
public abstract class HypervisorGuruBase extends AdapterBase implements HypervisorGuru {
@Inject VMTemplateDetailsDao _templateDetailsDao;
protected HypervisorGuruBase() {
super();
}
@ -80,8 +86,14 @@ public abstract class HypervisorGuruBase extends AdapterBase implements Hypervis
to.setArch("x86_64");
}
to.setDetails(vm.getDetails());
long templateId = vm.getTemplateId();
Map<String, String> details = _templateDetailsDao.findDetails(templateId);
assert(details != null);
Map<String, String> detailsInVm = vm.getDetails();
if(detailsInVm != null) {
details.putAll(detailsInVm);
}
to.setDetails(details);
return to;
}