code: private void generateProperties(JsonNode node, String parentPrefix,
  			Properties props) {
  
  		Iterator<Entry<String, JsonNode>> fields = node.fields();
  		while (fields.hasNext()) {
  			Entry<String, JsonNode> entry = fields.next();
  			String fieldName = entry.getKey();
  			JsonNode jsonNode = entry.getValue();
  			String nodePrefix = parentPrefix == null ? fieldName : parentPrefix
  					+ FIELD_NAME_SEPARATOR + fieldName;
  			if (jsonNode.isTextual() || jsonNode.isBoolean()) {
  				props.put(nodePrefix, jsonNode.asText());
  			} else if (jsonNode.isNumber()) {
  				props.put(nodePrefix, Integer.toString(jsonNode.asInt()));
  			} else if (jsonNode.isArray()) {
  				String arrayValue = convertToString(jsonNode);
  				props.put(nodePrefix, arrayValue);
  			}
  			generateProperties(jsonNode, nodePrefix, props);
  		}
  	}
docs: Generates the properties from a JSON node
  
  @param node
  the JSON node
  @param props
  the properties to populate