Index: src/Parameters/Makefile.am
===================================================================
--- src/Parameters/Makefile.am	(revision 4d177ec4d8c63bc65a43448bfbe3f00be0088f2d)
+++ src/Parameters/Makefile.am	(revision 8ccd447c858a4e9526f1b320cbd0872143c894a0)
@@ -16,4 +16,5 @@
 	Parameters/Validators/Specific/ParserFileValidator.cpp \
 	Parameters/Validators/Specific/ParserTypeValidator.cpp \
+	Parameters/Validators/Specific/RandomNumberValidators.cpp \
 	Parameters/Validators/Specific/RealSpaceMatrixInvertibleValidator.cpp \
 	Parameters/Validators/Specific/RealSpaceMatrixSymmetricValidator.cpp \
Index: src/Parameters/Validators/Specific/RandomNumberValidators.cpp
===================================================================
--- src/Parameters/Validators/Specific/RandomNumberValidators.cpp	(revision 8ccd447c858a4e9526f1b320cbd0872143c894a0)
+++ src/Parameters/Validators/Specific/RandomNumberValidators.cpp	(revision 8ccd447c858a4e9526f1b320cbd0872143c894a0)
@@ -0,0 +1,89 @@
+/*
+ * Project: MoleCuilder
+ * Description: creates and alters molecular systems
+ * Copyright (C)  2012 University of Bonn. All rights reserved.
+ * Please see the LICENSE file or "Copyright notice" in builder.cpp for details.
+ */
+
+/*
+ * RandomNumberValidators.cpp
+ *
+ *  Created on: May 14, 2012
+ *      Author: ankele
+ */
+
+
+// include config.h
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "CodePatterns/MemDebug.hpp"
+
+#include "RandomNumberValidators.hpp"
+
+#include "RandomNumbers/RandomNumberDistributionFactory.hpp"
+
+bool RandomNumberDistributionNameValidator::isValid(const std::string & _value) const
+{
+  RandomNumberDistributionFactory::getInstance();
+  for (RandomNumberDistributionFactory::NameMap::const_iterator
+      iter = RandomNumberDistributionFactory::getInstance().names.begin();
+      iter != RandomNumberDistributionFactory::getInstance().names.end();
+      ++iter) {
+    if (_value == iter->second)
+      return true;
+  }
+  return false;
+}
+
+bool RandomNumberDistributionNameValidator::operator==(const Validator<std::string> &_instance) const
+{
+  const RandomNumberDistributionNameValidator *inst =
+      dynamic_cast<const RandomNumberDistributionNameValidator *>(&_instance);
+  if (inst)
+    return true;
+  else
+    return false;
+}
+
+Validator< std::string >* RandomNumberDistributionNameValidator::clone() const
+{
+  Validator< std::string > *inst =
+      new RandomNumberDistributionNameValidator();
+  return inst;
+}
+
+
+
+
+
+
+
+
+
+bool RandomNumberEngineNameValidator::isValid(const std::string & _value) const
+{
+  return true;
+}
+
+bool RandomNumberEngineNameValidator::operator==(const Validator<std::string> &_instance) const
+{
+  const RandomNumberEngineNameValidator *inst =
+      dynamic_cast<const RandomNumberEngineNameValidator *>(&_instance);
+  if (inst)
+    return true;
+  else
+    return false;
+}
+
+Validator< std::string >* RandomNumberEngineNameValidator::clone() const
+{
+  Validator< std::string > *inst =
+      new RandomNumberEngineNameValidator();
+  return inst;
+}
+
+
+
+
Index: src/Parameters/Validators/Specific/RandomNumberValidators.hpp
===================================================================
--- src/Parameters/Validators/Specific/RandomNumberValidators.hpp	(revision 4d177ec4d8c63bc65a43448bfbe3f00be0088f2d)
+++ src/Parameters/Validators/Specific/RandomNumberValidators.hpp	(revision 8ccd447c858a4e9526f1b320cbd0872143c894a0)
@@ -17,17 +17,25 @@
 #include <string>
 
-#include "Parameters/Validators/DummyValidator.hpp"
+#include "Parameters/Validators/Validator.hpp"
 
 /** This validator checks whether the given string contains the name of a
  * present \ref RandomNumberDistribution.
  */
-class RandomNumberDistributionNameValidator : public DummyValidator<std::string>
-{};
+class RandomNumberDistributionNameValidator : public Validator<std::string>
+{
+  bool isValid(const std::string & _value) const;
+  bool operator==(const Validator<std::string> &_instance) const;
+  Validator< std::string >* clone() const;
+};
 
 /** This validator checks whether the given string contains the name of a
  * present \ref RandomNumberEngine.
  */
-class RandomNumberEngineNameValidator : public DummyValidator<std::string>
-{};
+class RandomNumberEngineNameValidator : public Validator<std::string>
+{
+  bool isValid(const std::string & _value) const;
+  bool operator==(const Validator<std::string> &_instance) const;
+  Validator< std::string >* clone() const;
+};
 
 #endif /* RANDOMNUMBERVALIDATORs_HPP_ */
Index: src/RandomNumbers/RandomNumberDistributionFactory.hpp
===================================================================
--- src/RandomNumbers/RandomNumberDistributionFactory.hpp	(revision 4d177ec4d8c63bc65a43448bfbe3f00be0088f2d)
+++ src/RandomNumbers/RandomNumberDistributionFactory.hpp	(revision 8ccd447c858a4e9526f1b320cbd0872143c894a0)
@@ -29,4 +29,5 @@
 
 class RandomNumberDistributionFactoryUnitTest;
+class RandomNumberDistributionNameValidator;
 namespace MoleCuilder {
   class CommandSetRandomNumbersDistributionAction;
@@ -48,4 +49,5 @@
   friend class Singleton<RandomNumberDistributionFactory>;
   friend class RandomNumberDistributionFactoryTest;
+  friend class RandomNumberDistributionNameValidator;
   friend class MoleCuilder::CommandSetRandomNumbersDistributionAction;
 
