diff --git a/Builds/VisualStudio2012/RippleD.vcxproj b/Builds/VisualStudio2012/RippleD.vcxproj index d911a3ffc..16785ea0b 100644 --- a/Builds/VisualStudio2012/RippleD.vcxproj +++ b/Builds/VisualStudio2012/RippleD.vcxproj @@ -802,6 +802,12 @@ true true + + true + true + true + true + true true @@ -1515,6 +1521,7 @@ + diff --git a/Builds/VisualStudio2012/RippleD.vcxproj.filters b/Builds/VisualStudio2012/RippleD.vcxproj.filters index b3ed72bf8..a33e3e6e8 100644 --- a/Builds/VisualStudio2012/RippleD.vcxproj.filters +++ b/Builds/VisualStudio2012/RippleD.vcxproj.filters @@ -867,6 +867,9 @@ [1] Ripple\ripple_core\test + + [1] Ripple\ripple_core\validator + @@ -1715,6 +1718,9 @@ [1] Ripple\ripple_core\test + + [1] Ripple\ripple_core\validator + diff --git a/modules/ripple_core/ripple_core.cpp b/modules/ripple_core/ripple_core.cpp index 0ce5b7668..2021c6ac9 100644 --- a/modules/ripple_core/ripple_core.cpp +++ b/modules/ripple_core/ripple_core.cpp @@ -62,6 +62,8 @@ namespace ripple # include "test/ConfigType.h" #include "test/TestOverlay.cpp" +# include "validator/ValidatorsUtilities.h" +#include "validator/ValidatorsUtilities.cpp" # include "validator/ValidatorSourceStrings.h" # include "validator/ValidatorSourceTrustedUri.h" # include "validator/ValidatorsImp.h" // private diff --git a/modules/ripple_core/validator/ValidatorsUtilities.cpp b/modules/ripple_core/validator/ValidatorsUtilities.cpp new file mode 100644 index 000000000..121e1743b --- /dev/null +++ b/modules/ripple_core/validator/ValidatorsUtilities.cpp @@ -0,0 +1,6 @@ +//------------------------------------------------------------------------------ +/* + Copyright (c) 2011-2013, OpenCoin, Inc. +*/ +//============================================================================== + diff --git a/modules/ripple_core/validator/ValidatorsUtilities.h b/modules/ripple_core/validator/ValidatorsUtilities.h new file mode 100644 index 000000000..6559a2bda --- /dev/null +++ b/modules/ripple_core/validator/ValidatorsUtilities.h @@ -0,0 +1,35 @@ +//------------------------------------------------------------------------------ +/* + Copyright (c) 2011-2013, OpenCoin, Inc. +*/ +//============================================================================== + +#ifndef RIPPLE_CORE_VALIDATORSUTILITIES_H_INCLUDED +#define RIPPLE_CORE_VALIDATORSUTILITIES_H_INCLUDED + +/** Common code for Validators classes. +*/ +class ValidatorsUtilities +{ +public: + typedef std::vector Strings; + + /** Turn a linear buffer of newline delimited text into strings. + This can be called incrementally, i.e. successive calls with + multiple buffer segments. + */ + static void parseLines (Strings& lines, char const* buf, std::size_t bytes); + + /** Parse a ConstBufferSequence of newline delimited text into strings. + This works incrementally. + */ + template + static void parseLines (Strings& lines, ConstBufferSequence const& buffers) + { + for (typename ConstBufferSequence::const_iterator iter = buffers.begin (); + iter != buffers.end (); ++iter) + parserLines (lines, *iter); + } +}; + +#endif