void ImdsClient::s_onInstanceInfoAcquired()

in source/ImdsClient.cpp [160:186]


            void ImdsClient::s_onInstanceInfoAcquired(
                const aws_imds_instance_info *instanceInfo,
                int errorCode,
                void *userData)
            {
                WrappedCallbackArgs<OnInstanceInfoAcquired> *callbackArgs =
                    static_cast<WrappedCallbackArgs<OnInstanceInfoAcquired> *>(userData);
                InstanceInfoView info;
                info.marketplaceProductCodes = ArrayListToVector<ByteCursor, StringView>(
                    &(instanceInfo->marketplace_product_codes), ByteCursorToStringView);
                info.availabilityZone = ByteCursorToStringView(instanceInfo->availability_zone);
                info.privateIp = ByteCursorToStringView(instanceInfo->private_ip);
                info.version = ByteCursorToStringView(instanceInfo->version);
                info.instanceId = ByteCursorToStringView(instanceInfo->instance_id);
                info.billingProducts = ArrayListToVector<ByteCursor, StringView>(
                    &(instanceInfo->billing_products), ByteCursorToStringView);
                info.instanceType = ByteCursorToStringView(instanceInfo->instance_type);
                info.accountId = ByteCursorToStringView(instanceInfo->account_id);
                info.imageId = ByteCursorToStringView(instanceInfo->image_id);
                info.pendingTime = aws_date_time_as_epoch_secs(&(instanceInfo->pending_time));
                info.architecture = ByteCursorToStringView(instanceInfo->architecture);
                info.kernelId = ByteCursorToStringView(instanceInfo->kernel_id);
                info.ramdiskId = ByteCursorToStringView(instanceInfo->ramdisk_id);
                info.region = ByteCursorToStringView(instanceInfo->region);
                callbackArgs->callback(info, errorCode, callbackArgs->userData);
                Aws::Crt::Delete(callbackArgs, callbackArgs->allocator);
            }