protected void resolveProps() { this.jobProps = PropsUtils.resolveProps(this.jobProps); }
private void failIfNotException(final Props props) { try { PropsUtils.resolveProps(props); Assert.fail(); } catch (final UndefinedPropertyException e) { e.printStackTrace(); } catch (final IllegalArgumentException e) { e.printStackTrace(); } } }
pluginLoadProps = PropsUtils.resolveProps(pluginLoadProps); } catch (final Exception e) { logger.error("pluginLoadProps to help with debugging: " + pluginLoadProps);
jobProps = PropsUtils.resolveProps(jobProps); pluginLoadProps = PropsUtils.resolveProps(pluginLoadProps); } else {
@Test public void testInvalidSyntax() throws Exception { final Props propsGrandParent = new Props(); final Props propsParent = new Props(propsGrandParent); final Props props = new Props(propsParent); propsParent.put("my", "name"); props.put("res1", "$(my)"); final Props resolved = PropsUtils.resolveProps(props); Assert.assertEquals("$(my)", resolved.get("res1")); }
@Test public void testExpressionResolution() throws IOException { final Props props = Props.of("normkey", "normal", "num1", "1", "num2", "2", "num3", "3", "variablereplaced", "${num1}", "expression1", "$(1+10)", "expression2", "$(1+10)*2", "expression3", "$($(${num1} + ${num3})*10)", "expression4", "$(${num1} + ${expression3})", "expression5", "$($($(2+3)) + 3) + $(${expression3} + 1)", "expression6", "$(1 + ${normkey})", "expression7", "$(\"${normkey}\" + 1)", "expression8", "${expression1}", "expression9", "$((2+3) + 3)"); final Props resolved = PropsUtils.resolveProps(props); Assert.assertEquals("normal", resolved.get("normkey")); Assert.assertEquals("1", resolved.get("num1")); Assert.assertEquals("2", resolved.get("num2")); Assert.assertEquals("3", resolved.get("num3")); Assert.assertEquals("1", resolved.get("variablereplaced")); Assert.assertEquals("11", resolved.get("expression1")); Assert.assertEquals("11*2", resolved.get("expression2")); Assert.assertEquals("40", resolved.get("expression3")); Assert.assertEquals("41", resolved.get("expression4")); Assert.assertEquals("8 + 41", resolved.get("expression5")); Assert.assertEquals("1", resolved.get("expression6")); Assert.assertEquals("normal1", resolved.get("expression7")); Assert.assertEquals("11", resolved.get("expression8")); Assert.assertEquals("8", resolved.get("expression9")); }
propsParent.put("res6", " t ${your} ${your} ${their} ${res5}"); final Props resolved = PropsUtils.resolveProps(props); Assert.assertEquals("name", resolved.get("res1")); Assert.assertEquals("ears a", resolved.get("res2"));
protected void resolveProps() { jobProps = PropsUtils.resolveProps(jobProps); }
protected void resolveProps() { this.jobProps = PropsUtils.resolveProps(this.jobProps); }
jobConf = PropsUtils.resolveProps(jobConf); sysConf = PropsUtils.resolveProps(sysConf);
sysConf = PropsUtils.resolveProps(sysConf);
pluginLoadProps = PropsUtils.resolveProps(pluginLoadProps); } catch (final Exception e) { logger.error("pluginLoadProps to help with debugging: " + pluginLoadProps);
jobProps = PropsUtils.resolveProps(jobProps); pluginLoadProps = PropsUtils.resolveProps(pluginLoadProps); } else {