diff --git a/ameasure2/src/ameasure.cpp b/ameasure2/src/ameasure.cpp index 646417f0e9706342f4905c66bd3681a9ea4872d0..092a51eeb5fa4556bef70e9c31f717d31c6f7770 100644 --- a/ameasure2/src/ameasure.cpp +++ b/ameasure2/src/ameasure.cpp @@ -3,15 +3,36 @@ */ #include <tclap/CmdLine.h> +#include "factory/XmlDataFactory.hpp" +#include "provisioner/MeasurementProvisioner.hpp" int main ( int argc, char * * argv ) { try { - TCLAP::CmdLine cmd ( "Measurements provisioner and processor binary", ' ', "0.01" ); + TCLAP::CmdLine cmd ( "Measurement provisioner and processor binary", ' ', "0.01" ); + + TCLAP::UnlabeledValueArg < std::string > input ( "input", "provisioning file", false, "-", "file" ); + cmd.add ( input ); cmd.parse ( argc, argv ); + std::deque < sax::Token > tokens; + + if ( input.getValue ( ) == "-" ) + sax::SaxParseInterface::parseStdin ( tokens ); + else + sax::SaxParseInterface::parseFile ( input.getValue ( ), tokens ); + + auto configuration = provisioner::MeasurementProvisioner::parse_configuration ( tokens ); + auto results = provisioner::MeasurementProvisioner::run_configuration ( configuration ); + + std::cout << results << std::endl; + return 0; + + } catch ( const exception::AlibException & exception ) { + alib::XmlDataFactory::toStdout ( exception ); + return 1; } catch ( const TCLAP::ArgException & exception ) { std::cout << exception.error ( ) << std::endl; return 2; diff --git a/ameasure2/src/provisioner/MeasurementProvisioner.cpp b/ameasure2/src/provisioner/MeasurementProvisioner.cpp new file mode 100644 index 0000000000000000000000000000000000000000..9b0aba985799f4a90988fb4e36088b12024686af --- /dev/null +++ b/ameasure2/src/provisioner/MeasurementProvisioner.cpp @@ -0,0 +1,21 @@ +/* + * Author: Radovan Cerveny + */ + +#include "MeasurementProvisioner.hpp" + +namespace provisioner { + +MeasurementProvisionerConfiguration MeasurementProvisioner::parse_configuration ( std::deque < sax::Token > ) { + MeasurementProvisionerConfiguration configuration; + + return configuration; +} + +MeasurementProvisionerResults MeasurementProvisioner::run_configuration ( const MeasurementProvisionerConfiguration & ) { + MeasurementProvisionerResults results; + + return results; +} + +} diff --git a/ameasure2/src/provisioner/MeasurementProvisioner.hpp b/ameasure2/src/provisioner/MeasurementProvisioner.hpp new file mode 100644 index 0000000000000000000000000000000000000000..28c9c01cc7f7b8523583e83877be3c3100ba690f --- /dev/null +++ b/ameasure2/src/provisioner/MeasurementProvisioner.hpp @@ -0,0 +1,24 @@ +/* + * Author: Radovan Cerveny + */ + +#ifndef MEASUREMENT_PROVISIONER_HPP_ +#define MEASUREMENT_PROVISIONER_HPP_ + +#include "sax/Token.h" +#include <deque> +#include "MeasurementProvisionerConfiguration.hpp" +#include "MeasurementProvisionerResults.hpp" + +namespace provisioner { + +class MeasurementProvisioner { + +public: + static MeasurementProvisionerConfiguration parse_configuration ( std::deque < sax::Token > ); + static MeasurementProvisionerResults run_configuration ( const MeasurementProvisionerConfiguration & ); +}; + +} + +#endif /* MEASUREMENT_PROVISIONER_HPP_ */ diff --git a/ameasure2/src/provisioner/MeasurementProvisionerConfiguration.hpp b/ameasure2/src/provisioner/MeasurementProvisionerConfiguration.hpp new file mode 100644 index 0000000000000000000000000000000000000000..45f2b57ff63c0275dfb42c63e541548b81fa200d --- /dev/null +++ b/ameasure2/src/provisioner/MeasurementProvisionerConfiguration.hpp @@ -0,0 +1,15 @@ +/* + * Author: Radovan Cerveny + */ + +#ifndef MEASUREMENT_PROVISIONER_CONFIGURATION_HPP_ +#define MEASUREMENT_PROVISIONER_CONFIGURATION_HPP_ + +namespace provisioner { + +struct MeasurementProvisionerConfiguration { +}; + +} + +#endif /* MEASUREMENT_PROVISIONER_CONFIGURATION_HPP_ */ diff --git a/ameasure2/src/provisioner/MeasurementProvisionerResults.hpp b/ameasure2/src/provisioner/MeasurementProvisionerResults.hpp new file mode 100644 index 0000000000000000000000000000000000000000..ff9c79eacb4141785f4cf41fedf740e8593dec85 --- /dev/null +++ b/ameasure2/src/provisioner/MeasurementProvisionerResults.hpp @@ -0,0 +1,15 @@ +/* + * Author: Radovan Cerveny + */ + +#ifndef MEASUREMENT_PROVISIONER_RESULTS_HPP_ +#define MEASUREMENT_PROVISIONER_RESULTS_HPP_ + +namespace provisioner { + +struct MeasurementProvisionerResults { +}; + +} + +#endif /* MEASUREMENT_PROVISIONER_RESULTS_HPP_ */