public List <PatternDetails> GetPatterns()
        {
            var patterns = new List <PatternDetails>
            {
                PatternServices.GetCreationalPatternsDetails(),
                GetPatternsFromFactory <StructuralPatternsFactory>(),
                GetPatternsFromFactory <BehavioralPatternsFactory>()
            };

            return(patterns);
        }
 private PatternDetails GetPatternsFromFactory <T>() where T : AbstractPatternsFactory
 {
     return(PatternServices.GetPatternsFromFactory <T>());
 }