Comment afficher la liste de tous les liant des variables avec GroovyShell
Je suis très nouveau pour Groovy. Comment puis-je liste toutes les variables que j'ai transmis à la Liaison constructeur ?
Considérant que j'ai suivantes :
@Test
public void test() {
List<String> outputNames = Arrays.asList("returnValue", "ce");
String script = getScript();
Script compiledScript = compileScript(script);
CustomError ce = new CustomError("shit", Arrays.asList(new Long(1)));
Map<String, Object> inputObjects = new HashMap<String, Object>();
inputObjects.put("input", "Hovada");
inputObjects.put("error", ce);
Binding binding = new Binding(inputObjects);
compiledScript.setBinding(binding);
compiledScript.run();
for (String outputName : outputNames) {
System.out.format("outputName : %s = %s", outputName, binding.getVariable(outputName));
}
}
private Script compileScript(String script) {
GroovyShell groovyShell = new GroovyShell();
Script compiledScript = groovyShell.parse(script);
return compiledScript;
}
Comment puis-je effectuer une itération sur toutes les variables (en plus de la table de hachage) en groovy.script ?
OriginalL'auteur lisak | 2011-09-14
Vous devez vous connecter pour publier un commentaire.
Script compiledScript
représente le script, si vous regardez le code source, vous verrez qu'il a la propriété de liaison et de lecture+setter et de Liaison a une variable "variables". Alors vous allez :Pour
Map<String, String>
...vous pouvez également définir les propriétés de ce type :
et elle est stockée dans la Liaison des variables.
OriginalL'auteur lisak