VirtualMachineTemplate IOperationSource <VirtualMachineTemplate> .CreateResult(Response response, CancellationToken cancellationToken)
        {
            using var document = JsonDocument.Parse(response.ContentStream);
            var data = VirtualMachineTemplateData.DeserializeVirtualMachineTemplateData(document.RootElement);

            return(new VirtualMachineTemplate(_armClient, data));
        }
        internal static VirtualMachineTemplatesList DeserializeVirtualMachineTemplatesList(JsonElement element)
        {
            Optional <string> nextLink = default;
            IReadOnlyList <VirtualMachineTemplateData> value = default;

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("nextLink"))
                {
                    nextLink = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("value"))
                {
                    List <VirtualMachineTemplateData> array = new List <VirtualMachineTemplateData>();
                    foreach (var item in property.Value.EnumerateArray())
                    {
                        array.Add(VirtualMachineTemplateData.DeserializeVirtualMachineTemplateData(item));
                    }
                    value = array;
                    continue;
                }
            }
            return(new VirtualMachineTemplatesList(nextLink.Value, value));
        }
Пример #3
0
        public async Task GetAllInSubscription()
        {
            var vmtemplateName = Recording.GenerateAssetName("testvmtemplate");
            var _virtualMachineTemplateCollection = await GetVirtualMachineTemplateCollectionAsync();

            var _extendedLocation = new ExtendedLocation()
            {
                Name = CustomLocationId,
                ExtendedLocationType = EXTENDED_LOCATION_TYPE
            };
            var virtualMachineTemplateBody = new VirtualMachineTemplateData(DefaultLocation);

            virtualMachineTemplateBody.MoRefId          = "vm-75";
            virtualMachineTemplateBody.VCenterId        = VcenterId;
            virtualMachineTemplateBody.ExtendedLocation = _extendedLocation;
            // create virtual machine template
            VirtualMachineTemplate vmtemplate1 = (await _virtualMachineTemplateCollection.CreateOrUpdateAsync(WaitUntil.Completed, vmtemplateName, virtualMachineTemplateBody)).Value;

            Assert.IsNotNull(vmtemplate1);
            Assert.AreEqual(vmtemplate1.Id.Name, vmtemplateName);
            vmtemplate1 = null;
            await foreach (var vmtemplate in DefaultSubscription.GetVirtualMachineTemplatesAsync())
            {
                if (vmtemplate.Data.Name == vmtemplateName)
                {
                    vmtemplate1 = vmtemplate;
                }
            }
            Assert.NotNull(vmtemplate1);
        }
Пример #4
0
        public async Task Exists()
        {
            var vmtemplateName = Recording.GenerateAssetName("testvmtemplate");
            var _virtualMachineTemplateCollection = await GetVirtualMachineTemplateCollectionAsync();

            var _extendedLocation = new ExtendedLocation()
            {
                Name = CustomLocationId,
                ExtendedLocationType = EXTENDED_LOCATION_TYPE
            };
            var virtualMachineTemplateBody = new VirtualMachineTemplateData(DefaultLocation);

            virtualMachineTemplateBody.MoRefId          = "vm-72";
            virtualMachineTemplateBody.VCenterId        = VcenterId;
            virtualMachineTemplateBody.ExtendedLocation = _extendedLocation;
            // create virtual machine template
            VirtualMachineTemplate vmtemplate1 = (await _virtualMachineTemplateCollection.CreateOrUpdateAsync(WaitUntil.Completed, vmtemplateName, virtualMachineTemplateBody)).Value;

            Assert.IsNotNull(vmtemplate1);
            Assert.AreEqual(vmtemplate1.Id.Name, vmtemplateName);
            // check for exists vm template
            vmtemplate1 = await _virtualMachineTemplateCollection.GetIfExistsAsync(vmtemplateName);

            Assert.AreEqual(vmtemplate1.Id.Name, vmtemplateName);
        }
Пример #5
0
        public async Task GetAll()
        {
            var vmtemplateName = Recording.GenerateAssetName("testvmtemplate");
            var _virtualMachineTemplateCollection = await GetVirtualMachineTemplateCollectionAsync();

            var _extendedLocation = new ExtendedLocation()
            {
                Name = CustomLocationId,
                ExtendedLocationType = EXTENDED_LOCATION_TYPE
            };
            var virtualMachineTemplateBody = new VirtualMachineTemplateData(DefaultLocation);

            virtualMachineTemplateBody.MoRefId          = "vm-11788";
            virtualMachineTemplateBody.VCenterId        = VcenterId;
            virtualMachineTemplateBody.ExtendedLocation = _extendedLocation;
            // create virtual machine template
            VirtualMachineTemplate vmtemplate1 = (await _virtualMachineTemplateCollection.CreateOrUpdateAsync(WaitUntil.Completed, vmtemplateName, virtualMachineTemplateBody)).Value;

            Assert.IsNotNull(vmtemplate1);
            Assert.AreEqual(vmtemplate1.Id.Name, vmtemplateName);
            int count = 0;

            await foreach (var vmtemplate in _virtualMachineTemplateCollection.GetAllAsync())
            {
                count++;
            }
            Assert.GreaterOrEqual(count, 1);
        }