public Map<String, String> getJavaClasses(InputStream stream) { Map<String, String> javaClasses = new HashMap<>(); PMML pmml = loadModel(PMML, stream); if (pmml != null && results.isEmpty()) { PMML4Unit unit = new PMML4UnitImpl(pmml); if (unit != null) { List<PMML4Model> models = unit.getModels(); models.forEach(model -> { Map.Entry<String, String> inputPojo = model.getMappedMiningPojo(); Map.Entry<String, String> ruleUnit = model.getMappedRuleUnit(); Map.Entry<String, String> outcome = null; if (model.getModelType() == PMML4ModelType.TREE) { outcome = ((Treemodel) model).getTreeNodeJava(); } if (inputPojo != null) { javaClasses.put(inputPojo.getKey(), inputPojo.getValue()); } if (ruleUnit != null) { javaClasses.put(ruleUnit.getKey(), ruleUnit.getValue()); } if (outcome != null) { javaClasses.put(outcome.getKey(), outcome.getValue()); } }); } } return javaClasses; }