1*d127360fSAndrew Rist /************************************************************** 2*d127360fSAndrew Rist * 3*d127360fSAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*d127360fSAndrew Rist * or more contributor license agreements. See the NOTICE file 5*d127360fSAndrew Rist * distributed with this work for additional information 6*d127360fSAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*d127360fSAndrew Rist * to you under the Apache License, Version 2.0 (the 8*d127360fSAndrew Rist * "License"); you may not use this file except in compliance 9*d127360fSAndrew Rist * with the License. You may obtain a copy of the License at 10*d127360fSAndrew Rist * 11*d127360fSAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*d127360fSAndrew Rist * 13*d127360fSAndrew Rist * Unless required by applicable law or agreed to in writing, 14*d127360fSAndrew Rist * software distributed under the License is distributed on an 15*d127360fSAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*d127360fSAndrew Rist * KIND, either express or implied. See the License for the 17*d127360fSAndrew Rist * specific language governing permissions and limitations 18*d127360fSAndrew Rist * under the License. 19*d127360fSAndrew Rist * 20*d127360fSAndrew Rist *************************************************************/ 21*d127360fSAndrew Rist 22cdf0e10cSrcweir package transex3.controller; 23cdf0e10cSrcweir 24cdf0e10cSrcweir import java.awt.event.ActionEvent; 25cdf0e10cSrcweir import java.awt.event.ActionListener; 26cdf0e10cSrcweir import java.awt.event.*; 27cdf0e10cSrcweir import java.awt.event.WindowAdapter; 28cdf0e10cSrcweir import java.awt.event.WindowEvent; 29cdf0e10cSrcweir import java.io.BufferedReader; 30cdf0e10cSrcweir import java.io.File; 31cdf0e10cSrcweir import java.io.FileNotFoundException; 32cdf0e10cSrcweir import java.io.IOException; 33cdf0e10cSrcweir import java.io.InputStreamReader; 34cdf0e10cSrcweir import java.lang.Runtime; 35cdf0e10cSrcweir import java.util.*; 36cdf0e10cSrcweir 37cdf0e10cSrcweir import javax.swing.ListSelectionModel; 38cdf0e10cSrcweir import javax.swing.WindowConstants; 39cdf0e10cSrcweir import javax.swing.event.*; 40cdf0e10cSrcweir 41cdf0e10cSrcweir import transex3.model.*; 42cdf0e10cSrcweir 43cdf0e10cSrcweir import java.io.*; 44cdf0e10cSrcweir import javax.swing.*; 45cdf0e10cSrcweir //import transex3.model.*; 46cdf0e10cSrcweir public class EditorController { 47cdf0e10cSrcweir public final String[] RESTYPES = { ".src",".hrc",".xcu",".xrm",".xhp" }; 48cdf0e10cSrcweir public final String RECFILE = ".recommand"; 49cdf0e10cSrcweir // Editor View 50cdf0e10cSrcweir static transex3.view.Editor aEditor = null; 51cdf0e10cSrcweir // Editor Model 52cdf0e10cSrcweir static Vector sdfstrings = new Vector(); 53cdf0e10cSrcweir static HashMap hashedsdfstrings = new HashMap(); 54cdf0e10cSrcweir int oldindex = 0; 55cdf0e10cSrcweir //HashMap hashedfilenames = new HashMap(); 56cdf0e10cSrcweir // Search for source Strings fetchSourceStrings( String rootdir )57cdf0e10cSrcweir public String fetchSourceStrings( String rootdir ){ 58cdf0e10cSrcweir 59cdf0e10cSrcweir //String outputfile = "h:\\workspace\\recommandEditor\\null2"; 60cdf0e10cSrcweir File tempfile = null; 61cdf0e10cSrcweir 62cdf0e10cSrcweir try { 63cdf0e10cSrcweir tempfile = File.createTempFile( "receditor" , "tmp" ); 64cdf0e10cSrcweir } catch (IOException e1) { 65cdf0e10cSrcweir // TODO Auto-generated catch block 66cdf0e10cSrcweir System.err.println("Can not create temp file\n"); 67cdf0e10cSrcweir e1.printStackTrace(); 68cdf0e10cSrcweir } 69cdf0e10cSrcweir 70cdf0e10cSrcweir String outputfile = tempfile.getAbsolutePath(); 71cdf0e10cSrcweir try 72cdf0e10cSrcweir { 73cdf0e10cSrcweir //System.out.println("localize_sl -QQ -skip_links -e -l en-US -f "+outputfile+" -d "+rootdir); 74cdf0e10cSrcweir System.out.println("localize_sl -QQ -skip_links -e -l en-US -f "+outputfile ); 75cdf0e10cSrcweir java.lang.Process aProc = Runtime.getRuntime().exec("localize_sl -QQ -skip_links -e -l en-US -f "+outputfile); 76cdf0e10cSrcweir 77cdf0e10cSrcweir //java.lang.Process aProc = Runtime.getRuntime().exec("localize_sl -QQ -e -l en-US -f "+outputfile+" -d "+rootdir); 78cdf0e10cSrcweir BufferedReader aBR = new BufferedReader( new InputStreamReader( aProc.getInputStream() ) ); 79cdf0e10cSrcweir String line = aBR.readLine(); 80cdf0e10cSrcweir while( line != null && line.length() > 0 ){ 81cdf0e10cSrcweir //System.out.print( line ); 82cdf0e10cSrcweir line = aBR.readLine(); 83cdf0e10cSrcweir } 84cdf0e10cSrcweir 85cdf0e10cSrcweir } catch (IOException e) { 86cdf0e10cSrcweir // TODO Auto-generated catch block 87cdf0e10cSrcweir e.printStackTrace(); 88cdf0e10cSrcweir } 89cdf0e10cSrcweir return outputfile; 90cdf0e10cSrcweir } 91cdf0e10cSrcweir // Search for recommand files findRecommandFiles( File rootdir , Vector list )92cdf0e10cSrcweir public void findRecommandFiles( File rootdir , Vector list ){ 93cdf0e10cSrcweir System.out.print("."); 94cdf0e10cSrcweir System.out.flush(); 95cdf0e10cSrcweir File[] aFileArray = rootdir.listFiles(); 96cdf0e10cSrcweir if( aFileArray != null ){ 97cdf0e10cSrcweir for( int cnt = 0; aFileArray.length > cnt ; cnt++ ){ 98cdf0e10cSrcweir if( aFileArray[ cnt ].isDirectory() && !aFileArray[ cnt ].getAbsolutePath().endsWith(".lnk") ) 99cdf0e10cSrcweir findRecommandFiles( aFileArray[ cnt ] , list); 100cdf0e10cSrcweir else if( aFileArray[ cnt ].isFile() && isRecommandFile( aFileArray[ cnt ] ) ) 101cdf0e10cSrcweir list.add( aFileArray[ cnt ]); 102cdf0e10cSrcweir } 103cdf0e10cSrcweir } 104cdf0e10cSrcweir } isResourceType( File aFile )105cdf0e10cSrcweir private boolean isResourceType( File aFile ){ 106cdf0e10cSrcweir String filename = aFile.getName(); 107cdf0e10cSrcweir boolean isResType = false; 108cdf0e10cSrcweir for(int cnt = 0; cnt < RESTYPES.length ; cnt++){ 109cdf0e10cSrcweir if( filename.endsWith( RESTYPES[ cnt ] ) ) 110cdf0e10cSrcweir isResType = true; 111cdf0e10cSrcweir } 112cdf0e10cSrcweir return isResType; 113cdf0e10cSrcweir } isRecommandFile( File aFile )114cdf0e10cSrcweir private boolean isRecommandFile( File aFile ){ 115cdf0e10cSrcweir return aFile.getName().endsWith( RECFILE ); 116cdf0e10cSrcweir } clearAllRows( JTable aTable )117cdf0e10cSrcweir public void clearAllRows( JTable aTable ){ 118cdf0e10cSrcweir for ( int n = 0; n < aTable.getRowCount() ; n++ ){ 119cdf0e10cSrcweir aTable.setValueAt( null , n , 0 ); 120cdf0e10cSrcweir aTable.setValueAt( null , n , 1 ); 121cdf0e10cSrcweir aTable.setValueAt( null , n , 2 ); 122cdf0e10cSrcweir aTable.setValueAt( null , n , 3 ); 123cdf0e10cSrcweir aTable.setValueAt( null , n , 4 ); 124cdf0e10cSrcweir } 125cdf0e10cSrcweir } 126cdf0e10cSrcweir // Add all data to view updateData()127cdf0e10cSrcweir void updateData(){ 128cdf0e10cSrcweir JTable recTable =transex3.controller.EditorController.aEditor.getRectable(); 129cdf0e10cSrcweir 130cdf0e10cSrcweir SdfString aSdfString = (SdfString) sdfstrings.get( oldindex ); 131cdf0e10cSrcweir Vector newStrings = new Vector(); 132cdf0e10cSrcweir for ( int n = 1; n < recTable.getRowCount() ; n++ ){ 133cdf0e10cSrcweir String lang = (String) recTable.getValueAt(n , 0 ); 134cdf0e10cSrcweir String text = (String) recTable.getValueAt(n , 1 ); 135cdf0e10cSrcweir String htext = (String) recTable.getValueAt(n , 2 ); 136cdf0e10cSrcweir String qhtext = (String) recTable.getValueAt(n , 3 ); 137cdf0e10cSrcweir String ttext = (String) recTable.getValueAt(n , 4 ); 138cdf0e10cSrcweir if( lang != null && text != null ){ 139cdf0e10cSrcweir //System.out.println("Data "+ lang + " " + text ); 140cdf0e10cSrcweir SdfEntity aSdfEntity = new SdfEntity(); 141cdf0e10cSrcweir aSdfEntity.setLangid( lang ); 142cdf0e10cSrcweir aSdfEntity.setText( text ); 143cdf0e10cSrcweir aSdfEntity.setHelptext( htext ); 144cdf0e10cSrcweir aSdfEntity.setQuickhelptext( qhtext ); 145cdf0e10cSrcweir aSdfEntity.setTitle( ttext ); 146cdf0e10cSrcweir newStrings.add( aSdfEntity ); 147cdf0e10cSrcweir aSdfString.setLanguageStrings( newStrings ); 148cdf0e10cSrcweir } 149cdf0e10cSrcweir } 150cdf0e10cSrcweir } 151cdf0e10cSrcweir initView()152cdf0e10cSrcweir public void initView(){ 153cdf0e10cSrcweir Object[][] sourceStringData = new Object[ sdfstrings.size() ][ 4 ]; 154cdf0e10cSrcweir Object[][] firstData = new Object[100][5]; 155cdf0e10cSrcweir // Set the files 156cdf0e10cSrcweir Iterator aIter = sdfstrings.iterator(); 157cdf0e10cSrcweir int counter = 0; 158cdf0e10cSrcweir while( aIter.hasNext() ){ 159cdf0e10cSrcweir SdfString aSdfString = (SdfString) aIter.next(); 160cdf0e10cSrcweir sourceStringData[ counter ][ 0 ] = aSdfString.getSourceString().getProject()+"\\"+aSdfString.getSourceString().getSource_file(); 161cdf0e10cSrcweir sourceStringData[ counter ][ 1 ] = aSdfString.getSourceString().getGid(); 162cdf0e10cSrcweir sourceStringData[ counter ][ 2 ] = aSdfString.getSourceString().getLid(); 163cdf0e10cSrcweir sourceStringData[ counter ][ 3 ] = aSdfString.getSourceString().getText(); 164cdf0e10cSrcweir if( counter == 0 ){ 165cdf0e10cSrcweir firstData[ 0 ][ 0 ] = "en-US"; 166cdf0e10cSrcweir firstData[ 0 ][ 1 ] = aSdfString.getSourceString().getText(); 167cdf0e10cSrcweir firstData[ 0 ][ 2 ] = aSdfString.getSourceString().getHelptext(); 168cdf0e10cSrcweir firstData[ 0 ][ 3 ] = aSdfString.getSourceString().getQuickhelptext(); 169cdf0e10cSrcweir firstData[ 0 ][ 4 ] = aSdfString.getSourceString().getTitle(); 170cdf0e10cSrcweir aSdfString = (SdfString) sdfstrings.get( 0 ); 171cdf0e10cSrcweir Vector values = aSdfString.getLanguageStrings(); 172cdf0e10cSrcweir for( int n = 0; n < values.size() ; n++ ) 173cdf0e10cSrcweir { 174cdf0e10cSrcweir SdfEntity aEntity = (SdfEntity) values.get( n ); 175cdf0e10cSrcweir firstData[ n+1 ][ 0 ] = aEntity.getLangid(); 176cdf0e10cSrcweir firstData[ n+1 ][ 1 ] = aEntity.getText(); 177cdf0e10cSrcweir firstData[ n+1 ][ 2 ] = aEntity.getHelptext(); 178cdf0e10cSrcweir firstData[ n+1 ][ 3 ] = aEntity.getQuickhelptext(); 179cdf0e10cSrcweir firstData[ n+1 ][ 4 ] = aEntity.getTitle(); 180cdf0e10cSrcweir } 181cdf0e10cSrcweir } 182cdf0e10cSrcweir counter++; 183cdf0e10cSrcweir } 184cdf0e10cSrcweir // Set the source srtings 185cdf0e10cSrcweir 186cdf0e10cSrcweir 187cdf0e10cSrcweir //aEditor = new transex3.view.Editor( sourceStringData , filedata.toArray() ); 188cdf0e10cSrcweir aEditor = new transex3.view.Editor( sourceStringData , firstData ); 189cdf0e10cSrcweir 190cdf0e10cSrcweir aEditor.setBounds(100,100,800,900); 191cdf0e10cSrcweir aEditor.setDefaultCloseOperation( WindowConstants.DISPOSE_ON_CLOSE ); 192cdf0e10cSrcweir aEditor.setVisible(true); 193cdf0e10cSrcweir aEditor.repaint(); 194cdf0e10cSrcweir aEditor.addWindowListener( new WindowAdapter(){ 195cdf0e10cSrcweir public void windowClosed(WindowEvent e ){ 196cdf0e10cSrcweir System.exit( 0 ); 197cdf0e10cSrcweir } 198cdf0e10cSrcweir }); 199cdf0e10cSrcweir 200cdf0e10cSrcweir aEditor.getMiExit().addActionListener( new ActionListener(){ 201cdf0e10cSrcweir public void actionPerformed( ActionEvent e ){ 202cdf0e10cSrcweir System.exit( 0 ); 203cdf0e10cSrcweir } 204cdf0e10cSrcweir }); 205cdf0e10cSrcweir 206cdf0e10cSrcweir aEditor.getMiSave().addActionListener( new ActionListener(){ 207cdf0e10cSrcweir public void actionPerformed( ActionEvent e ){ 208cdf0e10cSrcweir Iterator aIter = sdfstrings.iterator(); 209cdf0e10cSrcweir String lastFile=""; 210cdf0e10cSrcweir while( aIter.hasNext() ) 211cdf0e10cSrcweir { 212cdf0e10cSrcweir SdfString aSdfString = (SdfString )aIter.next(); 213cdf0e10cSrcweir if( aSdfString.getFileId().compareTo( lastFile ) != 0 ){ 214cdf0e10cSrcweir //aSdfString.removeFile(); 215cdf0e10cSrcweir } 216cdf0e10cSrcweir aSdfString.writeString(); 217cdf0e10cSrcweir lastFile = aSdfString.getFileId(); 218cdf0e10cSrcweir } 219cdf0e10cSrcweir } 220cdf0e10cSrcweir }); 221cdf0e10cSrcweir 222cdf0e10cSrcweir //aEditor.getRectable().putClientProperty("terminateEditOnFocusLost", Boolean.TRUE); 223cdf0e10cSrcweir aEditor.getRectable().addFocusListener( new FocusListener(){ 224cdf0e10cSrcweir public void focusLost(FocusEvent e){ 225cdf0e10cSrcweir //super.focusLost( e ); 226cdf0e10cSrcweir //System.out.println("focus lost"); 227cdf0e10cSrcweir JTable aTable = aEditor.getRectable(); 228cdf0e10cSrcweir if( aTable.getSelectedRow() != -1 && aTable.getSelectedColumn() != -1 ) 229cdf0e10cSrcweir aTable.getCellEditor( aTable.getSelectedRow(), aTable.getSelectedColumn() ).stopCellEditing(); 230cdf0e10cSrcweir updateData(); 231cdf0e10cSrcweir } 232cdf0e10cSrcweir public void focusGained( FocusEvent e){ 233cdf0e10cSrcweir //super.focusGained( e ); 234cdf0e10cSrcweir //System.out.println("focus gained"); 235cdf0e10cSrcweir } 236cdf0e10cSrcweir }); 237cdf0e10cSrcweir //setDefaultEditor(Object.class, new transex3.view.FocusCellEditor(new JTextField())); 238cdf0e10cSrcweir 239cdf0e10cSrcweir aEditor.getRectable().getModel().addTableModelListener( new TableModelListener() { 240cdf0e10cSrcweir public void tableChanged( TableModelEvent e ){ 241cdf0e10cSrcweir //System.out.println( e ); 242cdf0e10cSrcweir }}); 243cdf0e10cSrcweir 244cdf0e10cSrcweir 245cdf0e10cSrcweir aEditor.getRectable().getSelectionModel().addListSelectionListener( new ListSelectionListener(){ 246cdf0e10cSrcweir public void valueChanged( ListSelectionEvent e ){ 247cdf0e10cSrcweir JTable aTable = aEditor.getRectable(); 248cdf0e10cSrcweir //if( aTable.getSelectedRow() != -1 && aTable.getSelectedColumn() != -1 ) 249cdf0e10cSrcweir //aTable.getCellEditor( aTable.getSelectedRow(), aTable.getSelectedColumn() ).stopCellEditing(); 250cdf0e10cSrcweir 251cdf0e10cSrcweir updateData(); 252cdf0e10cSrcweir } 253cdf0e10cSrcweir }); 254cdf0e10cSrcweir 255cdf0e10cSrcweir aEditor.getTable().setSelectionMode( ListSelectionModel.SINGLE_SELECTION ); 256cdf0e10cSrcweir aEditor.getTable().getSelectionModel().addListSelectionListener( new ListSelectionListener(){ 257cdf0e10cSrcweir public void valueChanged( ListSelectionEvent e ){ 258cdf0e10cSrcweir //System.out.println("Selected = " +e.getFirstIndex()+"\n"); 259cdf0e10cSrcweir JTable table =transex3.controller.EditorController.aEditor.getTable(); 260cdf0e10cSrcweir JTable recTable =transex3.controller.EditorController.aEditor.getRectable(); 261cdf0e10cSrcweir SdfString aSdfString; 262cdf0e10cSrcweir JTable aTable = aEditor.getRectable(); 263cdf0e10cSrcweir if( aTable.getSelectedRow() != -1 && aTable.getSelectedColumn() != -1 ) 264cdf0e10cSrcweir aTable.getCellEditor( aTable.getSelectedRow(), aTable.getSelectedColumn() ).stopCellEditing(); 265cdf0e10cSrcweir 266cdf0e10cSrcweir updateData(); 267cdf0e10cSrcweir clearAllRows( recTable ); 268cdf0e10cSrcweir 269cdf0e10cSrcweir aSdfString = (SdfString) sdfstrings.get( table.getSelectedRow() ); 270cdf0e10cSrcweir recTable.setValueAt( "en-US" , 0, 0 ); 271cdf0e10cSrcweir recTable.setValueAt( aSdfString.getSourceString().getText() , 0, 1 ); 272cdf0e10cSrcweir recTable.setValueAt( aSdfString.getSourceString().getHelptext() , 0, 2 ); 273cdf0e10cSrcweir recTable.setValueAt( aSdfString.getSourceString().getQuickhelptext() , 0, 3 ); 274cdf0e10cSrcweir recTable.setValueAt( aSdfString.getSourceString().getTitle() , 0, 4 ); 275cdf0e10cSrcweir Vector values = aSdfString.getLanguageStrings(); 276cdf0e10cSrcweir for( int n = 0; n < values.size() ; n++ ) 277cdf0e10cSrcweir { 278cdf0e10cSrcweir SdfEntity aEntity = (SdfEntity) values.get( n ); 279cdf0e10cSrcweir recTable.setValueAt( aEntity.getLangid() , n+1 , 0 ); 280cdf0e10cSrcweir recTable.setValueAt( aEntity.getText() , n+1 , 1 ); 281cdf0e10cSrcweir recTable.setValueAt( aEntity.getHelptext() , n+1 , 2 ); 282cdf0e10cSrcweir recTable.setValueAt( aEntity.getQuickhelptext() , n+1 , 3 ); 283cdf0e10cSrcweir recTable.setValueAt( aEntity.getTitle() , n+1 , 4 ); 284cdf0e10cSrcweir } 285cdf0e10cSrcweir oldindex = table.getSelectedRow(); 286cdf0e10cSrcweir } 287cdf0e10cSrcweir }); 288cdf0e10cSrcweir //System.out.println("initView successfully"); 289cdf0e10cSrcweir } initInitialStrings()290cdf0e10cSrcweir public void initInitialStrings(){ 291cdf0e10cSrcweir String rootdir = java.lang.System.getProperty("SOLARSRC"); 292cdf0e10cSrcweir String sourcestringsfile = null; 293cdf0e10cSrcweir Vector recList = new Vector(); 294cdf0e10cSrcweir sourcestringsfile = fetchSourceStrings( rootdir ); 295cdf0e10cSrcweir //findRecommandFiles( new File( rootdir ) , recList ); 296cdf0e10cSrcweir readStrings( sourcestringsfile , recList ); 297cdf0e10cSrcweir File sfile = new File ( sourcestringsfile ); 298cdf0e10cSrcweir sfile.delete(); 299cdf0e10cSrcweir initView(); 300cdf0e10cSrcweir aEditor.repaint(); 301cdf0e10cSrcweir } 302cdf0e10cSrcweir // Connect recommand strings with source strings readStrings( String sourcefiles , Vector recfiles )303cdf0e10cSrcweir public void readStrings( String sourcefiles , Vector recfiles ) { 304cdf0e10cSrcweir BufferedReader aBR = null; 305cdf0e10cSrcweir try { 306cdf0e10cSrcweir //System.out.println("DBG: sourcefiles = " +sourcefiles); 307cdf0e10cSrcweir aBR = new BufferedReader( new FileReader( sourcefiles ) ); 308cdf0e10cSrcweir String current = aBR.readLine(); 309cdf0e10cSrcweir SdfString aSdfString = null; 310cdf0e10cSrcweir SdfEntity aSdfEntity = null; 311cdf0e10cSrcweir while( current != null ){ 312cdf0e10cSrcweir aSdfEntity = new SdfEntity(); 313cdf0e10cSrcweir aSdfEntity.setProperties( current ); 314cdf0e10cSrcweir aSdfString = new SdfString(); 315cdf0e10cSrcweir aSdfString.addSourceString( aSdfEntity ); 316cdf0e10cSrcweir hashedsdfstrings.put( aSdfString.getId() , aSdfString ); 317cdf0e10cSrcweir //System.out.println("Put ID '"+aSdfString.getId()+"'"); 318cdf0e10cSrcweir sdfstrings.add( aSdfString ); 319cdf0e10cSrcweir current = aBR.readLine(); 320cdf0e10cSrcweir 321cdf0e10cSrcweir } 322cdf0e10cSrcweir Iterator aIter=recfiles.iterator(); 323cdf0e10cSrcweir File aFile; 324cdf0e10cSrcweir BufferedReader aBR2 = null; 325cdf0e10cSrcweir //System.out.println("Connecting strings"); 326cdf0e10cSrcweir while( aIter.hasNext() ){ 327cdf0e10cSrcweir aFile = (File) aIter.next(); 328cdf0e10cSrcweir aBR2 = new BufferedReader( new FileReader( aFile ) ) ; 329cdf0e10cSrcweir String current2 = aBR2.readLine(); 330cdf0e10cSrcweir 331cdf0e10cSrcweir while ( current2 != null ){ 332cdf0e10cSrcweir SdfEntity aEntity = new SdfEntity(); 333cdf0e10cSrcweir aEntity.setProperties( current2 ); 334cdf0e10cSrcweir 335cdf0e10cSrcweir if( hashedsdfstrings.containsKey( aEntity.getId() ) ) 336cdf0e10cSrcweir { 337cdf0e10cSrcweir aSdfString = (SdfString) hashedsdfstrings.get( aEntity.getId() ); 338cdf0e10cSrcweir aSdfString.addLanguageString( aEntity ); 339cdf0e10cSrcweir } 340cdf0e10cSrcweir else 341cdf0e10cSrcweir { 342cdf0e10cSrcweir System.out.println("DBG: Can't find source string '"+aEntity.getId()+"'" ); 343cdf0e10cSrcweir } 344cdf0e10cSrcweir current2 = aBR2.readLine(); 345cdf0e10cSrcweir } 346cdf0e10cSrcweir } 347cdf0e10cSrcweir } catch (FileNotFoundException e) { 348cdf0e10cSrcweir // TODO Auto-generated catch block 349cdf0e10cSrcweir e.printStackTrace(); 350cdf0e10cSrcweir } catch ( IOException e){ 351cdf0e10cSrcweir e.printStackTrace(); 352cdf0e10cSrcweir } 353cdf0e10cSrcweir 354cdf0e10cSrcweir } 355cdf0e10cSrcweir } 356