From 26f6a714c87cc2b4655f861bc642e4b09fc8c69b Mon Sep 17 00:00:00 2001 From: chcurran <82187351+carlitosan@users.noreply.github.com> Date: Tue, 24 Aug 2021 15:14:20 -0700 Subject: [PATCH 1/4] initial fix for version scan Signed-off-by: chcurran <82187351+carlitosan@users.noreply.github.com> --- .../ScriptCanvas/Components/GraphUpgrade.h | 4 ++-- .../Tools/UpgradeTool/VersionExplorer.h | 5 ++++- .../Tools/UpgradeTool/VersionExplorer.ui | 20 +++++++++++++++++++ .../Code/Editor/View/Windows/mainwindow.ui | 1 + 4 files changed, 27 insertions(+), 3 deletions(-) diff --git a/Gems/ScriptCanvas/Code/Editor/Include/ScriptCanvas/Components/GraphUpgrade.h b/Gems/ScriptCanvas/Code/Editor/Include/ScriptCanvas/Components/GraphUpgrade.h index bf692554e5..df7fa0535f 100644 --- a/Gems/ScriptCanvas/Code/Editor/Include/ScriptCanvas/Components/GraphUpgrade.h +++ b/Gems/ScriptCanvas/Code/Editor/Include/ScriptCanvas/Components/GraphUpgrade.h @@ -88,13 +88,13 @@ namespace ScriptCanvasEditor void Enter() override { - //Log("ENTER >> %s", GetName()); + Log("ENTER >> %s", GetName()); OnEnter(); } ExitStatus Exit() override { - //Log("EXIT << %s", GetName()); + Log("EXIT << %s", GetName()); return OnExit(); } diff --git a/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.h b/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.h index 30f73dca92..73ce19e4e1 100644 --- a/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.h +++ b/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.h @@ -117,9 +117,10 @@ namespace ScriptCanvasEditor size_t m_currentAssetIndex = 0; size_t m_inspectedAssets = 0; + AZStd::vector> m_activeAssets; + IUpgradeRequests::AssetList m_assetsToInspect; IUpgradeRequests::AssetList::iterator m_inspectingAsset; - using UpgradeAssets = AZStd::vector>; UpgradeAssets m_assetsToUpgrade; UpgradeAssets::iterator m_inProgressAsset; @@ -157,5 +158,7 @@ namespace ScriptCanvasEditor bool m_overwriteAll = false; void PerformMove(AZ::Data::Asset& asset, const AZStd::string& source, const AZStd::string& target); + + void Log(const char* format, ...); }; } diff --git a/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.ui b/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.ui index d02ddd0054..3e2604dd99 100644 --- a/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.ui +++ b/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.ui @@ -321,6 +321,26 @@ + + + + Force Upgrade + + + false + + + + + + + Verbose + + + false + + + diff --git a/Gems/ScriptCanvas/Code/Editor/View/Windows/mainwindow.ui b/Gems/ScriptCanvas/Code/Editor/View/Windows/mainwindow.ui index ddb8100821..1208a55a64 100644 --- a/Gems/ScriptCanvas/Code/Editor/View/Windows/mainwindow.ui +++ b/Gems/ScriptCanvas/Code/Editor/View/Windows/mainwindow.ui @@ -128,6 +128,7 @@ + From 214700a73e0fa2610e61e605a336d5937b870762 Mon Sep 17 00:00:00 2001 From: chcurran <82187351+carlitosan@users.noreply.github.com> Date: Tue, 24 Aug 2021 17:38:34 -0700 Subject: [PATCH 2/4] Finish repair for scanning for upgrade tool Signed-off-by: chcurran <82187351+carlitosan@users.noreply.github.com> --- .../Source/ElementInformationSerializer.inl | 7 +- .../Tools/UpgradeTool/VersionExplorer.cpp | 130 ++++++++++++------ .../Tools/UpgradeTool/VersionExplorer.h | 8 +- .../Data/BehaviorContextObject.cpp | 2 +- 4 files changed, 98 insertions(+), 49 deletions(-) diff --git a/Gems/ExpressionEvaluation/Code/Source/ElementInformationSerializer.inl b/Gems/ExpressionEvaluation/Code/Source/ElementInformationSerializer.inl index 8d297571ad..10b002034e 100644 --- a/Gems/ExpressionEvaluation/Code/Source/ElementInformationSerializer.inl +++ b/Gems/ExpressionEvaluation/Code/Source/ElementInformationSerializer.inl @@ -28,7 +28,7 @@ namespace AZ private: using ElementInformation = ExpressionEvaluation::ElementInformation; - static const char* EmptyAnyIdentifier; + static constexpr AZStd::string_view EmptyAnyIdentifier = "Empty AZStd::any"; static bool IsEmptyAny(const rapidjson::Value& typeId) { @@ -161,8 +161,7 @@ namespace AZ else { rapidjson::Value emptyAny; - AZStd::string emptyAnyName(EmptyAnyIdentifier); - emptyAny.SetString(emptyAnyName.c_str(), aznumeric_caster(emptyAnyName.size()), context.GetJsonAllocator()); + emptyAny.SetString(EmptyAnyIdentifier.data(), aznumeric_caster(EmptyAnyIdentifier.size()), context.GetJsonAllocator()); outputValue.AddMember ( rapidjson::StringRef(JsonSerialization::TypeIdFieldIdentifier) , AZStd::move(emptyAny) @@ -176,6 +175,4 @@ namespace AZ }; AZ_CLASS_ALLOCATOR_IMPL(ElementInformationSerializer, SystemAllocator, 0); - - const char* ElementInformationSerializer::EmptyAnyIdentifier = "Empty AZStd::any"; } diff --git a/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.cpp b/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.cpp index b9aff660f2..828f55cd0f 100644 --- a/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.cpp +++ b/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.cpp @@ -76,6 +76,21 @@ namespace ScriptCanvasEditor } + void VersionExplorer::Log(const char* format, ...) + { + if (m_ui->verbose->isChecked()) + { + char sBuffer[1024]; + va_list ArgList; + va_start(ArgList, format); + azvsnprintf(sBuffer, sizeof(sBuffer), format, ArgList); + sBuffer[sizeof(sBuffer) - 1] = '\0'; + va_end(ArgList); + + AZ_TracePrintf("Script Canvas", "%s\n", sBuffer); + } + } + void VersionExplorer::OnClose() { reject(); @@ -96,17 +111,27 @@ namespace ScriptCanvasEditor { m_inProgress = true; AZ::Data::AssetInfo& assetToUpgrade = *m_inspectingAsset; - m_currentAsset = AZ::Data::AssetManager::Instance().GetAsset(assetToUpgrade.m_assetId, assetToUpgrade.m_assetType, AZ::Data::AssetLoadBehavior::PreLoad); + Log("SystemTick::ProcessState::Scan: %s pre-blocking load hint", m_currentAsset.GetHint().c_str()); m_currentAsset.BlockUntilLoadComplete(); if (m_currentAsset.IsReady()) { // The asset is ready, grab its info m_inProgress = true; - InspectAsset(m_currentAsset); + InspectAsset(m_currentAsset, assetToUpgrade); } + else + { + m_ui->tableWidget->insertRow(static_cast(m_inspectedAssets)); + QTableWidgetItem* rowName = new QTableWidgetItem + ( tr(AZStd::string::format("Error: %s", assetToUpgrade.m_relativePath.c_str()).c_str())); - m_ui->spinner->SetText(QObject::tr("%1").arg(m_currentAsset.GetHint().c_str())); + m_ui->tableWidget->setItem(static_cast(m_inspectedAssets), static_cast(ColumnAsset), rowName); + Log("SystemTick::ProcessState::Scan: %s post-blocking load, problem loading asset", assetToUpgrade.m_relativePath.c_str()); + ++m_currentAssetIndex; + ++m_failedAssets; + ScanComplete(m_currentAsset); + } } break; @@ -148,7 +173,6 @@ namespace ScriptCanvasEditor AZ::Data::AssetManager::Instance().DispatchEvents(); AZ::SystemTickBus::ExecuteQueuedEvents(); - } // Backup @@ -297,10 +321,7 @@ namespace ScriptCanvasEditor if (graphComponent) { - if (!graphComponent->UpgradeGraph(asset)) - { - // The upgrade was skipped due to nothing to update (though if we're here, we identified that something was out of date) - } + graphComponent->UpgradeGraph(asset); } return scriptCanvasEntity; @@ -588,6 +609,12 @@ namespace ScriptCanvasEditor IUpgradeRequests* upgradeRequests = AZ::Interface::Get(); m_assetsToInspect = upgradeRequests->GetAssetsToUpgrade(); +// for (auto& entry : m_assetsToInspect) +// { +// m_activeAssets.push_back(AZ::Data::AssetManager::Instance().GetAsset +// (entry.m_assetId, entry.m_assetType, AZ::Data::AssetLoadBehavior::PreLoad)); +// } + DoScan(); } @@ -596,9 +623,14 @@ namespace ScriptCanvasEditor AZ::SystemTickBus::Handler::BusConnect(); m_state = ProcessState::Scan; + AZ::Debug::TraceMessageBus::Handler::BusConnect(); if (!m_assetsToInspect.empty()) { + m_discoveredAssets = m_assetsToInspect.size(); + m_failedAssets = 0; + m_inspectedAssets = 0; + m_ui->progressFrame->setVisible(true); m_ui->progressBar->setRange(0, aznumeric_cast(m_assetsToInspect.size())); m_ui->progressBar->setValue(0); @@ -622,14 +654,17 @@ namespace ScriptCanvasEditor DoScan(); } - void VersionExplorer::InspectAsset(AZ::Data::Asset& asset) + void VersionExplorer::InspectAsset(AZ::Data::Asset& asset, AZ::Data::AssetInfo& assetInfo) { + Log("InspectAsset: %s", asset.GetHint().c_str()); + AZ::Entity* scriptCanvasEntity = nullptr; if (asset.GetType() == azrtti_typeid()) { ScriptCanvasAsset* scriptCanvasAsset = asset.GetAs(); if (!scriptCanvasAsset) { + Log("InspectAsset: %s, AsestData failed to return ScriptCanvasAsset", asset.GetHint().c_str()); return; } @@ -640,14 +675,14 @@ namespace ScriptCanvasEditor auto graphComponent = scriptCanvasEntity->FindComponent(); AZ_Assert(graphComponent, "The Script Canvas entity must have a Graph component"); - bool onlyShowOutdatedGraphs = m_ui->onlyShowOutdated->isChecked(); + bool forceUpgrade = m_ui->forceUpgrade->isChecked(); - if (onlyShowOutdatedGraphs && graphComponent->GetVersion().IsLatest()) + if (!forceUpgrade && onlyShowOutdatedGraphs && graphComponent->GetVersion().IsLatest()) { ++m_currentAssetIndex; ScanComplete(asset); - + Log("InspectAsset: %s, is at latest", asset.GetHint().c_str()); return; } @@ -655,7 +690,7 @@ namespace ScriptCanvasEditor QTableWidgetItem* rowName = new QTableWidgetItem(tr(asset.GetHint().c_str())); m_ui->tableWidget->setItem(static_cast(m_inspectedAssets), static_cast(ColumnAsset), rowName); - if (!graphComponent->GetVersion().IsLatest()) + if (forceUpgrade || !graphComponent->GetVersion().IsLatest()) { m_assetsToUpgrade.push_back(asset); @@ -665,18 +700,19 @@ namespace ScriptCanvasEditor QPushButton* rowGoToButton = new QPushButton(this); rowGoToButton->setText("Upgrade"); rowGoToButton->setEnabled(false); - connect(rowGoToButton, &QPushButton::clicked, [this, spinner, rowGoToButton, asset] { - AZ::SystemTickBus::QueueFunction([this, rowGoToButton, spinner, asset]() { + connect(rowGoToButton, &QPushButton::clicked, [this, spinner, rowGoToButton, assetInfo] { + + AZ::SystemTickBus::QueueFunction([this, rowGoToButton, spinner, assetInfo]() { // Queue the process state change because we can't connect to the SystemTick bus in a Qt lambda - UpgradeSingle(rowGoToButton, spinner, asset); + UpgradeSingle(rowGoToButton, spinner, assetInfo); }); AZ::SystemTickBus::ExecuteQueuedEvents(); }); - m_ui->tableWidget->setCellWidget(static_cast(m_inspectedAssets), static_cast(ColumnAction), rowGoToButton); + m_ui->tableWidget->setCellWidget(static_cast(m_inspectedAssets), static_cast(ColumnAction), rowGoToButton); m_ui->tableWidget->setCellWidget(static_cast(m_inspectedAssets), static_cast(ColumnStatus), spinner); } @@ -713,37 +749,47 @@ namespace ScriptCanvasEditor ScanComplete(asset); } - void VersionExplorer::UpgradeSingle(QPushButton* rowGoToButton, AzQtComponents::StyledBusyLabel* spinner, const AZ::Data::Asset& asset) + void VersionExplorer::UpgradeSingle + ( QPushButton* rowGoToButton + , AzQtComponents::StyledBusyLabel* spinner + , AZ::Data::AssetInfo assetInfo) { - AZ::Interface::Get()->SetIsUpgrading(true); + AZ::Data::Asset asset = AZ::Data::AssetManager::Instance().GetAsset + ( assetInfo.m_assetId, assetInfo.m_assetType, AZ::Data::AssetLoadBehavior::PreLoad); - m_isUpgradingSingleGraph = true; + if (asset) + { + asset.BlockUntilLoadComplete(); - m_logs.clear(); - m_ui->textEdit->clear(); - - spinner->SetIsBusy(true); - rowGoToButton->setEnabled(false); - - m_inProgressAsset = AZStd::find_if(m_assetsToUpgrade.begin(), m_assetsToUpgrade.end(), [this, asset](const UpgradeAssets::value_type& assetToUpgrade) + if (!asset.IsReady()) { - return assetToUpgrade.GetId() == asset.GetId(); - }); + AZ::Interface::Get()->SetIsUpgrading(true); + m_isUpgradingSingleGraph = true; + m_logs.clear(); + m_ui->textEdit->clear(); + spinner->SetIsBusy(true); + rowGoToButton->setEnabled(false); - m_state = ProcessState::Upgrade; - - AZ::SystemTickBus::Handler::BusConnect(); + m_inProgressAsset = AZStd::find_if(m_assetsToUpgrade.begin(), m_assetsToUpgrade.end() + , [this, asset](const UpgradeAssets::value_type& assetToUpgrade) + { + return assetToUpgrade.GetId() == asset.GetId(); + }); + m_state = ProcessState::Upgrade; + AZ::SystemTickBus::Handler::BusConnect(); + } + } } void VersionExplorer::ScanComplete(const AZ::Data::Asset& asset) { + Log("ScanComplete: %s", asset.GetHint().c_str()); m_inProgress = false; m_ui->progressBar->setValue(aznumeric_cast(m_currentAssetIndex)); m_ui->scanButton->setEnabled(true); - + m_inspectingAsset = m_assetsToInspect.erase(m_inspectingAsset); - FlushLogs(); if (m_inspectingAsset == m_assetsToInspect.end()) @@ -755,12 +801,12 @@ namespace ScriptCanvasEditor m_ui->upgradeAllButton->setEnabled(true); } } - - asset->Release(); } void VersionExplorer::FinalizeScan() { + Log("FinalizeScan()"); + m_ui->spinner->SetIsBusy(false); m_ui->onlyShowOutdated->setEnabled(true); @@ -774,12 +820,18 @@ namespace ScriptCanvasEditor } } - QString spinnerText = QStringLiteral("Scan Complete"); if (m_assetsToUpgrade.empty()) { spinnerText.append(" - No graphs require upgrade!"); } + else + { + spinnerText.append(QString::asprintf(" - Discovered: %zu, Inspected: %zu, Failed: %zu" + , m_discoveredAssets, m_inspectedAssets, m_failedAssets)); + } + + m_ui->spinner->SetText(spinnerText); m_ui->progressBar->setVisible(false); @@ -793,11 +845,9 @@ namespace ScriptCanvasEditor UpgradeNotifications::Bus::Handler::BusDisconnect(); m_keepEditorAlive.reset(); - + m_state = ProcessState::Inactive; } - // - void VersionExplorer::FlushLogs() { if (m_logs.empty()) diff --git a/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.h b/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.h index 73ce19e4e1..9ec578bf10 100644 --- a/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.h +++ b/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.h @@ -82,7 +82,7 @@ namespace ScriptCanvasEditor void DoScan(); void ScanComplete(const AZ::Data::Asset&); - void InspectAsset(AZ::Data::Asset& asset); + void InspectAsset(AZ::Data::Asset& asset, AZ::Data::AssetInfo& assetInfo); void OnUpgradeAll(); @@ -116,8 +116,10 @@ namespace ScriptCanvasEditor bool m_inProgress = false; size_t m_currentAssetIndex = 0; size_t m_inspectedAssets = 0; + size_t m_failedAssets = 0; + size_t m_discoveredAssets = 0; - AZStd::vector> m_activeAssets; + // AZStd::vector> m_activeAssets; IUpgradeRequests::AssetList m_assetsToInspect; IUpgradeRequests::AssetList::iterator m_inspectingAsset; @@ -139,7 +141,7 @@ namespace ScriptCanvasEditor bool m_isUpgradingSingleGraph = false; - void UpgradeSingle(QPushButton* item, AzQtComponents::StyledBusyLabel* spinner, const AZ::Data::Asset& asset); + void UpgradeSingle(QPushButton* item, AzQtComponents::StyledBusyLabel* spinner, AZ::Data::AssetInfo assetInfo); void FlushLogs(); diff --git a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Data/BehaviorContextObject.cpp b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Data/BehaviorContextObject.cpp index 7bcf0b2282..412eb3ee7c 100644 --- a/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Data/BehaviorContextObject.cpp +++ b/Gems/ScriptCanvas/Code/Include/ScriptCanvas/Data/BehaviorContextObject.cpp @@ -98,7 +98,7 @@ namespace ScriptCanvas void BehaviorContextObject::Deserialize(BehaviorContextObject& target, const AZ::BehaviorClass& behaviorClass, AZStd::any& source) { - target.m_object = AZStd::move(AZStd::any(AZStd::any_cast(&source), GetAnyTypeInfoObject(behaviorClass))); + target.m_object = AZStd::any(AZStd::any_cast(&source), GetAnyTypeInfoObject(behaviorClass)); target.m_flags = Owned; } From be9ad98b24c575e9738b0844a51f82224310815e Mon Sep 17 00:00:00 2001 From: chcurran <82187351+carlitosan@users.noreply.github.com> Date: Tue, 24 Aug 2021 17:46:25 -0700 Subject: [PATCH 3/4] remove commented out debugging artifacts Signed-off-by: chcurran <82187351+carlitosan@users.noreply.github.com> --- .../View/Windows/Tools/UpgradeTool/VersionExplorer.cpp | 9 --------- .../View/Windows/Tools/UpgradeTool/VersionExplorer.h | 2 -- 2 files changed, 11 deletions(-) diff --git a/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.cpp b/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.cpp index 828f55cd0f..efa7aded40 100644 --- a/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.cpp +++ b/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.cpp @@ -602,19 +602,10 @@ namespace ScriptCanvasEditor { m_assetsToUpgrade.clear(); m_assetsToInspect.clear(); - m_ui->tableWidget->setRowCount(0); m_inspectedAssets = 0; - IUpgradeRequests* upgradeRequests = AZ::Interface::Get(); m_assetsToInspect = upgradeRequests->GetAssetsToUpgrade(); - -// for (auto& entry : m_assetsToInspect) -// { -// m_activeAssets.push_back(AZ::Data::AssetManager::Instance().GetAsset -// (entry.m_assetId, entry.m_assetType, AZ::Data::AssetLoadBehavior::PreLoad)); -// } - DoScan(); } diff --git a/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.h b/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.h index 9ec578bf10..266a42e2e6 100644 --- a/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.h +++ b/Gems/ScriptCanvas/Code/Editor/View/Windows/Tools/UpgradeTool/VersionExplorer.h @@ -119,8 +119,6 @@ namespace ScriptCanvasEditor size_t m_failedAssets = 0; size_t m_discoveredAssets = 0; - // AZStd::vector> m_activeAssets; - IUpgradeRequests::AssetList m_assetsToInspect; IUpgradeRequests::AssetList::iterator m_inspectingAsset; using UpgradeAssets = AZStd::vector>; From 6bd5cd7bde1ad1d7910fb6feb8db7e5f6d550e45 Mon Sep 17 00:00:00 2001 From: chcurran <82187351+carlitosan@users.noreply.github.com> Date: Wed, 25 Aug 2021 10:53:34 -0700 Subject: [PATCH 4/4] Fix release build warning error Signed-off-by: chcurran <82187351+carlitosan@users.noreply.github.com> --- .../Code/Source/ElementInformationSerializer.inl | 2 +- .../Code/Source/ExpressionPrimitivesSerializers.inl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Gems/ExpressionEvaluation/Code/Source/ElementInformationSerializer.inl b/Gems/ExpressionEvaluation/Code/Source/ElementInformationSerializer.inl index 10b002034e..9796bbb39b 100644 --- a/Gems/ExpressionEvaluation/Code/Source/ElementInformationSerializer.inl +++ b/Gems/ExpressionEvaluation/Code/Source/ElementInformationSerializer.inl @@ -43,7 +43,7 @@ namespace AZ JsonSerializationResult::Result Load ( void* outputValue - , const Uuid& outputValueTypeId + , [[maybe_unused]] const Uuid& outputValueTypeId , const rapidjson::Value& inputValue , JsonDeserializerContext& context) override { diff --git a/Gems/ExpressionEvaluation/Code/Source/ExpressionPrimitivesSerializers.inl b/Gems/ExpressionEvaluation/Code/Source/ExpressionPrimitivesSerializers.inl index 76f43a9b82..1eaee38702 100644 --- a/Gems/ExpressionEvaluation/Code/Source/ExpressionPrimitivesSerializers.inl +++ b/Gems/ExpressionEvaluation/Code/Source/ExpressionPrimitivesSerializers.inl @@ -30,7 +30,7 @@ namespace AZ JsonSerializationResult::Result Load ( void* outputValue - , const Uuid& outputValueTypeId + , [[maybe_unused]] const Uuid& outputValueTypeId , const rapidjson::Value& inputValue , JsonDeserializerContext& context) override {