1 package net.pterodactylus.sone.template;
4 import java.util.Random;
6 import net.pterodactylus.util.template.Accessor;
7 import net.pterodactylus.util.template.TemplateContext;
10 * {@link Accessor} implementation for {@link List}s that can return a random value from the list.
12 * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
14 public class ListAccessor extends net.pterodactylus.util.template.ListAccessor {
16 private Random random = new Random();
19 public Object get(TemplateContext templateContext, Object object, String member) {
20 if ("random".equals(member)) {
21 List<?> list = (List<?>) object;
22 if (!list.isEmpty()) {
23 return list.get(random.nextInt(list.size()));
27 return super.get(templateContext, object, member);