public static Sandwich SandwichFactory(SandwichType SandwichType_) { switch (SandwichType_) { case SandwichType.Ham: return(new HamSandwich()); case SandwichType.Cheese: return(new CheeseSandwich()); default: break; } throw new System.NotSupportedException("The Sandwich type " + SandwichType_.ToString() + " is not recognized."); }
private SandwichMaker(SandwichType sandwichTyp, bool hasMayo, bool hasMustard) { switch (sandwichTyp) { case SandwichType.Bauru: _builder = new BauruSandwichBuilder(); break; case SandwichType.Chacarero: _builder = new ChacareroSandwichBuilder(); break; case SandwichType.Jambon: _builder = new JambonBeurreSandwichBuilder(); break; default: _builder = null; break; } _hasMayo = hasMayo; _hasMustard = hasMustard; }
/// <summary> /// First step for creating sandwich. /// </summary> /// <param name="sandwichType">type of sandwich.</param> /// <returns>SandwichMaker instance.</returns> public static IBuildSandwich CreateSandwich(SandwichType sandwichType) { return(new SandwichMaker(sandwichType, true, false)); }
/// <summary> /// First step for creating sandwich. /// </summary> /// <param name="sandwichType">type of sandwich.</param> /// <param name="hasMayo">to have mayo or no.</param> /// <param name="hasMustard">to have mustard or no.</param> /// <returns>SandwichMaker instance.</returns> public static IBuildSandwich CreateSandwich(SandwichType sandwichType, bool hasMayo, bool hasMustard) { return(new SandwichMaker(sandwichType, hasMayo, hasMustard)); }