#2066 Observed Data : Improve error reporting

This commit is contained in:
Magne Sjaastad
2017-11-03 08:11:27 +01:00
parent ea53018f54
commit 9b7cfdd913
12 changed files with 71 additions and 16 deletions

View File

@@ -75,7 +75,7 @@ void RimObservedDataCollection::addObservedData(RimObservedData* observedData)
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimObservedData* RimObservedDataCollection::createAndAddObservedDataFromFileName(const QString& fileName)
RimObservedData* RimObservedDataCollection::createAndAddObservedDataFromFileName(const QString& fileName, QString* errorText)
{
RimObservedData* observedData = nullptr;
@@ -84,7 +84,10 @@ RimObservedData* RimObservedDataCollection::createAndAddObservedDataFromFileName
QFile file(fileName);
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
{
RiaLogging::error(QString("Failed to open %1").arg(fileName));
QString s = QString("Failed to open %1").arg(fileName);
RiaLogging::error(s);
if (errorText) errorText->append(s);
return nullptr;
}
@@ -118,6 +121,11 @@ RimObservedData* RimObservedDataCollection::createAndAddObservedDataFromFileName
observedData->updateMetaData();
observedData->updateOptionSensitivity();
if (errorText && !observedData->errorMessagesFromReader().isEmpty())
{
errorText->append(observedData->errorMessagesFromReader());
}
RiuMainPlotWindow* mainPlotWindow = RiaApplication::instance()->getOrCreateAndShowMainPlotWindow();
if (mainPlotWindow)
{

View File

@@ -37,7 +37,7 @@ public:
void removeObservedData(RimObservedData* observedData);
void addObservedData(RimObservedData* observedData);
RimObservedData* createAndAddObservedDataFromFileName(const QString& fileName);
RimObservedData* createAndAddObservedDataFromFileName(const QString& fileName, QString* errorText = nullptr);
std::vector<RimSummaryCase*> allObservedData();
private:

View File

@@ -82,7 +82,7 @@ void RimObservedEclipseUserData::createSummaryReaderInterface()
else
{
RifColumnBasedUserData* columnBaseUserData = new RifColumnBasedUserData();
if (columnBaseUserData->parse(fileContents))
if (columnBaseUserData->parse(fileContents, &m_errorText))
{
m_summeryReader = columnBaseUserData;
}
@@ -101,3 +101,11 @@ RifSummaryReaderInterface* RimObservedEclipseUserData::summaryReader()
{
return m_summeryReader.p();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QString RimObservedEclipseUserData::errorMessagesFromReader()
{
return m_errorText;
}

View File

@@ -40,6 +40,9 @@ public:
virtual RifSummaryReaderInterface* summaryReader() override;
virtual QString errorMessagesFromReader() override;
private:
cvf::ref<RifSummaryReaderInterface> m_summeryReader;
QString m_errorText;
};

View File

@@ -44,6 +44,7 @@ public:
virtual void createSummaryReaderInterface() = 0;
virtual RifSummaryReaderInterface* summaryReader() = 0;
virtual QString errorMessagesFromReader() { return QString(); }
virtual void updateFilePathsFromProjectPath(const QString& newProjectPath, const QString& oldProjectPath) = 0;