ManifestDeserializer.h (1235B)
1 // Copyright (c) Microsoft Corporation. 2 // Licensed under the MIT License. 3 #pragma once 4 #include "Rest/Schema/1_1/Json/ManifestDeserializer.h" 5 6 namespace AppInstaller::Repository::Rest::Schema::V1_4::Json 7 { 8 // Manifest Deserializer. 9 struct ManifestDeserializer : public V1_1::Json::ManifestDeserializer 10 { 11 std::optional<Manifest::ManifestLocalization> DeserializeLocale(const web::json::value& localeJsonObject) const override; 12 13 std::optional<Manifest::InstallationMetadataInfo> DeserializeInstallationMetadata(const web::json::value& installationMetadataJsonObject) const override; 14 15 protected: 16 std::optional<Manifest::ManifestInstaller> DeserializeInstaller(const web::json::value& installerJsonObject) const override; 17 18 Manifest::InstallerTypeEnum ConvertToInstallerType(std::string_view in) const override; 19 20 Manifest::ExpectedReturnCodeEnum ConvertToExpectedReturnCodeEnum(std::string_view in) const override; 21 22 Manifest::ManifestInstaller::ExpectedReturnCodeInfo DeserializeExpectedReturnCodeInfo(const web::json::value& expectedReturnCodeJsonObject) const override; 23 24 Manifest::ManifestVer GetManifestVersion() const override; 25 }; 26 }