From 17ea69397abd5d727f1b20b30b2cb01c7a54669d Mon Sep 17 00:00:00 2001 From: Gaute Lindkvist Date: Wed, 4 Mar 2020 10:12:59 +0100 Subject: [PATCH] Move RicfMessages to CAF and simplify RicfFieldCapability --- .../Application/RiaApplication.cpp | 6 +- .../Application/Tools/RiaArgumentParser.cpp | 2 +- .../Core/CMakeLists_files.cmake | 2 - .../Core/RicfFieldCapability.cpp | 53 +++--- .../Core/RicfFieldCapability.h | 159 ++++++++---------- .../Core/RicfFieldHandle.h | 11 +- .../Core/RicfMessages.cpp | 90 ---------- .../CommandFileInterface/Core/RicfMessages.h | 54 ------ .../Core/RicfObjectCapability.cpp | 8 +- .../Core/RicfObjectCapability.h | 6 +- .../Core/RifcCommandFileReader.cpp | 8 +- .../Core/RifcCommandFileReader.h | 11 +- .../RicfCommandFileExecutor.cpp | 4 +- .../RicfCommandFileExecutor.h | 3 +- .../GrpcInterface/RiaGrpcServiceInterface.cpp | 6 +- .../UnitTests/RifcCommandCore-Test.cpp | 32 ++-- Fwk/AppFwk/cafPdmScripting/CMakeLists.txt | 2 + 17 files changed, 142 insertions(+), 315 deletions(-) delete mode 100644 ApplicationCode/CommandFileInterface/Core/RicfMessages.cpp delete mode 100644 ApplicationCode/CommandFileInterface/Core/RicfMessages.h diff --git a/ApplicationCode/Application/RiaApplication.cpp b/ApplicationCode/Application/RiaApplication.cpp index 5857800e76..ba88dd6634 100644 --- a/ApplicationCode/Application/RiaApplication.cpp +++ b/ApplicationCode/Application/RiaApplication.cpp @@ -36,7 +36,6 @@ #include "RicImportGeneralDataFeature.h" #include "RicfCommandFileExecutor.h" #include "RicfFieldHandle.h" -#include "RicfMessages.h" #include "RicfObjectCapability.h" #include "Rim2dIntersectionViewCollection.h" @@ -98,6 +97,7 @@ #include "cafPdmCodeGenerator.h" #include "cafPdmDataValueField.h" #include "cafPdmDefaultObjectFactory.h" +#include "cafPdmScriptIOMessages.h" #include "cafPdmSettings.h" #include "cafPdmUiModelChangeDetector.h" #include "cafProgressInfo.h" @@ -1260,8 +1260,8 @@ QVariant RiaApplication::cacheDataObject( const QString& key ) const //-------------------------------------------------------------------------------------------------- void RiaApplication::executeCommandFile( const QString& commandFile ) { - QFile file( commandFile ); - RicfMessages messages; + QFile file( commandFile ); + caf::PdmScriptIOMessages messages; if ( !file.open( QIODevice::ReadOnly | QIODevice::Text ) ) { // TODO : Error logging? diff --git a/ApplicationCode/Application/Tools/RiaArgumentParser.cpp b/ApplicationCode/Application/Tools/RiaArgumentParser.cpp index 3883eff3fe..ab3f17e936 100644 --- a/ApplicationCode/Application/Tools/RiaArgumentParser.cpp +++ b/ApplicationCode/Application/Tools/RiaArgumentParser.cpp @@ -31,13 +31,13 @@ #include "RiuPlotMainWindow.h" #include "RicfCommandFileExecutor.h" -#include "RicfMessages.h" #include "ExportCommands/RicSnapshotAllPlotsToFileFeature.h" #include "ExportCommands/RicSnapshotAllViewsToFileFeature.h" #include "ExportCommands/RicSnapshotViewToFileFeature.h" #include "RicImportSummaryCasesFeature.h" +#include "cafPdmScriptIOMessages.h" #include "cvfProgramOptions.h" #include "cvfqtUtils.h" diff --git a/ApplicationCode/CommandFileInterface/Core/CMakeLists_files.cmake b/ApplicationCode/CommandFileInterface/Core/CMakeLists_files.cmake index cbb3dbe6cb..67d97ac1d3 100644 --- a/ApplicationCode/CommandFileInterface/Core/CMakeLists_files.cmake +++ b/ApplicationCode/CommandFileInterface/Core/CMakeLists_files.cmake @@ -6,7 +6,6 @@ ${CMAKE_CURRENT_LIST_DIR}/RicfFieldCapability.h ${CMAKE_CURRENT_LIST_DIR}/RicfFieldHandle.h ${CMAKE_CURRENT_LIST_DIR}/RicfObjectCapability.h ${CMAKE_CURRENT_LIST_DIR}/RifcCommandFileReader.h -${CMAKE_CURRENT_LIST_DIR}/RicfMessages.h ) set (SOURCE_GROUP_SOURCE_FILES @@ -16,7 +15,6 @@ ${CMAKE_CURRENT_LIST_DIR}/RicfFieldCapability.cpp ${CMAKE_CURRENT_LIST_DIR}/RicfFieldHandle.cpp ${CMAKE_CURRENT_LIST_DIR}/RicfObjectCapability.cpp ${CMAKE_CURRENT_LIST_DIR}/RifcCommandFileReader.cpp -${CMAKE_CURRENT_LIST_DIR}/RicfMessages.cpp ) list(APPEND CODE_HEADER_FILES diff --git a/ApplicationCode/CommandFileInterface/Core/RicfFieldCapability.cpp b/ApplicationCode/CommandFileInterface/Core/RicfFieldCapability.cpp index 61f80e0327..991796333b 100644 --- a/ApplicationCode/CommandFileInterface/Core/RicfFieldCapability.cpp +++ b/ApplicationCode/CommandFileInterface/Core/RicfFieldCapability.cpp @@ -17,7 +17,6 @@ ///////////////////////////////////////////////////////////////////////////////// #include "RicfFieldCapability.h" -#include "RicfMessages.h" #include "RiaColorTools.h" @@ -26,10 +25,10 @@ //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -void RicfFieldReader::readFieldData( QString& fieldValue, - QTextStream& inputStream, - RicfMessages* errorMessageContainer, - bool stringsAreQuoted ) +void RicfFieldIOHandler::writeToField( QString& fieldValue, + QTextStream& inputStream, + caf::PdmScriptIOMessages* errorMessageContainer, + bool stringsAreQuoted ) { fieldValue = ""; @@ -99,10 +98,10 @@ void RicfFieldReader::readFieldData( QString& fieldValue, //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -void RicfFieldWriter::writeFieldData( const QString& fieldValue, - QTextStream& outputStream, - bool quoteStrings, - bool quoteNonBuiltin ) +void RicfFieldIOHandler::readFromField( const QString& fieldValue, + QTextStream& outputStream, + bool quoteStrings, + bool quoteNonBuiltin ) { outputStream << "\""; for ( int i = 0; i < fieldValue.size(); ++i ) @@ -119,10 +118,10 @@ void RicfFieldWriter::writeFieldData( const QString& fieldValue, //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -void RicfFieldReader::readFieldData( bool& fieldValue, - QTextStream& inputStream, - RicfMessages* errorMessageContainer, - bool stringsAreQuoted ) +void RicfFieldIOHandler::writeToField( bool& fieldValue, + QTextStream& inputStream, + caf::PdmScriptIOMessages* errorMessageContainer, + bool stringsAreQuoted ) { errorMessageContainer->skipWhiteSpaceWithLineNumberCount( inputStream ); QString accumulatedFieldValue; @@ -158,10 +157,10 @@ void RicfFieldReader::readFieldData( bool& fieldValue, //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -void RicfFieldWriter::writeFieldData( const bool& fieldValue, - QTextStream& outputStream, - bool quoteStrings, - bool quoteNonBuiltin ) +void RicfFieldIOHandler::readFromField( const bool& fieldValue, + QTextStream& outputStream, + bool quoteStrings, + bool quoteNonBuiltin ) { // Lower-case true/false is used in the documentation. outputStream << ( fieldValue ? "true" : "false" ); @@ -170,13 +169,13 @@ void RicfFieldWriter::writeFieldData( const bool& fieldValue, //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -void RicfFieldReader::readFieldData( cvf::Color3f& fieldValue, - QTextStream& inputStream, - RicfMessages* errorMessageContainer, - bool stringsAreQuoted ) +void RicfFieldIOHandler::writeToField( cvf::Color3f& fieldValue, + QTextStream& inputStream, + caf::PdmScriptIOMessages* errorMessageContainer, + bool stringsAreQuoted ) { QString fieldStringValue; - RicfFieldReader::readFieldData( fieldStringValue, inputStream, errorMessageContainer, stringsAreQuoted ); + RicfFieldIOHandler::writeToField( fieldStringValue, inputStream, errorMessageContainer, stringsAreQuoted ); QColor qColor( fieldStringValue ); if ( qColor.isValid() ) @@ -188,12 +187,12 @@ void RicfFieldReader::readFieldData( cvf::Color3f& fieldValue, //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -void RicfFieldWriter::writeFieldData( const cvf::Color3f& fieldValue, - QTextStream& outputStream, - bool quoteStrings, - bool quoteNonBuiltin ) +void RicfFieldIOHandler::readFromField( const cvf::Color3f& fieldValue, + QTextStream& outputStream, + bool quoteStrings, + bool quoteNonBuiltin ) { QColor qColor = RiaColorTools::toQColor( fieldValue ); QString fieldStringValue = qColor.name(); - RicfFieldWriter::writeFieldData( fieldStringValue, outputStream, quoteStrings ); + RicfFieldIOHandler::readFromField( fieldStringValue, outputStream, quoteStrings ); } diff --git a/ApplicationCode/CommandFileInterface/Core/RicfFieldCapability.h b/ApplicationCode/CommandFileInterface/Core/RicfFieldCapability.h index 527af4a7dc..deb3bf6569 100644 --- a/ApplicationCode/CommandFileInterface/Core/RicfFieldCapability.h +++ b/ApplicationCode/CommandFileInterface/Core/RicfFieldCapability.h @@ -19,9 +19,9 @@ #pragma once #include "RicfFieldHandle.h" -#include "RicfMessages.h" #include "cafAppEnum.h" +#include "cafPdmScriptIOMessages.h" #include "cvfColor3.h" @@ -29,12 +29,12 @@ #include template -struct RicfFieldReader +struct RicfFieldIOHandler { - static void readFieldData( DataType& fieldValue, - QTextStream& inputStream, - RicfMessages* errorMessageContainer, - bool stringsAreQuoted = true ) + static void writeToField( DataType& fieldValue, + QTextStream& inputStream, + caf::PdmScriptIOMessages* errorMessageContainer, + bool stringsAreQuoted = true ) { inputStream >> fieldValue; if ( inputStream.status() == QTextStream::ReadCorruptData ) @@ -46,81 +46,62 @@ struct RicfFieldReader inputStream.setStatus( QTextStream::Ok ); } } -}; -template -struct RicfFieldWriter -{ - static void writeFieldData( const DataType& fieldValue, - QTextStream& outputStream, - bool quoteStrings = true, - bool quoteNonBuiltins = false ) + static void readFromField( const DataType& fieldValue, + QTextStream& outputStream, + bool quoteStrings = true, + bool quoteNonBuiltins = false ) { outputStream << fieldValue; } }; template <> -struct RicfFieldReader +struct RicfFieldIOHandler { - static void readFieldData( QString& fieldValue, - QTextStream& inputStream, - RicfMessages* errorMessageContainer, - bool stringsAreQuoted = true ); + static void writeToField( QString& fieldValue, + QTextStream& inputStream, + caf::PdmScriptIOMessages* errorMessageContainer, + bool stringsAreQuoted = true ); + static void readFromField( const QString& fieldValue, + QTextStream& outputStream, + bool quoteStrings = true, + bool quoteNonBuiltins = false ); }; template <> -struct RicfFieldWriter +struct RicfFieldIOHandler { - static void writeFieldData( const QString& fieldValue, - QTextStream& outputStream, - bool quoteStrings = true, - bool quoteNonBuiltins = false ); + static void writeToField( bool& fieldValue, + QTextStream& inputStream, + caf::PdmScriptIOMessages* errorMessageContainer, + bool stringsAreQuoted = true ); + static void readFromField( const bool& fieldValue, + QTextStream& outputStream, + bool quoteStrings = true, + bool quoteNonBuiltins = false ); }; template <> -struct RicfFieldReader +struct RicfFieldIOHandler { - static void readFieldData( bool& fieldValue, - QTextStream& inputStream, - RicfMessages* errorMessageContainer, - bool stringsAreQuoted = true ); -}; - -template <> -struct RicfFieldWriter -{ - static void writeFieldData( const bool& fieldValue, - QTextStream& outputStream, - bool quoteStrings = true, - bool quoteNonBuiltins = false ); -}; - -template <> -struct RicfFieldReader -{ - static void readFieldData( cvf::Color3f& fieldValue, - QTextStream& inputStream, - RicfMessages* errorMessageContainer, - bool stringsAreQuoted = true ); -}; - -template <> -struct RicfFieldWriter -{ - static void writeFieldData( const cvf::Color3f& fieldValue, - QTextStream& outputStream, - bool quoteStrings = true, - bool quoteNonBuiltins = false ); + static void writeToField( cvf::Color3f& fieldValue, + QTextStream& inputStream, + caf::PdmScriptIOMessages* errorMessageContainer, + bool stringsAreQuoted = true ); + static void readFromField( const cvf::Color3f& fieldValue, + QTextStream& outputStream, + bool quoteStrings = true, + bool quoteNonBuiltins = false ); }; template -struct RicfFieldReader> +struct RicfFieldIOHandler> { - static void readFieldData( caf::AppEnum& fieldValue, - QTextStream& inputStream, - RicfMessages* errorMessageContainer, - bool stringsAreQuoted = true ) + static void writeToField( caf::AppEnum& fieldValue, + QTextStream& inputStream, + caf::PdmScriptIOMessages* errorMessageContainer, + bool stringsAreQuoted = true ) { errorMessageContainer->skipWhiteSpaceWithLineNumberCount( inputStream ); QString accumulatedFieldValue; @@ -148,15 +129,11 @@ struct RicfFieldReader> errorMessageContainer->currentCommand + "\"" ); } } -}; -template -struct RicfFieldWriter> -{ - static void writeFieldData( const caf::AppEnum& fieldValue, - QTextStream& outputStream, - bool quoteStrings = true, - bool quoteNonBuiltins = false ) + static void readFromField( const caf::AppEnum& fieldValue, + QTextStream& outputStream, + bool quoteStrings = true, + bool quoteNonBuiltins = false ) { if ( quoteNonBuiltins ) { @@ -170,12 +147,12 @@ struct RicfFieldWriter> }; template -struct RicfFieldReader> +struct RicfFieldIOHandler> { - static void readFieldData( std::vector& fieldValue, - QTextStream& inputStream, - RicfMessages* errorMessageContainer, - bool stringsAreQuoted = true ) + static void writeToField( std::vector& fieldValue, + QTextStream& inputStream, + caf::PdmScriptIOMessages* errorMessageContainer, + bool stringsAreQuoted = true ) { errorMessageContainer->skipWhiteSpaceWithLineNumberCount( inputStream ); QChar chr = errorMessageContainer->readCharWithLineNumberCount( inputStream ); @@ -197,7 +174,7 @@ struct RicfFieldReader> } T value; - RicfFieldReader::readFieldData( value, inputStream, errorMessageContainer, true ); + RicfFieldIOHandler::writeToField( value, inputStream, errorMessageContainer, true ); fieldValue.push_back( value ); } } @@ -208,20 +185,16 @@ struct RicfFieldReader> errorMessageContainer->currentCommand + "\"" ); } } -}; -template -struct RicfFieldWriter> -{ - static void writeFieldData( const std::vector& fieldValue, - QTextStream& outputStream, - bool quoteStrings = true, - bool quoteNonBuiltins = false ) + static void readFromField( const std::vector& fieldValue, + QTextStream& outputStream, + bool quoteStrings = true, + bool quoteNonBuiltins = false ) { outputStream << "["; for ( size_t i = 0; i < fieldValue.size(); ++i ) { - RicfFieldWriter::writeFieldData( fieldValue[i], outputStream, quoteNonBuiltins ); + RicfFieldIOHandler::readFromField( fieldValue[i], outputStream, quoteNonBuiltins ); if ( i < fieldValue.size() - 1 ) { outputStream << ", "; @@ -250,14 +223,14 @@ public: public: void readFieldData( QTextStream& inputStream, caf::PdmObjectFactory* objectFactory, - RicfMessages* errorMessageContainer, + caf::PdmScriptIOMessages* errorMessageContainer, bool stringsAreQuoted = true ) override { typename FieldType::FieldDataType value; - RicfFieldReader::readFieldData( value, - inputStream, - errorMessageContainer, - stringsAreQuoted ); + RicfFieldIOHandler::writeToField( value, + inputStream, + errorMessageContainer, + stringsAreQuoted ); if ( this->isIOWriteable() ) { @@ -267,10 +240,10 @@ public: void writeFieldData( QTextStream& outputStream, bool quoteStrings = true, bool quoteNonBuiltins = false ) const override { - RicfFieldWriter::writeFieldData( m_field->value(), - outputStream, - quoteStrings, - quoteNonBuiltins ); + RicfFieldIOHandler::readFromField( m_field->value(), + outputStream, + quoteStrings, + quoteNonBuiltins ); } private: diff --git a/ApplicationCode/CommandFileInterface/Core/RicfFieldHandle.h b/ApplicationCode/CommandFileInterface/Core/RicfFieldHandle.h index 42343bbebb..36f31aa8b8 100644 --- a/ApplicationCode/CommandFileInterface/Core/RicfFieldHandle.h +++ b/ApplicationCode/CommandFileInterface/Core/RicfFieldHandle.h @@ -25,10 +25,9 @@ namespace caf { class PdmObjectFactory; class PdmFieldHandle; +class PdmScriptIOMessages; } // namespace caf -class RicfMessages; - class QTextStream; //================================================================================================== @@ -42,10 +41,10 @@ public: RicfFieldHandle( caf::PdmFieldHandle* owner, const QString& scriptFieldName, bool giveOwnership ); ~RicfFieldHandle() override; - virtual void readFieldData( QTextStream& inputStream, - caf::PdmObjectFactory* objectFactory, - RicfMessages* errorMessageContainer, - bool stringsAreQuoted = true ) = 0; + virtual void readFieldData( QTextStream& inputStream, + caf::PdmObjectFactory* objectFactory, + caf::PdmScriptIOMessages* errorMessageContainer, + bool stringsAreQuoted = true ) = 0; private: caf::PdmFieldHandle* m_owner; diff --git a/ApplicationCode/CommandFileInterface/Core/RicfMessages.cpp b/ApplicationCode/CommandFileInterface/Core/RicfMessages.cpp deleted file mode 100644 index 6afdffe56a..0000000000 --- a/ApplicationCode/CommandFileInterface/Core/RicfMessages.cpp +++ /dev/null @@ -1,90 +0,0 @@ -///////////////////////////////////////////////////////////////////////////////// -// -// Copyright (C) 2017 Statoil ASA -// -// ResInsight is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or -// FITNESS FOR A PARTICULAR PURPOSE. -// -// See the GNU General Public License at -// for more details. -// -///////////////////////////////////////////////////////////////////////////////// -#include "RicfMessages.h" -#include - -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -void RicfMessages::addWarning( const QString& message ) -{ - m_messages.push_back( - std::make_pair( MESSAGE_WARNING, "Line " + QString::number( m_currentLineNumber ) + ": " + message ) ); -} - -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -void RicfMessages::addError( const QString& message ) -{ - m_messages.push_back( - std::make_pair( MESSAGE_ERROR, "Line " + QString::number( m_currentLineNumber ) + ": " + message ) ); -} - -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -void RicfMessages::skipWhiteSpaceWithLineNumberCount( QTextStream& inputStream ) -{ - while ( !inputStream.atEnd() ) - { - QChar ch = readCharWithLineNumberCount( inputStream ); - if ( !ch.isSpace() ) - { - inputStream.seek( inputStream.pos() - 1 ); - break; - } - } -} - -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -QChar RicfMessages::readCharWithLineNumberCount( QTextStream& inputStream ) -{ - QChar ch; - inputStream >> ch; - if ( ch == QChar( '\n' ) ) - { - m_currentLineNumber++; - } - return ch; -} - -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -QChar RicfMessages::peekNextChar( QTextStream& inputStream ) -{ - QChar ch; - if ( !inputStream.atEnd() ) - { - inputStream >> ch; - inputStream.seek( inputStream.pos() - 1 ); - } - return ch; -} - -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -void RicfMessages::skipLineWithLineNumberCount( QTextStream& inputStream ) -{ - inputStream.readLine(); - m_currentLineNumber++; -} diff --git a/ApplicationCode/CommandFileInterface/Core/RicfMessages.h b/ApplicationCode/CommandFileInterface/Core/RicfMessages.h deleted file mode 100644 index d8cec21173..0000000000 --- a/ApplicationCode/CommandFileInterface/Core/RicfMessages.h +++ /dev/null @@ -1,54 +0,0 @@ -///////////////////////////////////////////////////////////////////////////////// -// -// Copyright (C) 2017 Statoil ASA -// -// ResInsight is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or -// FITNESS FOR A PARTICULAR PURPOSE. -// -// See the GNU General Public License at -// for more details. -// -///////////////////////////////////////////////////////////////////////////////// -#pragma once - -#include -#include - -class QTextStream; - -class RicfMessages -{ -public: - RicfMessages() - : m_currentLineNumber( 1 ) - { - } - - enum MessageType - { - MESSAGE_WARNING, - MESSAGE_ERROR - }; - - void addWarning( const QString& message ); - void addError( const QString& message ); - - void skipWhiteSpaceWithLineNumberCount( QTextStream& inputStream ); - void skipLineWithLineNumberCount( QTextStream& inputStream ); - - QChar readCharWithLineNumberCount( QTextStream& inputStream ); - QChar peekNextChar( QTextStream& inputStream ); - - QString currentCommand; - QString currentArgument; - std::vector> m_messages; - -private: - int m_currentLineNumber; -}; diff --git a/ApplicationCode/CommandFileInterface/Core/RicfObjectCapability.cpp b/ApplicationCode/CommandFileInterface/Core/RicfObjectCapability.cpp index 4bb44c40fb..9ca7a57d8b 100644 --- a/ApplicationCode/CommandFileInterface/Core/RicfObjectCapability.cpp +++ b/ApplicationCode/CommandFileInterface/Core/RicfObjectCapability.cpp @@ -18,10 +18,10 @@ #include "RicfObjectCapability.h" #include "RicfFieldHandle.h" -#include "RicfMessages.h" #include "cafPdmObject.h" #include "cafPdmObjectHandle.h" +#include "cafPdmScriptIOMessages.h" #include "cafPdmXmlFieldHandle.h" #include @@ -45,9 +45,9 @@ RicfObjectCapability::~RicfObjectCapability() //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -void RicfObjectCapability::readFields( QTextStream& inputStream, - caf::PdmObjectFactory* objectFactory, - RicfMessages* errorMessageContainer ) +void RicfObjectCapability::readFields( QTextStream& inputStream, + caf::PdmObjectFactory* objectFactory, + caf::PdmScriptIOMessages* errorMessageContainer ) { std::set readFields; bool isLastArgumentRead = false; diff --git a/ApplicationCode/CommandFileInterface/Core/RicfObjectCapability.h b/ApplicationCode/CommandFileInterface/Core/RicfObjectCapability.h index f6d64c70a2..4f6cd5f83d 100644 --- a/ApplicationCode/CommandFileInterface/Core/RicfObjectCapability.h +++ b/ApplicationCode/CommandFileInterface/Core/RicfObjectCapability.h @@ -28,10 +28,10 @@ namespace caf class PdmObject; class PdmObjectHandle; class PdmObjectFactory; +class PdmScriptIOMessages; } // namespace caf class QTextStream; -class RicfMessages; //================================================================================================== // @@ -45,7 +45,9 @@ public: ~RicfObjectCapability() override; - void readFields( QTextStream& inputStream, caf::PdmObjectFactory* objectFactory, RicfMessages* errorMessageContainer ); + void readFields( QTextStream& inputStream, + caf::PdmObjectFactory* objectFactory, + caf::PdmScriptIOMessages* errorMessageContainer ); void writeFields( QTextStream& outputStream ) const; private: diff --git a/ApplicationCode/CommandFileInterface/Core/RifcCommandFileReader.cpp b/ApplicationCode/CommandFileInterface/Core/RifcCommandFileReader.cpp index 543c6296b4..6bda135a7b 100644 --- a/ApplicationCode/CommandFileInterface/Core/RifcCommandFileReader.cpp +++ b/ApplicationCode/CommandFileInterface/Core/RifcCommandFileReader.cpp @@ -19,19 +19,19 @@ #include "RifcCommandFileReader.h" #include "RicfCommandObject.h" -#include "RicfMessages.h" #include "RicfObjectCapability.h" #include "cafPdmObjectFactory.h" +#include "cafPdmScriptIOMessages.h" #include //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -std::vector RicfCommandFileReader::readCommands( QTextStream& inputStream, - caf::PdmObjectFactory* objectFactory, - RicfMessages* errorMessageContainer ) +std::vector RicfCommandFileReader::readCommands( QTextStream& inputStream, + caf::PdmObjectFactory* objectFactory, + caf::PdmScriptIOMessages* errorMessageContainer ) { std::vector readCommands; diff --git a/ApplicationCode/CommandFileInterface/Core/RifcCommandFileReader.h b/ApplicationCode/CommandFileInterface/Core/RifcCommandFileReader.h index a6fafbc9e0..1025fe4591 100644 --- a/ApplicationCode/CommandFileInterface/Core/RifcCommandFileReader.h +++ b/ApplicationCode/CommandFileInterface/Core/RifcCommandFileReader.h @@ -26,9 +26,8 @@ class QTextStream; namespace caf { class PdmObjectFactory; -} - -class RicfMessages; +class PdmScriptIOMessages; +} // namespace caf //================================================================================================== // @@ -38,9 +37,9 @@ class RicfMessages; class RicfCommandFileReader { public: - static std::vector readCommands( QTextStream& inputStream, - caf::PdmObjectFactory* objectFactory, - RicfMessages* errorMessageContainer ); + static std::vector readCommands( QTextStream& inputStream, + caf::PdmObjectFactory* objectFactory, + caf::PdmScriptIOMessages* errorMessageContainer ); static void writeCommands( QTextStream& outputStream, const std::vector& commandsToWrite ); }; diff --git a/ApplicationCode/CommandFileInterface/RicfCommandFileExecutor.cpp b/ApplicationCode/CommandFileInterface/RicfCommandFileExecutor.cpp index b13b53cbaf..75e76fd987 100644 --- a/ApplicationCode/CommandFileInterface/RicfCommandFileExecutor.cpp +++ b/ApplicationCode/CommandFileInterface/RicfCommandFileExecutor.cpp @@ -61,7 +61,7 @@ RicfCommandFileExecutor::~RicfCommandFileExecutor() //-------------------------------------------------------------------------------------------------- void RicfCommandFileExecutor::executeCommands( QTextStream& stream ) { - RicfMessages messages; + caf::PdmScriptIOMessages messages; std::vector executableCommands; { clearCachedData(); @@ -70,7 +70,7 @@ void RicfCommandFileExecutor::executeCommands( QTextStream& stream ) RicfCommandFileReader::readCommands( stream, caf::PdmDefaultObjectFactory::instance(), &messages ); for ( auto message : messages.m_messages ) { - if ( message.first == RicfMessages::MESSAGE_WARNING ) + if ( message.first == caf::PdmScriptIOMessages::MESSAGE_WARNING ) { RiaLogging::warning( QString( "Command file parsing warning: %1" ).arg( message.second ) ); } diff --git a/ApplicationCode/CommandFileInterface/RicfCommandFileExecutor.h b/ApplicationCode/CommandFileInterface/RicfCommandFileExecutor.h index 17a5cbc3bd..f99e5c71cf 100644 --- a/ApplicationCode/CommandFileInterface/RicfCommandFileExecutor.h +++ b/ApplicationCode/CommandFileInterface/RicfCommandFileExecutor.h @@ -18,9 +18,8 @@ #pragma once -#include "RicfMessages.h" - #include "cafAppEnum.h" +#include "cafPdmScriptIOMessages.h" #include #include diff --git a/ApplicationCode/GrpcInterface/RiaGrpcServiceInterface.cpp b/ApplicationCode/GrpcInterface/RiaGrpcServiceInterface.cpp index b3e5f705e0..0d8ddb379e 100644 --- a/ApplicationCode/GrpcInterface/RiaGrpcServiceInterface.cpp +++ b/ApplicationCode/GrpcInterface/RiaGrpcServiceInterface.cpp @@ -22,7 +22,6 @@ #include "RimProject.h" #include "RicfFieldHandle.h" -#include "RicfMessages.h" #include "RicfObjectCapability.h" #include "cafPdmChildArrayField.h" @@ -31,6 +30,7 @@ #include "cafPdmObject.h" #include "cafPdmObjectScriptabilityRegister.h" #include "cafPdmProxyValueField.h" +#include "cafPdmScriptIOMessages.h" #include "cafPdmXmlFieldHandle.h" #include @@ -173,8 +173,8 @@ bool RiaGrpcServiceInterface::assignFieldValue( const QString& stringValue, auto ricfHandle = field->template capability(); if ( field && ricfHandle != nullptr ) { - QTextStream stream( stringValue.toLatin1() ); - RicfMessages messages; + QTextStream stream( stringValue.toLatin1() ); + caf::PdmScriptIOMessages messages; *oldValue = field->toQVariant(); ricfHandle->readFieldData( stream, nullptr, &messages, false ); *newValue = field->toQVariant(); diff --git a/ApplicationCode/UnitTests/RifcCommandCore-Test.cpp b/ApplicationCode/UnitTests/RifcCommandCore-Test.cpp index 49730cbf3c..ad1164365b 100644 --- a/ApplicationCode/UnitTests/RifcCommandCore-Test.cpp +++ b/ApplicationCode/UnitTests/RifcCommandCore-Test.cpp @@ -2,10 +2,10 @@ #include "RicfCommandFileExecutor.h" #include "RicfCommandObject.h" -#include "RicfMessages.h" #include "RifcCommandFileReader.h" #include "cafPdmField.h" +#include "cafPdmScriptIOMessages.h" class TestCommand1 : public RicfCommandObject { @@ -80,8 +80,8 @@ TEST( RicfCommands, Test1 ) // std::cout << commandString.toStdString() << std::endl; - QTextStream inputStream( &commandString ); - RicfMessages errors; + QTextStream inputStream( &commandString ); + caf::PdmScriptIOMessages errors; auto objects = RicfCommandFileReader::readCommands( inputStream, caf::PdmDefaultObjectFactory::instance(), &errors ); EXPECT_EQ( (size_t)5, objects.size() ); @@ -138,8 +138,8 @@ TEST( RicfCommands, ErrorMessages ) std::cout << commandString.toStdString() << std::endl; - QTextStream inputStream( &commandString ); - RicfMessages errors; + QTextStream inputStream( &commandString ); + caf::PdmScriptIOMessages errors; auto objects = RicfCommandFileReader::readCommands( inputStream, caf::PdmDefaultObjectFactory::instance(), &errors ); @@ -155,7 +155,7 @@ TEST( RicfCommands, ErrorMessages ) for ( const auto& msg : errors.m_messages ) { QString label; - if ( msg.first == RicfMessages::MESSAGE_ERROR ) + if ( msg.first == caf::PdmScriptIOMessages::MESSAGE_ERROR ) { label = "Error : "; } @@ -180,8 +180,8 @@ TEST( RicfCommands, EmptyArgumentList ) // Ensure no error messages when command with no arguments is read QString commandString( "TestCommand1()" ); - QTextStream inputStream( &commandString ); - RicfMessages errors; + QTextStream inputStream( &commandString ); + caf::PdmScriptIOMessages errors; auto objects = RicfCommandFileReader::readCommands( inputStream, caf::PdmDefaultObjectFactory::instance(), &errors ); @@ -215,8 +215,8 @@ TEST( RicfCommands, TransformFileCommandObjectsToExecutableCommandObjects ) )"; - QTextStream inputStream( &commandString ); - RicfMessages errors; + QTextStream inputStream( &commandString ); + caf::PdmScriptIOMessages errors; auto objects = RicfCommandFileReader::readCommands( inputStream, caf::PdmDefaultObjectFactory::instance(), &errors ); EXPECT_TRUE( errors.m_messages.empty() ); @@ -252,8 +252,8 @@ TEST( RicfCommands, IgnoreCommentLines ) )"; - QTextStream inputStream( &commandString ); - RicfMessages errors; + QTextStream inputStream( &commandString ); + caf::PdmScriptIOMessages errors; auto objects = RicfCommandFileReader::readCommands( inputStream, caf::PdmDefaultObjectFactory::instance(), &errors ); EXPECT_TRUE( errors.m_messages.empty() ); @@ -283,8 +283,8 @@ TEST( RicfCommands, IgnoreCommentLinesShowErrorLine ) )"; - QTextStream inputStream( &commandString ); - RicfMessages errors; + QTextStream inputStream( &commandString ); + caf::PdmScriptIOMessages errors; auto objects = RicfCommandFileReader::readCommands( inputStream, caf::PdmDefaultObjectFactory::instance(), &errors ); EXPECT_EQ( (size_t)1, errors.m_messages.size() ); @@ -315,8 +315,8 @@ TEST( RicfCommands, WriteCommand ) } { - QTextStream inputStream( &commandString ); - RicfMessages errors; + QTextStream inputStream( &commandString ); + caf::PdmScriptIOMessages errors; auto objects = RicfCommandFileReader::readCommands( inputStream, caf::PdmDefaultObjectFactory::instance(), &errors ); diff --git a/Fwk/AppFwk/cafPdmScripting/CMakeLists.txt b/Fwk/AppFwk/cafPdmScripting/CMakeLists.txt index 518532f301..5112fa85c2 100644 --- a/Fwk/AppFwk/cafPdmScripting/CMakeLists.txt +++ b/Fwk/AppFwk/cafPdmScripting/CMakeLists.txt @@ -10,6 +10,8 @@ set( PROJECT_FILES cafPdmObjectScriptabilityRegister.cpp cafPdmPythonGenerator.h cafPdmPythonGenerator.cpp + cafPdmScriptIOMessages.h + cafPdmScriptIOMessages.cpp )