public static string AddClause(string originalText, string addition, ChainOperator chainOp)
{
if (addition == null)
throw new ArgumentNullException("addition");
if (addition.Length == 0)
throw new ArgumentException("Clause cannot be empty", "addition");
if (string.IsNullOrEmpty(originalText))
return addition;
var queryText = string.Empty;
switch (chainOp)
{
case ChainOperator.And:
queryText = MoveSettingsToTheEnd(string.Format("+({0}) +({1})", originalText, addition)).Trim();
break;
case ChainOperator.Or:
queryText = MoveSettingsToTheEnd(string.Format("({0}) {1}", originalText, addition));
break;
}
return queryText;
}