@Override public String generate(final Context context) { if (generatedCache != null) return generatedCache; return generatedCache = statementBuilder.generate(context); }
@Override public String generate(final Context context) { if (generatedCache != null) return generatedCache; return generatedCache = statementBuilder.generate(context); }
@Override public String generate(Context context) { if (param instanceof Parameter) { return Stmt.castTo(PathSegmentImpl.class, Stmt.loadVariable(((Parameter) param).getName())) .invoke("getEncodedPathWithParameters").generate(context); } else { return Stmt.castTo(PathSegmentImpl.class, param).invoke("getEncodedPathWithParameters").generate(context); } }
@Test public void testSetEncoding() { Set<String> s = new LinkedHashSet<String>(); s.add("foo"); s.add("bar"); assertEquals("new java.util.HashSet() {\n" + " {\n" + " add(\"foo\");\n" + " add(\"bar\");\n" + " }\n" + "}", Stmt.load(s).generate(Context.create())); }
@Test public void testListEncoding() { List<String> s = new ArrayList<String>(); s.add("foo"); s.add("bar"); assertEquals("new java.util.ArrayList() {\n" + " {\n" + " add(\"foo\");\n" + " add(\"bar\");\n" + " }\n" + "}", Stmt.load(s).generate(Context.create())); }
@Test public void testMapEncoding() { Map<String, String> s = new LinkedHashMap<String, String>(); s.put("foo", "fooz"); s.put("bar", "barz"); assertEquals("new java.util.HashMap() {\n" + " {\n" + " put(\"foo\", \"fooz\");\n" + " put(\"bar\", \"barz\");\n" + " }\n" + "}", Stmt.load(s).generate(Context.create())); } }
@Test public void testEnumReference() { final ContextualStatementBuilder statementBuilder = Stmt.loadStatic(TEnum.class, "FIRST"); assertEquals(TEnum.class.getName() + ".FIRST", statementBuilder.generate(Context.create())); } }