public StringFilter GetStringFilter(DressesFilterName key) { StringFilter filter = null; if (_stringFilters.ContainsKey(key)) { filter = _stringFilters[key]; } else { switch (key) { case DressesFilterName.SearchFilter: filter = new SearchFilter(); break; case DressesFilterName.SizeFilter: filter = new SizeFilter(); break; default: throw new Exception("Wrong key"); } _stringFilters.Add(key, filter); } return(filter); }
private void FormulateStringDecorator(StringFilter sf, DressesFilterName dn, string parameter) { sf = _filterFactory.GetStringFilter(dn); sf.SetString(parameter); Decorate(sf); }
private void FormulateStateDecorator(StateFilter sf, DressesFilterName dn, bool state) { sf = _filterFactory.GetStateFilter(dn); sf.SetState(state); Decorate(sf); }