From 7b654475d9a783a63bd87b3e44533e61d2c6dd4d Mon Sep 17 00:00:00 2001 From: AJ Hoffer Date: Fri, 21 Feb 2020 16:37:37 -0500 Subject: [PATCH] improvements --- Lorem.NET/Extensions.cs | 6 ++---- Lorem.NET/{Lorem.cs => Generate.cs} | 4 ++-- Lorem.NET/Lorem.NET.csproj | 2 +- Lorem.NET/RandomHelper.cs | 4 ++-- Lorem.NET/Source.cs | 11 ++++++++--- 5 files changed, 15 insertions(+), 12 deletions(-) rename Lorem.NET/{Lorem.cs => Generate.cs} (97%) diff --git a/Lorem.NET/Extensions.cs b/Lorem.NET/Extensions.cs index a600e31..5073858 100644 --- a/Lorem.NET/Extensions.cs +++ b/Lorem.NET/Extensions.cs @@ -4,25 +4,23 @@ namespace LoremNET { internal static class Extensions { - internal static String Remove(this string s, string pattern) + internal static string Remove(this string s, string pattern) { return s.Replace(pattern, ""); } - internal static String[] Split(this string s, string separator) + internal static string[] Split(this string s, string separator) { return s.Split(new[] { separator }, StringSplitOptions.None); } internal static string UppercaseFirst(this string s) { - // Check for empty string. if (string.IsNullOrEmpty(s)) { return string.Empty; } - // Return char and concat substring. return char.ToUpper(s[0]) + s.Substring(1); } } diff --git a/Lorem.NET/Lorem.cs b/Lorem.NET/Generate.cs similarity index 97% rename from Lorem.NET/Lorem.cs rename to Lorem.NET/Generate.cs index d614799..3bee0cf 100644 --- a/Lorem.NET/Lorem.cs +++ b/Lorem.NET/Generate.cs @@ -4,7 +4,7 @@ using System.Linq; namespace LoremNET { - public partial class Lorem + public static class Generate { public static bool Chance(int successes, int attempts) { @@ -70,7 +70,7 @@ namespace LoremNET public static string Email() { - return string.Format("{0}@{1}.com", Lorem.Words(1, false), Lorem.Words(1, false)); + return string.Format("{0}@{1}.com", Generate.Words(1, false), Generate.Words(1, false)); } public static string Words(int wordCount, bool uppercaseFirstLetter = true, bool includePunctuation = false) diff --git a/Lorem.NET/Lorem.NET.csproj b/Lorem.NET/Lorem.NET.csproj index 4ec2a8f..9e0a497 100644 --- a/Lorem.NET/Lorem.NET.csproj +++ b/Lorem.NET/Lorem.NET.csproj @@ -40,7 +40,7 @@ - + diff --git a/Lorem.NET/RandomHelper.cs b/Lorem.NET/RandomHelper.cs index 3212160..281fc65 100644 --- a/Lorem.NET/RandomHelper.cs +++ b/Lorem.NET/RandomHelper.cs @@ -6,14 +6,14 @@ namespace LoremNET /* * http://stackoverflow.com/a/1785821/234132 */ - public static class RandomHelper + internal static class RandomHelper { private static int seedCounter = new Random().Next(); [ThreadStatic] private static Random rng; - public static Random Instance + internal static Random Instance { get { diff --git a/Lorem.NET/Source.cs b/Lorem.NET/Source.cs index 1b5bd34..054ea69 100644 --- a/Lorem.NET/Source.cs +++ b/Lorem.NET/Source.cs @@ -3,9 +3,9 @@ using System.Linq; namespace LoremNET { - public class Source + public static class Source { - public static string LoremIpsum = @"lorem ipsum amet, pellentesque mattis accumsan maximus etiam mollis ligula non iaculis ornare mauris efficitur ex eu rhoncus aliquam in hac habitasse platea dictumst maecenas ultrices, purus at venenatis auctor, sem nulla urna, molestie nisi mi a ut euismod nibh id libero lacinia, sit amet lacinia lectus viverra donec scelerisque dictum enim, dignissim dolor cursus morbi rhoncus, elementum magna sed, sed velit consectetur adipiscing elit curabitur nulla, eleifend vel, tempor metus phasellus vel pulvinar, lobortis quis, nullam felis orci congue vitae augue nisi, tincidunt id, posuere fermentum facilisis ultricies mi, nisl fusce neque, vulputate integer tortor tempus praesent proin quis nunc massa congue, quam auctor eros placerat eros, leo nec, sapien egestas duis feugiat, vestibulum porttitor, odio sollicitudin arcu, et aenean sagittis ante urna fringilla, risus et, vivamus semper nibh, eget finibus est laoreet justo commodo sagittis, vitae, nunc, diam ac, tellus posuere, condimentum enim tellus, faucibus suscipit ac nec turpis interdum malesuada fames primis quisque pretium ex, feugiat porttitor massa, vehicula dapibus blandit, hendrerit elit, aliquet nam orci, fringilla blandit ullamcorper mauris, ultrices consequat tempor, convallis gravida sodales volutpat finibus, neque pulvinar varius, porta laoreet, eu, ligula, porta, placerat, lacus pharetra erat bibendum leo, tristique cras rutrum at, dui tortor, in, varius arcu interdum, vestibulum, magna, ante, imperdiet erat, luctus odio, non, dui, volutpat, bibendum, quam, euismod, mattis, class aptent taciti sociosqu ad litora torquent per conubia nostra, inceptos himenaeos suspendisse lorem, a, sem, eleifend, commodo, dolor, cursus, luctus, lectus,"; + public static string Seed { get; private set; } = @"lorem ipsum amet, pellentesque mattis accumsan maximus etiam mollis ligula non iaculis ornare mauris efficitur ex eu rhoncus aliquam in hac habitasse platea dictumst maecenas ultrices, purus at venenatis auctor, sem nulla urna, molestie nisi mi a ut euismod nibh id libero lacinia, sit amet lacinia lectus viverra donec scelerisque dictum enim, dignissim dolor cursus morbi rhoncus, elementum magna sed, sed velit consectetur adipiscing elit curabitur nulla, eleifend vel, tempor metus phasellus vel pulvinar, lobortis quis, nullam felis orci congue vitae augue nisi, tincidunt id, posuere fermentum facilisis ultricies mi, nisl fusce neque, vulputate integer tortor tempus praesent proin quis nunc massa congue, quam auctor eros placerat eros, leo nec, sapien egestas duis feugiat, vestibulum porttitor, odio sollicitudin arcu, et aenean sagittis ante urna fringilla, risus et, vivamus semper nibh, eget finibus est laoreet justo commodo sagittis, vitae, nunc, diam ac, tellus posuere, condimentum enim tellus, faucibus suscipit ac nec turpis interdum malesuada fames primis quisque pretium ex, feugiat porttitor massa, vehicula dapibus blandit, hendrerit elit, aliquet nam orci, fringilla blandit ullamcorper mauris, ultrices consequat tempor, convallis gravida sodales volutpat finibus, neque pulvinar varius, porta laoreet, eu, ligula, porta, placerat, lacus pharetra erat bibendum leo, tristique cras rutrum at, dui tortor, in, varius arcu interdum, vestibulum, magna, ante, imperdiet erat, luctus odio, non, dui, volutpat, bibendum, quam, euismod, mattis, class aptent taciti sociosqu ad litora torquent per conubia nostra, inceptos himenaeos suspendisse lorem, a, sem, eleifend, commodo, dolor, cursus, luctus, lectus,"; internal static IEnumerable Rearrange(string words) { @@ -14,7 +14,12 @@ namespace LoremNET internal static IEnumerable WordList(bool includePuncation) { - return includePuncation ? Rearrange(LoremIpsum) : Rearrange(LoremIpsum.Remove(",")); + return includePuncation ? Rearrange(Seed) : Rearrange(Seed.Remove(",")); + } + + public static void UpdateSource(string text) + { + Seed = text; } } } \ No newline at end of file