/** * Instantiates a new clean-slate {@link UrlEncodingParserBuilder} object. * * <p> * This is equivalent to simply calling <code><jk>new</jk> UrlEncodingParserBuilder()</code>. * * <p> * Note that this method creates a builder initialized to all default settings, whereas {@link #builder()} copies * the settings of the object called on. * * @return A new {@link UrlEncodingParserBuilder} object. */ public static UrlEncodingParserBuilder create() { return new UrlEncodingParserBuilder(); }
@Override /* ContextBuilder */ public UrlEncodingParser build() { return build(UrlEncodingParser.class); }
/** * Configuration property: Serialize bean property collections/arrays as separate key/value pairs. * * <p> * Shortcut for calling <code>expandedParams(<jk>true</jk>)</code>. * * <h5 class='section'>See Also:</h5> * <ul> * <li class='jf'>{@link UrlEncodingParser#URLENC_expandedParams} * </ul> * * @return This object (for method chaining). */ public UrlEncodingParserBuilder expandedParams() { return set(URLENC_expandedParams, true); }
@Test public void testParserListeners() throws Exception { UonParser p = UrlEncodingParser.create().ignoreUnknownBeanProperties().listener(MyParserListener.class).build(); String in = "a=1&unknownProperty=foo&b=2"; p.parse(in, B.class); assertEquals(1, MyParserListener.events.size()); assertEquals("unknownProperty, line 1, column 4", MyParserListener.events.get(0)); }
@Test public void testCorrectHandlingOfUnknownProperties() throws Exception { ReaderParser p = UrlEncodingParser.create().ignoreUnknownBeanProperties().build(); B t; String in = "a=1&unknown=3&b=2"; t = p.parse(in, B.class); assertEquals(t.a, 1); assertEquals(t.b, 2); try { p = UrlEncodingParser.DEFAULT; p.parse(in, B.class); fail("Exception expected"); } catch (ParseException e) {} }
String in; p = UrlEncodingParser.create().expandedParams(true).build(); in = "" + "f01=a&f01=b"
UrlEncodingParser.create().expandedParams(true),
p = UrlEncodingParser.create().ignoreUnknownBeanProperties().build(); t = p.parse(urlencoding, O.class); assertEquals(123, t.foo);
/** * Instantiates a new clean-slate {@link UrlEncodingParserBuilder} object. * * <p> * This is equivalent to simply calling <code><jk>new</jk> UrlEncodingParserBuilder()</code>. * * <p> * Note that this method creates a builder initialized to all default settings, whereas {@link #builder()} copies * the settings of the object called on. * * @return A new {@link UrlEncodingParserBuilder} object. */ public static UrlEncodingParserBuilder create() { return new UrlEncodingParserBuilder(); }
@Override /* ContextBuilder */ public UrlEncodingParser build() { return build(UrlEncodingParser.class); }
/** * Configuration property: Serialize bean property collections/arrays as separate key/value pairs. * * <p> * Shortcut for calling <code>expandedParams(<jk>true</jk>)</code>. * * <h5 class='section'>See Also:</h5> * <ul> * <li class='jf'>{@link UrlEncodingParser#URLENC_expandedParams} * </ul> * * @return This object (for method chaining). */ public UrlEncodingParserBuilder expandedParams() { return set(URLENC_expandedParams, true); }
/** * Instantiates a new clean-slate {@link UrlEncodingParserBuilder} object. * * <p> * This is equivalent to simply calling <code><jk>new</jk> UrlEncodingParserBuilder()</code>. * * <p> * Note that this method creates a builder initialized to all default settings, whereas {@link #builder()} copies * the settings of the object called on. * * @return A new {@link UrlEncodingParserBuilder} object. */ public static UrlEncodingParserBuilder create() { return new UrlEncodingParserBuilder(); }
@Override /* ContextBuilder */ public UrlEncodingParser build() { return build(UrlEncodingParser.class); }
/** * Configuration property: Serialize bean property collections/arrays as separate key/value pairs. * * <p> * This is the parser-side equivalent of the {@link UrlEncodingParser#URLENC_expandedParams} setting. * * <h5 class='section'>See Also:</h5> * <ul> * <li class='jf'>{@link UrlEncodingParser#URLENC_expandedParams} * </ul> * * @param value * The new value for this property. * <br>Default is <jk>false</jk>. * @return This object (for method chaining). */ public UrlEncodingParserBuilder expandedParams(boolean value) { return set(URLENC_expandedParams, value); }
@Override /* Context */ public UrlEncodingParserBuilder builder() { return new UrlEncodingParserBuilder(getPropertyStore()); }
/** * Configuration property: Serialize bean property collections/arrays as separate key/value pairs. * * <p> * Shortcut for calling <code>expandedParams(<jk>true</jk>)</code>. * * <h5 class='section'>See Also:</h5> * <ul> * <li class='jf'>{@link UrlEncodingParser#URLENC_expandedParams} * </ul> * * @return This object (for method chaining). */ public UrlEncodingParserBuilder expandedParams() { return set(URLENC_expandedParams, true); }
@Override /* Context */ public UrlEncodingParserBuilder builder() { return new UrlEncodingParserBuilder(getPropertyStore()); }
/** * Configuration property: Serialize bean property collections/arrays as separate key/value pairs. * * <p> * This is the parser-side equivalent of the {@link UrlEncodingParser#URLENC_expandedParams} setting. * * <h5 class='section'>See Also:</h5> * <ul> * <li class='jf'>{@link UrlEncodingParser#URLENC_expandedParams} * </ul> * * @param value * The new value for this property. * <br>Default is <jk>false</jk>. * @return This object (for method chaining). */ public UrlEncodingParserBuilder expandedParams(boolean value) { return set(URLENC_expandedParams, value); }
@Override /* Context */ public UrlEncodingParserBuilder builder() { return new UrlEncodingParserBuilder(getPropertyStore()); }