diff --git a/alib2cli/src/builtin/Dot.cpp b/alib2cli/src/builtin/Dot.cpp index 20baf1d861a4140f6b93d0ca32696162284f739c..c274a3b2da646b424dd1e41549db70b413886889 100644 --- a/alib2cli/src/builtin/Dot.cpp +++ b/alib2cli/src/builtin/Dot.cpp @@ -65,15 +65,14 @@ void Dot::dot2 ( const std::string & data ) { dot ( data, true ); } -void Dot::dot ( const std::string & data, const std::string& outputType, const std::string & outputFile ) { - std::string outputTypeLower; - std::transform ( outputType.begin ( ), outputType.end ( ), outputTypeLower.begin ( ), ::tolower ); +void Dot::dot ( const std::string & data, std::string outputType, const std::string & outputFile ) { + std::transform ( outputType.begin ( ), outputType.end ( ), outputType.begin ( ), ::tolower ); - if ( std::find ( allowedOutputTypes.begin( ), allowedOutputTypes.end ( ), outputTypeLower ) == allowedOutputTypes.end ( ) ) { - throw exception::CommonException ( "Dot: Invalid output type." ); + if ( std::find ( allowedOutputTypes.begin( ), allowedOutputTypes.end ( ), outputType ) == allowedOutputTypes.end ( ) ) { + throw exception::CommonException ( "Dot: Invalid output type (" + outputType + ")." ); } - run ( data, outputTypeLower, outputFile, false ); + run ( data, outputType, outputFile, false ); } @@ -89,7 +88,7 @@ auto DotTx11 = registration::AbstractRegister < Dot, void, const std::string &, @param dot a string containing dot data\n\ @param background a flag specifying whether to run in background (does not block CLI input)" ); -auto DotFile = registration::AbstractRegister < Dot, void, const std::string &, const std::string &, const std::string & > ( Dot::dot, abstraction::AlgorithmCategories::AlgorithmCategory::DEFAULT, "data", "outputType", "outputFile" ).setDocumentation ( +auto DotFile = registration::AbstractRegister < Dot, void, const std::string &, std::string, const std::string & > ( Dot::dot, abstraction::AlgorithmCategories::AlgorithmCategory::DEFAULT, "data", "outputType", "outputFile" ).setDocumentation ( "Cli builtin command for DOT format visualization. Runs dot -T<outputType> -o <outputFile> and blocks the input until done.\n\ \n\ @param data a string containing dot data\n\ diff --git a/alib2cli/src/builtin/Dot.h b/alib2cli/src/builtin/Dot.h index bb94741658724b9c90a230fe37e6a71311c71976..e9761f6ffa586a3a1b53a7d471ae91a47ac131b8 100644 --- a/alib2cli/src/builtin/Dot.h +++ b/alib2cli/src/builtin/Dot.h @@ -34,7 +34,7 @@ public: * \param outputType the type of dot created image * \param outputFile the destination file name */ - static void dot ( const std::string & data, const std::string & outputType, const std::string & outputFile ); + static void dot ( const std::string & data, std::string outputType, const std::string & outputFile ); protected: /** Allowed output types */