From ee3b3e75408eaa303628aa452ce707224a551269 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Igor=20Spasi=C4=87?= Date: Wed, 12 Jun 2019 09:19:20 +0200 Subject: [PATCH] Ready for v2.0 --- README.md | 6 ++++-- src/main/java/com/oblac/nomen/Nomen.java | 15 +++++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 83275a6..ab16f5e 100644 --- a/README.md +++ b/README.md @@ -8,8 +8,10 @@ that you can use for some unique IDs :) Generated names may consist of: -+ adjective (70+ names) -+ color name (50+ names) ++ adjective (1400+) ++ animals (380+) ++ color name (80+) ++ nouns (850+) + person name (140+ names) + superb name (10+ names) + pokemon name (700+ names) diff --git a/src/main/java/com/oblac/nomen/Nomen.java b/src/main/java/com/oblac/nomen/Nomen.java index 90b6f81..62f9eb4 100644 --- a/src/main/java/com/oblac/nomen/Nomen.java +++ b/src/main/java/com/oblac/nomen/Nomen.java @@ -9,6 +9,7 @@ import com.oblac.nomen.data.Superb; import java.util.LinkedList; +import java.util.List; import java.util.Random; import java.util.concurrent.atomic.AtomicInteger; import java.util.function.Supplier; @@ -56,6 +57,15 @@ public Nomen literal(final String literal) { return this; } + public Nomen random(final List strings) { + template.add(() -> randomValueFrom(strings)); + return this; + } + public Nomen random(final String... strings) { + template.add(() -> randomValueFrom(strings)); + return this; + } + /** * Appends color name. */ @@ -214,6 +224,11 @@ private String randomValueFrom(String... list) { return list[index]; } + private String randomValueFrom(List list) { + final int index = RND.nextInt(list.size()); + + return list.get(index); + } private static final Random RND = new Random(); } \ No newline at end of file