Skip to content
This repository has been archived by the owner on Aug 5, 2021. It is now read-only.

Commit

Permalink
support change ebs-optimized
Browse files Browse the repository at this point in the history
  • Loading branch information
Genki Sugawara committed Feb 2, 2014
1 parent 4359fc9 commit 02ed9d0
Show file tree
Hide file tree
Showing 2 changed files with 49 additions and 18 deletions.
21 changes: 17 additions & 4 deletions ec2ui/content/ec2ui/dialog_instance_type.xul
Expand Up @@ -46,22 +46,35 @@
</menupopup>
</menulist>

<hbox>
<label control="instance-type-dialog-instance-ebs-optimized" value="EBS-optimized:" />
<checkbox id="instance-type-dialog-instance-ebs-optimized" checked="false" />
</hbox>

<script><![CDATA[
function instanceTypeDialogOnLoad() {
var instanceLabel = window.arguments[0];
var currentData = window.arguments[1];
var currInstanceType = window.arguments[1];
var currEbsOptimized = window.arguments[2];
var label = document.getElementById('instance-type-dialog-instance-type-label');
label.value = instanceLabel + ' Instance Type';
var instanceType = document.getElementById('instance-type-dialog-instance-type');
instanceType.value = currentData;
instanceType.value = currInstanceType;
var ebsOptimized = document.getElementById('instance-type-dialog-instance-ebs-optimized');
ebsOptimized.checked = currEbsOptimized;
}
function instanceTypeDialogDoOK() {
var returnValue = window.arguments[2];
var returnValue = window.arguments[3];
var instanceType = document.getElementById('instance-type-dialog-instance-type');
returnValue.result = instanceType.selectedItem.value;
var ebsOptimized = document.getElementById('instance-type-dialog-instance-ebs-optimized');
returnValue.result = {
instanceType: instanceType.selectedItem.value,
ebsOptimized: ebsOptimized.checked
};
return true;
}
]]></script>
Expand Down
46 changes: 32 additions & 14 deletions ec2ui/content/ec2ui/instancesview.js
Expand Up @@ -1092,22 +1092,40 @@ var ec2ui_InstancesTreeView = {
var instanceLabel = instanceLabels[0]
var returnValue = {accepted:false , result:null};

ec2ui_session.controller.describeInstanceAttribute(instanceId, "instanceType", function(value) {
openDialog('chrome://ec2ui/content/dialog_instance_type.xul',
null,
'chrome,centerscreen,modal',
instanceLabel,
value,
returnValue);
ec2ui_session.controller.describeInstanceAttribute(instanceId, "instanceType", function(instanceType) {
ec2ui_session.controller.describeInstanceAttribute(instanceId, "ebsOptimized", function(ebsOptimized) {
ebsOptimized = (ebsOptimized == 'true')

openDialog('chrome://ec2ui/content/dialog_instance_type.xul',
null,
'chrome,centerscreen,modal',
instanceLabel,
instanceType,
ebsOptimized,
returnValue);

if (returnValue.result == null) {
return;
}

if (returnValue.result == null) {
return;
}
if(returnValue.result.instanceType != instanceType) {
var attribute = ['InstanceType', returnValue.result.instanceType];
ec2ui_session.controller.modifyInstanceAttribute(instanceId, attribute, function() {
if(returnValue.result.ebsOptimized == ebsOptimized) {
refreshed = true;
ec2ui_InstancesTreeView.refresh();
ec2ui_InstancesTreeView.selectByInstanceIds();
}
});
}

var attribute = ['InstanceType', returnValue.result];
ec2ui_session.controller.modifyInstanceAttribute(instanceId, attribute, function() {
ec2ui_InstancesTreeView.refresh();
ec2ui_InstancesTreeView.selectByInstanceIds();
if(returnValue.result.ebsOptimized != ebsOptimized) {
var attribute = ['EbsOptimized', returnValue.result.ebsOptimized];
ec2ui_session.controller.modifyInstanceAttribute(instanceId, attribute, function() {
ec2ui_InstancesTreeView.refresh();
ec2ui_InstancesTreeView.selectByInstanceIds();
});
}
});
});
},
Expand Down

0 comments on commit 02ed9d0

Please sign in to comment.