Skip to content

Instantly share code, notes, and snippets.

@ozgun
Created December 27, 2013 14:53
Show Gist options
  • Select an option

  • Save ozgun/8147964 to your computer and use it in GitHub Desktop.

Select an option

Save ozgun/8147964 to your computer and use it in GitHub Desktop.
Parse settings.xml
package com.example;
import java.io.File;
import java.io.IOException;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
public class AppConfig {
// Database
private static String dbAdapter;
private static String dbHost;
private static String dbName;
private static String dbUser;
private static String dbPassword;
private static String dbPort;
// KamuSM Time Stamp Server (TSA)
private static String tsaKamuSMUrl;
private static String tsaKamuSMUser;
private static String tsaKamuSMPassword;
// Smart Card
private static String smartCardPin;
/**
* Konfigurasyon bilgileri config/settings.yml dosyasından okunur.
* @throws Exception
*/
public static void load() throws Exception {
java.nio.file.Path p = java.nio.file.Paths.get("config", "app_settings.xml");
File fXmlFile = new File(p.toString());
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
org.w3c.dom.Document doc = dBuilder.parse(fXmlFile);
//optional, but recommended
//http://stackoverflow.com/questions/13786607/normalization-in-dom-parsing-with-java-how-does-it-work
doc.getDocumentElement().normalize();
NodeList nList;
NodeList nList2;
Node nNode;
Node nNode2;
org.w3c.dom.Element eElement;
org.w3c.dom.Element eElement2;
nList = doc.getElementsByTagName("database");
nNode = nList.item(0);
eElement = (Element) nNode;
dbAdapter = eElement.getElementsByTagName("adapter").item(0).getTextContent();
dbHost = eElement.getElementsByTagName("host").item(0).getTextContent();
dbName = eElement.getElementsByTagName("db_name").item(0).getTextContent();
dbUser = eElement.getElementsByTagName("user").item(0).getTextContent();
dbPassword = eElement.getElementsByTagName("password").item(0).getTextContent();
dbPort = eElement.getElementsByTagName("port").item(0).getTextContent();
nList = doc.getElementsByTagName("tsa");
nNode = nList.item(0);
eElement = (Element) nNode;
nList2 = eElement.getElementsByTagName("kamuSM");
nNode2 = nList2.item(0);
eElement2 = (Element) nNode2;
tsaKamuSMUrl = eElement2.getElementsByTagName("url").item(0).getTextContent();
tsaKamuSMUser = eElement2.getElementsByTagName("user").item(0).getTextContent();
tsaKamuSMPassword = eElement2.getElementsByTagName("password").item(0).getTextContent();
nList = doc.getElementsByTagName("smartCard");
nNode = nList.item(0);
eElement = (Element) nNode;
smartCardPin = eElement.getElementsByTagName("pin").item(0).getTextContent();
System.out.println("*** Konfigurasyon dosyasından okunan smart card pin'i: " + smartCardPin + " ***");
if (smartCardPin.length() == 0) {
throw new Exception("Smart Card pin'i konfigurasyon dosyasından okunamadı!!!");
//smartCardPin = null;
}
//System.out.println(tsaKamuSMUrl + "-" + tsaKamuSMPassword + "-" + tsaKamuSMUser);
}
public static String getDbAdapter() {
return dbAdapter;
}
public static String getDbHost() {
return dbHost;
}
public static String getDbName() {
return dbName;
}
public static String getDbUser() {
return dbUser;
}
public static String getDbPassword() {
return dbPassword;
}
public static String getDbPort() {
return dbPort;
}
public static String getTsaKamuSMUrl() {
return tsaKamuSMUrl;
}
public static String getTsaKamuSMUser() {
return tsaKamuSMUser;
}
public static String getTsaKamuSMPassword() {
return tsaKamuSMPassword;
}
public static String getSmartCardPin() {
return smartCardPin;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment