1 25 26 package org.snipsnap.render.macro; 27 28 import org.snipsnap.render.macro.parameter.SnipMacroParameter; 29 import org.snipsnap.user.UserManager; 30 import org.snipsnap.user.UserManagerFactory; 31 import org.radeox.util.i18n.ResourceManager; 32 33 import java.io.IOException ; 34 import java.io.Writer ; 35 36 42 43 public class UserMacro extends ListOutputMacro { 44 public String getName() { 45 return "list-of-users"; 46 } 47 48 public String getDescription() { 49 return ResourceManager.getString("i18n.messages", "macro.users.description"); 50 } 51 52 public String [] getParamDescription() { 53 return ResourceManager.getString("i18n.messages", "macro.users.params").split(";"); 54 } 55 56 public void execute(Writer writer, SnipMacroParameter params) 57 throws IllegalArgumentException , IOException { 58 String type = null; 59 boolean showSize = true; 60 if (params.getLength() > 0) { 61 type = params.get("0"); 62 } 63 showSize = !(params.getLength() > 1 && "nosize".equals(params.get("1"))); 64 if (params.getLength() <= 2) { 65 output(writer, params.getSnipRenderContext().getSnip(), 66 ResourceManager.getString("i18n.messages", "macro.users.title"), 67 UserManagerFactory.getInstance().getAll(), 68 ResourceManager.getString("i18n.messages", "macro.users.nouser"), 69 type, showSize); 70 } else { 71 throw new IllegalArgumentException ("Number of arguments does not match"); 72 } 73 } 74 } 75 | Popular Tags |