diff --git a/plugins/neon/src/fr/inrialpes/exmo/align/plugin/neontk/OnlineAlign.java b/plugins/neon/src/fr/inrialpes/exmo/align/plugin/neontk/OnlineAlign.java index ea177fd62910ed1256fd098337814faafdb32d16..f2c2dec1c3b63dfb5ecc9c2c61743c407be75dc6 100755 --- a/plugins/neon/src/fr/inrialpes/exmo/align/plugin/neontk/OnlineAlign.java +++ b/plugins/neon/src/fr/inrialpes/exmo/align/plugin/neontk/OnlineAlign.java @@ -21,13 +21,13 @@ package fr.inrialpes.exmo.align.plugin.neontk; import java.io.BufferedReader; -import java.io.BufferedInputStream; +//import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; -import java.io.FileWriter; +//import java.io.FileWriter; import java.io.IOException; -import java.io.InputStream; +//import java.io.InputStream; import java.io.InputStreamReader; import java.io.ByteArrayInputStream; @@ -88,8 +88,11 @@ public class OnlineAlign { JButton export = null; JButton store = null; JButton trim = null; - //Parameters globalParam = null; - //String rdfString = null; + + JButton allAl = null; + JButton findAl = null; + JButton map = null; + private static DocumentBuilder BUILDER = null; final DocumentBuilderFactory fac = DocumentBuilderFactory.newInstance(); @@ -326,24 +329,17 @@ public class OnlineAlign { saxex.printStackTrace(); } - String[] result = getTagFromSOAP( domMessage, "listalignmentsResponse/alignmentList/alid" ); - //for(int i=0; i< result.length;i++) System.out.println("aligns=" + result[i]); - + return result; - - - + } public String getAlignId(String method, String onto1, String onto2) { String[] aservArgAlign = new String[6]; String answer = null ; - - //System.out.println("Uri 1="+ onto1); - //System.out.println("Uri 2="+ onto2); - + Parameters params = new BasicParameters(); params.setParameter( "host", HOST ); //params.setParameter( "http", PORT ); @@ -383,13 +379,10 @@ public class OnlineAlign { saxex.printStackTrace(); } - String result[] = getTagFromSOAP( domMessage, "matchResponse" ); //System.out.println("Match align Id=" + result[0]); - - return result[0]; - + return result[0]; } @@ -447,9 +440,8 @@ public class OnlineAlign { return result[0]; } - public String getRDFAlignmentParsed() { - - Document domMessage = null; + public String getRDFAlignmentParsed( ) { + Document domMessage = null; try { domMessage = BUILDER.parse( new ByteArrayInputStream( globalAnswer.getBytes()) ); @@ -461,23 +453,20 @@ public class OnlineAlign { String result[] = getTagFromSOAP( domMessage, "retrieveResponse/result/RDF" ); - - - //System.out.println("RDFAlign="+ result[0]); - - //InputStream fromServer = new BufferedInputStream( - // new ProgressMonitorInputStream(component, "Reading ... " , new ByteArrayInputStream( result[0].getBytes()) )); - //new FileInputStream(fileName ) )); - - return result[0]; + return result[0]; } - public void getRDFAlignment(String alignId, JButton exp, JButton st, JButton tr) { + public void getRDFAlignment(String alignId, JButton exp, JButton st, JButton tr, + JButton al, JButton fi, JButton mp ) { //retrieve alignment for storing in OWL file export = exp; store = st; trim = tr; + allAl = al; + findAl = fi; + map = mp; + Parameters params = new BasicParameters(); params = new BasicParameters(); params.setParameter( "host", HOST ); @@ -504,8 +493,7 @@ public class OnlineAlign { //the result is put in "globalAnswer" sendMessage( message, params ); - - //if(! connected ) return null; + //if(! connected ) return null; } catch ( Exception ex ) { ex.printStackTrace(); }; } @@ -557,8 +545,7 @@ public class OnlineAlign { String result[] = getTagFromSOAP( domMessage, "storeResponse" ); - - + //System.out.println("Stored Align="+ result[0]); return result[0]; @@ -602,8 +589,7 @@ public class OnlineAlign { String nm = stream.toString(); result = new String[1]; result[0] = nm; - //System.out.println("result retrieve="+result[0]); - //System.out.println("no first="+ n.getNodeValue()); + } else { Node nn = (Node)(XPATH.evaluate("/Envelope/Body/" + tag, dom, XPathConstants.NODE)); result = new String[1]; @@ -802,12 +788,12 @@ public class OnlineAlign { if( param.getParameter("command").equals("retrieve") ) { - + globalAnswer = ""; Thread th = new Thread() { public void run() { - + ProgressMonitor pm = null; try { String mess = "Fetching alignment from server,"; @@ -815,7 +801,7 @@ public class OnlineAlign { ProgressMonitorInputStream pin = new ProgressMonitorInputStream( null, mess, globalConn.getInputStream() ); - ProgressMonitor pm = pin.getProgressMonitor(); + pm = pin.getProgressMonitor(); pm.setMaximum( maxSize ); pm.setMillisToPopup( 1 ); pm.setMillisToDecideToPopup( 2 ); @@ -835,19 +821,28 @@ public class OnlineAlign { pm.setMaximum( maxSize ); pm.setProgress( co ); } + } - if( ! pm.isCanceled() ) { - export.setEnabled(true); - store.setEnabled(true); - trim.setEnabled(true); - } - + export.setEnabled(true); + store.setEnabled(true); + trim.setEnabled(true); + allAl.setEnabled(true); + findAl.setEnabled(true); + map.setEnabled(true); + pm.setProgress( maxSize - 1 ); pin.close(); - } catch (Exception e) {e.printStackTrace();} + } catch (Exception e) { + + if( pm.isCanceled() ) { + allAl.setEnabled(true); + findAl.setEnabled(true); + map.setEnabled(true); + } + e.printStackTrace(); + } } - }; th.start(); @@ -924,9 +919,7 @@ public class OnlineAlign { if (bytes < 0) break; os.write(buffer, 0, bytes ); - //String st = new String( buffer ); - //str = str + st.substring(0, bytes); - //System.out.println("st="+st.substring(0, bytes)); + }