///////////////////////////////////////////////////////////////////////////////// // // Copyright (C) 2011-2012 Statoil ASA, Ceetron AS // // 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 "RimWellsEntry.h" #include "cafAppEnum.h" namespace caf { template <> void caf::AppEnum::setUp() { addItem( RimWellPathEntry::WELL_ALL, "WELL_ALL", "All" ); addItem( RimWellPathEntry::WELL_SURVEY, "WELL_SURVEY", "Survey" ); addItem( RimWellPathEntry::WELL_PLAN, "WELL_PLAN", "Plan" ); setDefault( RimWellPathEntry::WELL_ALL ); } } // End namespace caf CAF_PDM_SOURCE_INIT( RimWellPathEntry, "RimWellPathEntry" ); //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- RimWellPathEntry::RimWellPathEntry() { CAF_PDM_InitObject( "WellPathEntry", "", "", "" ); CAF_PDM_InitFieldNoDefault( &name, "Name", "Name", "", "", "" ); CAF_PDM_InitField( &selected, "Selected", false, "Selected", "", "", "" ); caf::AppEnum wellType = WELL_ALL; CAF_PDM_InitField( &wellPathType, "WellPathType", wellType, "Well path type", "", "", "" ); CAF_PDM_InitFieldNoDefault( &surveyType, "surveyType", "surveyType", "", "", "" ); CAF_PDM_InitFieldNoDefault( &requestUrl, "requestUrl", "requestUrl", "", "", "" ); CAF_PDM_InitFieldNoDefault( &wellPathFilePath, "wellPathFilePath", "wellPathFilePath", "", "", "" ); } //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- caf::PdmFieldHandle* RimWellPathEntry::userDescriptionField() { return &name; } //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- caf::PdmFieldHandle* RimWellPathEntry::objectToggleField() { return &selected; } //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- RimWellPathEntry* RimWellPathEntry::createWellPathEntry( const QString& name, const QString& surveyType, const QString& requestUrl, const QString& absolutePath, WellTypeEnum wellType ) { RimWellPathEntry* entry = new RimWellPathEntry(); entry->name = name; entry->surveyType = surveyType; entry->requestUrl = requestUrl; entry->wellPathType = wellType; QString responseFilePath = undefinedWellPathLocation(); int strIndex = requestUrl.indexOf( "edm/" ); if ( strIndex >= 0 ) { QString lastPart = requestUrl.right( requestUrl.size() - strIndex ); lastPart = lastPart.replace( '/', '_' ); responseFilePath = absolutePath + "/" + lastPart + ".json"; } entry->wellPathFilePath = responseFilePath; return entry; } //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- QString RimWellPathEntry::undefinedWellPathLocation() { return "UNDEFIED_WELLPATH_FILE"; } //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- bool RimWellPathEntry::isWellPathValid() { return ( wellPathFilePath().compare( undefinedWellPathLocation() ) != 0 ); }