// TODO: return bool // This relates to the line that goes with '@'. internal void ChangeCurrentAssignee(string newAssignment) { switch (newAssignment) { case CriteriaConstants.HOLDER_COUNTRY: { currentAssignment = AssignTo.HolderCountry; break; } case CriteriaConstants.STOCK_TYPE: { currentAssignment = AssignTo.StockType; break; } case CriteriaConstants.DIRECTION: { currentAssignment = AssignTo.Direction; break; } default: { break; } } if (progress == PreAggProgress.HaveNothing) { progress = PreAggProgress.HaveName; } }
// This relates to the line that goes with '#'. internal void AddComparisonValue(string value) { switch (currentAssignment) { case AssignTo.Undefined: { // TODO: Return bool break; } case AssignTo.Direction: { if (string.Compare(value, StockDirection.Long.ToString().ToLower()) == 0) { direction = StockDirection.Long; } else { direction = StockDirection.Short; } break; } case AssignTo.HolderCountry: { holderCountry.Add(value); break; } case AssignTo.StockType: { if (string.Compare(value, StockType.Common.ToString().ToLower()) == 0) { type = StockType.Common; } else { type = StockType.Preferred; } break; } default: { break; } } if (progress == PreAggProgress.HaveComparisonType) { progress = PreAggProgress.HaveComparisonValue; preAggSpecificationsSatisfied = true; } }
// This relates to the line that goes with '^'. internal void AddComparisonType(string specifier) { switch (specifier) { case CriteriaConstants.IN_MATCH_SPECIFIER: { switch (currentAssignment) { case AssignTo.Undefined: { // TODO: return bool break; } case AssignTo.Direction: { directionCompare = Comparison.IN; break; } case AssignTo.HolderCountry: { countryCompare = Comparison.IN; break; } case AssignTo.StockType: { stockTypeCompare = Comparison.IN; break; } } break; } case CriteriaConstants.EQUAL_MATCH_SPECIFIER: { switch (currentAssignment) { case AssignTo.Undefined: { // TODO: return bool break; } case AssignTo.Direction: { directionCompare = Comparison.Equal; break; } case AssignTo.HolderCountry: { countryCompare = Comparison.Equal; break; } case AssignTo.StockType: { stockTypeCompare = Comparison.Equal; break; } } break; } case CriteriaConstants.NOT_EQUAL_MATCH_SPECIFIER: { switch (currentAssignment) { case AssignTo.Undefined: { // TODO: return bool break; } case AssignTo.Direction: { directionCompare = Comparison.NotEqual; break; } case AssignTo.HolderCountry: { countryCompare = Comparison.NotEqual; break; } case AssignTo.StockType: { stockTypeCompare = Comparison.NotEqual; break; } } break; } default: { break; } } if (progress == PreAggProgress.HaveName) { progress = PreAggProgress.HaveComparisonType; } }