diff options
author | Serghei Cebotari <serghei@cebotari.ru> | 2023-10-10 22:26:16 +0300 |
---|---|---|
committer | Serghei Cebotari <serghei@cebotari.ru> | 2023-10-10 22:26:16 +0300 |
commit | 6b9c0dfffc3ecfcfb642f696250aee8e4ed6031b (patch) | |
tree | 2d98f14ab3c194f6e5620fa375c4fd805c6b957e /RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs | |
parent | 942c60beeac8b89643dc66235db62d4c8f739a0a (diff) |
Move Modifiers to own project
Diffstat (limited to 'RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs')
-rw-r--r-- | RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs b/RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs new file mode 100644 index 0000000..32d5e5e --- /dev/null +++ b/RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs @@ -0,0 +1,47 @@ +namespace RhSolutions.QueryModifiers; + +public class ProductQueryModifierFactory +{ + public IProductQueryModifier GetModifier(string productTypeName) + { + switch (productTypeName) + { + case "Монтажная гильза": + return new SleeveQueryModifier(); + case "Тройник RAUTITAN": + return new TPieceQueryModifier(); + case "Тройник RAUTITAN резьбовой наружный": + return new ThreadTPieceExternal(); + case "Тройник RAUTITAN резьбовой внутренний": + return new ThreadTPieceInternal(); + case "Тройник RAUTITAN резьбовой настенный": + return new ThreadTPieceInternal(); + case "Переходник на наружную резьбу": + return new AdapterExternalModifier(); + case "Переходник на внутреннюю резьбу": + return new AdapterInternalModifier(); + case "Переходник с накидной гайкой": + return new AdapterScrewcapModifier(); + case "Угольник с наружной резьбой": + return new ThreadElbowExternalModifier(); + case "Угольник с внутренней резьбой": + return new ThreadElbowInternalModifier(); + case "Угольник с накидной гайкой": + return new ScrewcapElbowModifier(); + case "Муфта соединительная": + return new CouplingModifier(); + case "Угольник RAUTITAN": + return new ElbowModifier(); + case "Flex": + return new FlexPipeQueryModifier(); + case "Pink": + return new PinkPipeQueryModifier(); + case "Stabil": + return new StabilPipeQueryModifier(); + case "Black": + return new BlackPipeQueryModifier(); + default: + return new BypassQueryModifier(); + } + } +} |