public VirtualMachineOperation CreateFrom(VirtualMachineCreation virtualMachineCreation, DiskCreation diskCreation, Disk sourceDisk)
        {
            Mapping.VirtualMachineCreation mappingVirtualMachineCreation = new Mapping.VirtualMachineCreation(virtualMachineCreation);
            Mapping.DiskCreation mappingDiskCreation = new Mapping.DiskCreation(diskCreation);

            return new VirtualMachineOperation(this.service.VirtualMachineCreateFrom(this.apiKey, mappingVirtualMachineCreation, mappingDiskCreation, sourceDisk.Id), null);
        }
        public VirtualMachine Single(int virtualMachineId, DataCenter[] dataCenters = null, Interface[] interfaces = null, Disk[] disks = null)
        {
            Mapping.VirtualMachine mappingVirtualMachine = this.service.VirtualMachineInfo(this.apiKey, virtualMachineId);

            if (mappingVirtualMachine != null)
                return new VirtualMachine(mappingVirtualMachine, dataCenters, interfaces, disks);
            else
                return null;
        }
        public VirtualMachine[] List(DataCenter[] dataCenters, Interface[] interfaces, Disk[] disks)
        {
            Mapping.VirtualMachine[] mappingVirtualMachines = this.service.VirtualMachineList(this.apiKey);

            List<VirtualMachine> virtualMachineList = new List<VirtualMachine>();
            foreach (Mapping.VirtualMachine mappingVirtualMachine in mappingVirtualMachines)
                virtualMachineList.Add(new VirtualMachine(mappingVirtualMachine, dataCenters, interfaces, disks));

            VirtualMachine[] virtualMachines = virtualMachineList.ToArray();

            return virtualMachines;
        }
Exemplo n.º 4
0
 public Image(Mapping.Image image, DataCenter[] dataCenters = null, Disk[] disks = null)
 {
     this.Id = image.Id;
     this.Label = image.Label;
     this.DataCenterId = image.DataCenterId;
     if (dataCenters != null)
         this.DataCenter = dataCenters.SingleOrDefault(d => d.Id == image.DataCenterId);
     this.DiskId = image.DiskId;
     if (disks != null)
         this.Disk = disks.SingleOrDefault(d => d.Id == image.DiskId);
     this.Visibility = Converter.ToImageVisibility(image.Visibility);
     this.Architecture = Converter.ToImageArchitecture(image.OsArchitecture);
     this.AuthorId = image.AuthorId;
 }
Exemplo n.º 5
0
        public DiskResource(Disk disk)
        {
            this.Id = disk.Id;
            this.Name = disk.Name;
            this.Resource = disk;
            this.CanAttach = true;

            List<IResourceDetail> details = new List<IResourceDetail>();

            details.Add(new DataCenterResourceDetail(disk.DataCenter));
            details.Add(new TextResourceDetail(DiskResource.DetailSizeName, String.Format(DiskResource.DetailSizeValueTemplate, disk.Size)));
            details.Add(new TextResourceDetail(DiskResource.DetailTypeName, disk.Type.ToString()));

            this.Details = details.ToArray();
        }
Exemplo n.º 6
0
        public DiskResourceDetail(Disk disk, VirtualMachine virtualMachine)
        {
            this.disk = disk;
            this.virtualMachine = virtualMachine;

            this.Value = String.Format(DiskResourceDetail.ValueTemplate, disk.Name, (disk.Size / 1000));

            if (disk.IsBootDisk) this.Type = ResourceDetailType.SystemDisk;
            else this.Type = ResourceDetailType.Disk;

            ResourceDetailAction detachAction = new ResourceDetailAction(DiskResourceDetail.DetachCommandName, true);
            detachAction.Command = new RelayCommand((parameter) => this.Detach(parameter));

            ResourceDetailAction editAction = new ResourceDetailAction(DiskResourceDetail.EditCommandName);
            editAction.Command = new RelayCommand((parameter) => this.Edit(parameter));

            this.Actions = new ResourceDetailAction[]
            {
                detachAction,
                editAction
            };
        }
 public VirtualMachineOperation DetachDisk(VirtualMachine virtualMachine, Disk disk)
 {
     return new VirtualMachineOperation(this.service.VirtualMachineDetachDisk(this.apiKey, virtualMachine.Id, disk.Id), virtualMachine, disk);
 }
Exemplo n.º 8
0
        public DiskOperation Update(Disk disk, DiskUpdate diskUpdate)
        {
            Mapping.DiskUpdate mappingDiskUpdate = new Mapping.DiskUpdate(diskUpdate);

            return new DiskOperation(this.service.DiskUpdate(this.apiKey, disk.Id, mappingDiskUpdate), disk);
        }
Exemplo n.º 9
0
 public DiskOperation Delete(Disk disk)
 {
     return new DiskOperation(this.service.DiskDelete(this.apiKey, disk.Id), disk);
 }
Exemplo n.º 10
0
        public DiskOperation CreateFrom(Disk sourceDisk, DiskCopy diskCopy)
        {
            Mapping.DiskCopy mappingDiskCopy = new Mapping.DiskCopy(diskCopy);

            return new DiskOperation(this.service.DiskCreateFrom(this.apiKey, mappingDiskCopy, sourceDisk.Id));
        }