/* * AppBuilderRobust.cpp * * Created on: 9 сент. 2020 г. * Author: LeonidTitov */ #include "AppBuilderRobust.hh" bool configuration::software::AppBuilderRobust::do_input( Environment & env, application::ISetupStep * & step ) { if( not step ) return false; const bool status = step->input(env); return status; } bool configuration::software::AppBuilderRobust::do_prepare( application::ISetupStep * & step ) { if( not step ) return false; const bool status = step->prepare(); return status; } bool configuration::software::AppBuilderRobust::do_build( Environment & env, application::ISetupStep * & step ) { if( not step ) return false; bool status = false; try { step->build(env); } catch(std::exception & exp) { step = nullptr; status = false; throw; } if( env.exception.raised() ) { step = nullptr; status = false; } else { status = true; } return status; } bool configuration::software::AppBuilderRobust::do_end( Environment & env, application::ISetupStep * & step ) { if( not step ) return false; bool status = false; step->finalize(); if( env.exception.raised() ) { step = nullptr; status = false; } else { status = true; } return status; }