@Test public void testParsePrintFunctions() throws Exception { PrintFunctionLibrary library = PrintFunctionLibrary.parsePrintFunctions(new ConfigThingy("test", confString)); assertNotNull(library.get("TestFunction"), "Missing function by parser"); }
public static PrintFunctionLibrary parsePrintFunctions(ConfigThingy conf) { PrintFunctionLibrary funcs = new PrintFunctionLibrary(); conf = conf.query("Druckfunktionen"); for (ConfigThingy printFunctionCollection : conf) { for (ConfigThingy printFunction : printFunctionCollection) { String name = printFunction.getName(); try { ConfigThingy extConf = printFunction.get("EXTERN"); String orderStr = printFunction.getString("ORDER", PrintFunctionLibrary.DEFAULT_PRINTFUNCTION_ORDER_VALUE); int order = Integer.parseInt(orderStr); PrintFunction func = new ExternalPrintFunction(name, order, extConf); funcs.add(name, func); } catch (NodeNotFoundException e) { LOGGER.error(L.m("Druckfunktion '%1' enthält keinen Schlüssel EXTERN", name), e); } catch (ConfigurationErrorException e) { LOGGER.error(L.m("Fehler beim Parsen der Druckfunktion \"%1\"", name)); LOGGER.debug(L.m("Fehler beim Parsen der Druckfunktion \"%1\"", name), e); } catch (NumberFormatException e) { LOGGER.error( L.m("Der Wert des Schlüssels ORDER in der Druckfunktion '%2' ist ungültig.", name), e); } } } return funcs; }
PrintFunctionLibrary { public static PrintFunctionLibrary parsePrintFunctions(ConfigThingy conf) { PrintFunctionLibrary funcs = new PrintFunctionLibrary(); conf = conf.query("Druckfunktionen"); for (ConfigThingy printFunctionCollection : conf) { for (ConfigThingy printFunction : printFunctionCollection) { String name = printFunction.getName(); try { ConfigThingy extConf = printFunction.get("EXTERN"); String orderStr = printFunction.getString("ORDER", PrintFunctionLibrary.DEFAULT_PRINTFUNCTION_ORDER_VALUE); int order = Integer.parseInt(orderStr); PrintFunction func = new ExternalPrintFunction(name, order, extConf); funcs.add(name, func); } catch (NodeNotFoundException e) { LOGGER.error(L.m("Druckfunktion '%1' enthält keinen Schlüssel EXTERN", name), e); } catch (ConfigurationErrorException e) { LOGGER.error(L.m("Fehler beim Parsen der Druckfunktion \"%1\"", name)); LOGGER.debug(L.m("Fehler beim Parsen der Druckfunktion \"%1\"", name), e); } catch (NumberFormatException e) { LOGGER.error( L.m("Der Wert des Schlüssels ORDER in der Druckfunktion '%2' ist ungültig.", name), e); } } } return funcs; } }
PrintFunctionLibrary { public static PrintFunctionLibrary parsePrintFunctions(ConfigThingy conf) { PrintFunctionLibrary funcs = new PrintFunctionLibrary(); conf = conf.query("Druckfunktionen"); for (ConfigThingy printFunctionCollection : conf) { for (ConfigThingy printFunction : printFunctionCollection) { String name = printFunction.getName(); try { ConfigThingy extConf = printFunction.get("EXTERN"); String orderStr = printFunction.getString("ORDER", PrintFunctionLibrary.DEFAULT_PRINTFUNCTION_ORDER_VALUE); int order = Integer.parseInt(orderStr); PrintFunction func = new ExternalPrintFunction(name, order, extConf); funcs.add(name, func); } catch (NodeNotFoundException e) { LOGGER.error(L.m("Druckfunktion '%1' enthält keinen Schlüssel EXTERN", name), e); } catch (ConfigurationErrorException e) { LOGGER.error(L.m("Fehler beim Parsen der Druckfunktion \"%1\"", name)); LOGGER.debug(L.m("Fehler beim Parsen der Druckfunktion \"%1\"", name), e); } catch (NumberFormatException e) { LOGGER.error( L.m("Der Wert des Schlüssels ORDER in der Druckfunktion '%2' ist ungültig.", name), e); } } } return funcs; } PrintFunctionLibrary();  PrintFunctionLibrary(PrintFunctionLibrary baselib); }
PrintFunctionLibrary { public static PrintFunctionLibrary parsePrintFunctions(ConfigThingy conf) { PrintFunctionLibrary funcs = new PrintFunctionLibrary(); conf = conf.query("Druckfunktionen"); for (ConfigThingy printFunctionCollection : conf) { for (ConfigThingy printFunction : printFunctionCollection) { String name = printFunction.getName(); try { ConfigThingy extConf = printFunction.get("EXTERN"); String orderStr = printFunction.getString("ORDER", PrintFunctionLibrary.DEFAULT_PRINTFUNCTION_ORDER_VALUE); int order = Integer.parseInt(orderStr); PrintFunction func = new ExternalPrintFunction(name, order, extConf); funcs.add(name, func); } catch (NodeNotFoundException e) { LOGGER.error(L.m("Druckfunktion '%1' enthält keinen Schlüssel EXTERN", name), e); } catch (ConfigurationErrorException e) { LOGGER.error(L.m("Fehler beim Parsen der Druckfunktion \"%1\"", name)); LOGGER.debug(L.m("Fehler beim Parsen der Druckfunktion \"%1\"", name), e); } catch (NumberFormatException e) { LOGGER.error( L.m("Der Wert des Schlüssels ORDER in der Druckfunktion '%2' ist ungültig.", name), e); } } } return funcs; } PrintFunctionLibrary();  PrintFunctionLibrary(PrintFunctionLibrary baselib); void add(String funcName, PrintFunction func); PrintFunction get(String funcName); Set<String> getFunctionNames(); static PrintFunctionLibrary parsePrintFunctions(ConfigThingy conf); }
PrintFunctionLibrary { public static PrintFunctionLibrary parsePrintFunctions(ConfigThingy conf) { PrintFunctionLibrary funcs = new PrintFunctionLibrary(); conf = conf.query("Druckfunktionen"); for (ConfigThingy printFunctionCollection : conf) { for (ConfigThingy printFunction : printFunctionCollection) { String name = printFunction.getName(); try { ConfigThingy extConf = printFunction.get("EXTERN"); String orderStr = printFunction.getString("ORDER", PrintFunctionLibrary.DEFAULT_PRINTFUNCTION_ORDER_VALUE); int order = Integer.parseInt(orderStr); PrintFunction func = new ExternalPrintFunction(name, order, extConf); funcs.add(name, func); } catch (NodeNotFoundException e) { LOGGER.error(L.m("Druckfunktion '%1' enthält keinen Schlüssel EXTERN", name), e); } catch (ConfigurationErrorException e) { LOGGER.error(L.m("Fehler beim Parsen der Druckfunktion \"%1\"", name)); LOGGER.debug(L.m("Fehler beim Parsen der Druckfunktion \"%1\"", name), e); } catch (NumberFormatException e) { LOGGER.error( L.m("Der Wert des Schlüssels ORDER in der Druckfunktion '%2' ist ungültig.", name), e); } } } return funcs; } PrintFunctionLibrary();  PrintFunctionLibrary(PrintFunctionLibrary baselib); void add(String funcName, PrintFunction func); PrintFunction get(String funcName); Set<String> getFunctionNames(); static PrintFunctionLibrary parsePrintFunctions(ConfigThingy conf);  }