private void addPropertiesToTree(Element root, String propFilePath) {
        try {
            Properties props = new Properties();
            if (new File(propFilePath).exists())
                props.load(new FileInputStream(propFilePath));
            if (!props.isEmpty()) {
                for (Object keyObject : props.keySet()) {
                    try {
                        String key = (String) keyObject;
                        if (props.getProperty(key).length() > 0) {
                            if (key.contains("EurelisProperty")) {
                                continue;
                            }
                            if (key.endsWith(".s")) {
                                Element property = root.addElement("property")
                                        .addAttribute("type", "shared");
                                property.addElement("name")
                                        .addText(key.substring(0, key.length() - 2));
                                property.addElement("value")
                                        .add(new FlyweightCDATA(props.getProperty(key)));
                            } else if (key.endsWith(".i")) {
                                Element property = root.addElement("property");
                                property.addElement("name")
                                        .addText(key.substring(0, key.length() - 2));
                                property.addElement("value")
                                        .add(new FlyweightCDATA(props.getProperty(key)));
                            } else {
                                Element property = root.addElement("property");
                                property.addElement("name")
                                        .addText(key);
                                property.addElement("value")
                                        .add(new FlyweightCDATA(props.getProperty(key)));
                            }
                        }
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }
            }

        } catch (Exception e) {
            e.printStackTrace();
        }
    }