//add by Leo 2012-04-11
public static Map<String, Document> parsersXml(String name, String log,String db) {
String Str_log = removeSymbol(log);
String Str_db = removeSymbol(db);
Map<String, Document> d_map=new HashMap<String, Document>();
// log
StringReader sr_log = new StringReader(Str_log);
InputSource is_log = new InputSource(sr_log);
DocumentBuilderFactory factory_log = DocumentBuilderFactory
.newInstance();
Document doc_log = null;
// DB
StringReader sr_db = new StringReader(Str_db);
InputSource is_db = new InputSource(sr_db);
DocumentBuilderFactory factory_db = DocumentBuilderFactory
.newInstance();
Document doc_db = null;
try {
DocumentBuilder builder_log = factory_log.newDocumentBuilder();
doc_log = builder_log.parse(is_log);
DocumentBuilder builder_db = factory_db.newDocumentBuilder();
doc_db = builder_db.parse(is_db);
d_map.put("log", doc_log);
d_map.put("db", doc_db);
} catch (ParserConfigurationException e1) {
// TODO Auto-generated catch block
m_logger.logError("DBProcessorRvt:parsersXml(): - Exception:\n" + Log4jAdapter.getStackTrace(e1));
} catch (SAXException e1) {
// TODO Auto-generated catch block
m_logger.logError("DBProcessorRvt:parsersXml(): - Exception:\n" + Log4jAdapter.getStackTrace(e1));
} catch (IOException e1) {
// TODO Auto-generated catch block
m_logger.logError("DBProcessorRvt:parsersXml(): - Exception:\n" + Log4jAdapter.getStackTrace(e1));
}
return d_map;
}
public static void getNodeValue(Document doc_log,Document doc_db,String name){
int faild_count=0;
try {
NodeList nl1_log = doc_log.getElementsByTagName(name);
NodeList nl1_db = doc_db.getElementsByTagName(name);
int size1 = nl1_log.getLength();
for (int i = 0; i < size1; i++) {
Node n = nl1_log.item(i);
Node n_db = nl1_db.item(i);
NodeList nl2 = n.getChildNodes();
NodeList nl2_db = n_db.getChildNodes();
int size2 = nl2.getLength();
for (int j = 0; j < size2; j++) {
Node n2 = nl2.item(j);
Node n2_db = nl2_db.item(j);
if (n2.hasChildNodes()) {
if(n2.getFirstChild().getNodeValue()==null){
NodeList nl3=n2.getChildNodes();
NodeList nl3_db=n2_db.getChildNodes();
int size3=nl3.getLength();
for(int k=0;k<size3;k++){
Node n3=nl3.item(k);
Node n3_db=nl3_db.item(k);
if(n3.hasChildNodes()){
if(n3.getFirstChild().getNodeValue()==null){
NodeList nl4=n3.getChildNodes();
NodeList nl4_db=n3_db.getChildNodes();
int size4=nl4.getLength();
for(int l=0;l<size4;l++){
Node n4=nl4.item(l);
Node n4_db=nl4_db.item(l);
if(n4.hasChildNodes()){
faild_count=(Integer)compare("PK",name,n4.getFirstChild().getNodeValue(),n4_db.getFirstChild().getNodeValue()).get("failed")+faild_count;
}
}
}else{
faild_count=(Integer)compare("PK",name,n3.getFirstChild().getNodeValue(),n3_db.getFirstChild().getNodeValue()).get("failed")+faild_count;
}
}
}
}else{
faild_count=(Integer)compare("PK",name,n2.getFirstChild().getNodeValue(),n2_db.getFirstChild().getNodeValue()).get("failed")+faild_count;
}
}
}
}
Failed_count=Failed_count+faild_count;
} catch (DOMException e) {
// TODO Auto-generated catch block
m_logger.logError("DBProcessorRvt:getNodeValue(): - Exception:\n" + Log4jAdapter.getStackTrace(e));
}
}
public static Map<String, Document> parsersXml(String name, String log,String db) {
String Str_log = removeSymbol(log);
String Str_db = removeSymbol(db);
Map<String, Document> d_map=new HashMap<String, Document>();
// log
StringReader sr_log = new StringReader(Str_log);
InputSource is_log = new InputSource(sr_log);
DocumentBuilderFactory factory_log = DocumentBuilderFactory
.newInstance();
Document doc_log = null;
// DB
StringReader sr_db = new StringReader(Str_db);
InputSource is_db = new InputSource(sr_db);
DocumentBuilderFactory factory_db = DocumentBuilderFactory
.newInstance();
Document doc_db = null;
try {
DocumentBuilder builder_log = factory_log.newDocumentBuilder();
doc_log = builder_log.parse(is_log);
DocumentBuilder builder_db = factory_db.newDocumentBuilder();
doc_db = builder_db.parse(is_db);
d_map.put("log", doc_log);
d_map.put("db", doc_db);
} catch (ParserConfigurationException e1) {
// TODO Auto-generated catch block
m_logger.logError("DBProcessorRvt:parsersXml(): - Exception:\n" + Log4jAdapter.getStackTrace(e1));
} catch (SAXException e1) {
// TODO Auto-generated catch block
m_logger.logError("DBProcessorRvt:parsersXml(): - Exception:\n" + Log4jAdapter.getStackTrace(e1));
} catch (IOException e1) {
// TODO Auto-generated catch block
m_logger.logError("DBProcessorRvt:parsersXml(): - Exception:\n" + Log4jAdapter.getStackTrace(e1));
}
return d_map;
}
public static void getNodeValue(Document doc_log,Document doc_db,String name){
int faild_count=0;
try {
NodeList nl1_log = doc_log.getElementsByTagName(name);
NodeList nl1_db = doc_db.getElementsByTagName(name);
int size1 = nl1_log.getLength();
for (int i = 0; i < size1; i++) {
Node n = nl1_log.item(i);
Node n_db = nl1_db.item(i);
NodeList nl2 = n.getChildNodes();
NodeList nl2_db = n_db.getChildNodes();
int size2 = nl2.getLength();
for (int j = 0; j < size2; j++) {
Node n2 = nl2.item(j);
Node n2_db = nl2_db.item(j);
if (n2.hasChildNodes()) {
if(n2.getFirstChild().getNodeValue()==null){
NodeList nl3=n2.getChildNodes();
NodeList nl3_db=n2_db.getChildNodes();
int size3=nl3.getLength();
for(int k=0;k<size3;k++){
Node n3=nl3.item(k);
Node n3_db=nl3_db.item(k);
if(n3.hasChildNodes()){
if(n3.getFirstChild().getNodeValue()==null){
NodeList nl4=n3.getChildNodes();
NodeList nl4_db=n3_db.getChildNodes();
int size4=nl4.getLength();
for(int l=0;l<size4;l++){
Node n4=nl4.item(l);
Node n4_db=nl4_db.item(l);
if(n4.hasChildNodes()){
faild_count=(Integer)compare("PK",name,n4.getFirstChild().getNodeValue(),n4_db.getFirstChild().getNodeValue()).get("failed")+faild_count;
}
}
}else{
faild_count=(Integer)compare("PK",name,n3.getFirstChild().getNodeValue(),n3_db.getFirstChild().getNodeValue()).get("failed")+faild_count;
}
}
}
}else{
faild_count=(Integer)compare("PK",name,n2.getFirstChild().getNodeValue(),n2_db.getFirstChild().getNodeValue()).get("failed")+faild_count;
}
}
}
}
Failed_count=Failed_count+faild_count;
} catch (DOMException e) {
// TODO Auto-generated catch block
m_logger.logError("DBProcessorRvt:getNodeValue(): - Exception:\n" + Log4jAdapter.getStackTrace(e));
}
}