summaryrefslogtreecommitdiff
path: root/scripting/workben/installer/FileUpdater.java
diff options
context:
space:
mode:
authorneilm <neilm@openoffice.org>2002-11-21 19:20:06 +0000
committerneilm <neilm@openoffice.org>2002-11-21 19:20:06 +0000
commita0bcab9cd72e35448169ad0a9031e52bab0a36a0 (patch)
tree72ef3cd593f232d671a777835417df8a44baca8d /scripting/workben/installer/FileUpdater.java
parentb90cc24c86d6cb88bc1f964759477b94d3c06e09 (diff)
Additional error/exception handling
Diffstat (limited to 'scripting/workben/installer/FileUpdater.java')
-rw-r--r--scripting/workben/installer/FileUpdater.java139
1 files changed, 42 insertions, 97 deletions
diff --git a/scripting/workben/installer/FileUpdater.java b/scripting/workben/installer/FileUpdater.java
index e099adfb27fa..2579e30d879e 100644
--- a/scripting/workben/installer/FileUpdater.java
+++ b/scripting/workben/installer/FileUpdater.java
@@ -1,10 +1,11 @@
package installer;
import java.io.*;
+import javax.swing.JLabel;
public class FileUpdater {
- public static boolean updateProtocolHandler( String installPath ) {
+ public static boolean updateProtocolHandler( String installPath, JLabel statusLabel ) {
File in_file = null;
FileInputStream in = null;
File out_file = null;
@@ -20,7 +21,6 @@ public class FileUpdater {
count = -1;
for (String s = reader.readLine(); s != null; s = reader.readLine()) { //</oor:node>
count = count + 1;
- //System.out.println(count + s);
if(s != null) {
s.trim();
xmlArray[count] = s;
@@ -30,7 +30,11 @@ public class FileUpdater {
}
}
catch( IOException ioe ) {
- System.out.println( "Error reading Netbeans location information" );
+ String message = "\nError reading ProtocolHandler.xcu, please view SFrameworkInstall.log.";
+ System.out.println(message);
+ ioe.printStackTrace();
+ statusLabel.setText(message);
+ return false;
}
in_file.delete();
@@ -40,7 +44,6 @@ public class FileUpdater {
out = new FileWriter( out_file );
for(int i=0; i<count + 1; i++) {
- //System.err.println(xmlArray[i]);
out.write(xmlArray[i]+"\n");
if( ( xmlArray[i].indexOf( "<node oor:name=\"HandlerSet\">" ) != -1 ) && ( xmlArray[i+1].indexOf( "ScriptProtocolHandler" ) == -1 ) ) {
out.write( " <node oor:name=\"com.sun.star.comp.ScriptProtocolHandler\" oor:op=\"replace\">\n" );
@@ -52,8 +55,11 @@ public class FileUpdater {
}
}
catch( Exception e ) {
- System.out.println("\n Update ProtocolHandler Failed!");
- System.err.println(e);
+ String message = "\nError updating ProtocolHandler.xcu, please view SFrameworkInstall.log.";
+ System.out.println(message);
+ e.printStackTrace();
+ statusLabel.setText(message);
+ return false;
}
finally {
try {
@@ -61,20 +67,17 @@ public class FileUpdater {
System.out.println("File closed");
}
catch(Exception e) {
- System.out.println("\n Update ProtocolHandler Failed! (Write error)");
- System.err.println(e);
+ System.out.println("Update ProtocolHandler Failed! (File closing error)");
+ System.err.println(e);
+ e.printStackTrace();
}
}
return true;
+
}// updateProtocolHandler
- /*
- public static void main( String[] args ) {
- FileUpdater.updateProtocolHandler( "/scriptdev/neil/openoffice1.0.1ScriptFrame" );
- FileUpdater.updateStarBasicXLC( "/scriptdev/neil/openoffice1.0.1ScriptFrame" );
- }*/
- public static boolean updateScriptXLC( String installPath ) {
+ public static boolean updateScriptXLC( String installPath, JLabel statusLabel ) {
File in_file = null;
FileInputStream in = null;
@@ -92,7 +95,6 @@ public class FileUpdater {
count = -1;
for (String s = reader.readLine(); s != null; s = reader.readLine()) { //</oor:node>
count = count + 1;
- //System.out.println(count + s);
if(s != null) {
s.trim();
xmlArray[count] = s;
@@ -102,65 +104,24 @@ public class FileUpdater {
}
}
catch( IOException ioe ) {
- System.out.println( "Error reading updateScriptXLC information" );
+ String message = "Error reading script.xlc, please view SFrameworkInstall.log.";
+ System.out.println(message);
+ ioe.printStackTrace();
+ statusLabel.setText(message);
+ return false;
}
in_file.delete();
-
- /*
- File in_file = null;
- FileInputStream in = null;
- File out_file = null;
- FileWriter out = null;
- int count = 0;
-
- System.out.println("updateScriptXLC");
- try {
- in_file = new File( installPath+File.separator+"user"+File.separator+"basic"+File.separator+"script.xlc" );
-
- String[] xmlArray = new String[50];
- try {
- BufferedReader reader = new BufferedReader(new FileReader(in_file));
- count = -1;
- for (String s = reader.readLine(); s != null; s = reader.readLine()) {
- count = count + 1;
- if(s != null) {
- s.trim();
- xmlArray[count] = s;
- }
- else
- break;
- }
- }
- catch( IOException ioe ) {
- System.out.println( "Error reading Netbeans location information" );
- }
-
-
-
- in_file.delete();
- */
-
out_file = new File( installPath+File.separator+"user"+File.separator+"basic"+File.separator+"script.xlc" );
out_file.createNewFile();
- // FileWriter
- //out = new FileOutputStream( out_file );
out = new FileWriter( out_file );
//split the string into a string array with one line of xml in each element
//String[] xmlArray = xmlLine.split("\n");
- //for(int i=0; i<xmlArray.length; i++) {
for(int i=0; i<count + 1; i++) {
- //System.out.println(xmlArray[i]);
- //out.write(xmlArray[i].getBytes());
out.write(xmlArray[i]+"\n");
- //if( ( xmlArray[i].indexOf( "<node oor:name=\"HandlerSet\">" ) != -1 ) && ( xmlArray[i+1].indexOf( "ScriptProtocolHandler" ) == -1 ) ) {
if( ( xmlArray[i].indexOf( "<library:libraries xmlns:library" ) != -1 ) && ( xmlArray[i+1].indexOf( "ScriptBindingLibrary" ) == -1 ) ) {
-//<library:library library:name="Depot" xlink:href="file:///scriptdev/neil/openoffice1.0.1ScriptFrame/share/basic/Depot/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/>
-//<library:library library:name="Standard" xlink:href="file:///scriptdev/neil/openoffice1.0.1ScriptFrame/user/basic/Standard/script.xlb/" xlink:type="simple" library:link="false"/>
- //System.out.println(" <library:library library:name=\"ScriptBindingLibrary\" xlink:href=\"file://"+installPath+"/user/basic/ScriptBindingLibrary/script.xlb/\" xlink:type=\"simple\" library:link=\"false\"/>\n" );
-
String opSys = System.getProperty("os.name");
if (opSys.indexOf("Windows") != -1) {
out.write(" <library:library library:name=\"ScriptBindingLibrary\" library:link=\"false\"/>\n" );
@@ -172,16 +133,19 @@ public class FileUpdater {
}
}
catch( Exception e ) {
- System.out.println("\n Update Script.xlc Failed!");
- System.err.println(e);
+ String message = "\nError updating script.xlc, please view SFrameworkInstall.log.";
+ System.out.println(message);
+ e.printStackTrace();
+ statusLabel.setText(message);
+ return false;
}
finally {
try {
out.close();
- //System.out.println("File closed");
}
catch(Exception e) {
- System.out.println("\n Update Script.xlc Failed! (Write error)");
+ System.out.println("Update Script.xlc Failed (File closing error)");
+ e.printStackTrace();
System.err.println(e);
}
}
@@ -189,8 +153,7 @@ public class FileUpdater {
}// updateScriptXLC
- public static boolean updateDialogXLC( String installPath ) {
- //System.out.println( installPath+File.separator+"user"+File.separator+"basic"+File.separator+"dialog.xlc" );
+ public static boolean updateDialogXLC( String installPath, JLabel statusLabel ) {
File in_file = null;
FileInputStream in = null;
File out_file = null;
@@ -200,10 +163,6 @@ public class FileUpdater {
//System.out.println( "updateDialogXLC" );
try {
in_file = new File( installPath+File.separator+"user"+File.separator+"basic"+File.separator+"dialog.xlc" );
- //in = new FileInputStream( in_file );
- //parse the xml file
- //byte[] buffer = new byte[4096];
- //int bytes_read = 0;
String xmlLine = "";
String[] xmlArray = new String[50];
@@ -211,7 +170,6 @@ public class FileUpdater {
BufferedReader reader = new BufferedReader(new FileReader(in_file));
count = -1;
for (String s = reader.readLine(); s != null; s = reader.readLine()) {
- //System.out.println( s );
count = count + 1;
if(s != null) {
s.trim();
@@ -222,39 +180,23 @@ public class FileUpdater {
}
}
catch( IOException ioe ) {
- System.out.println( "Error reading Netbeans location information" );
+ String message = "\nError reading "+in_file.getPath()+" information"+ ioe + "\n Error Detail:\n" + ExceptionTraceHelper.getTrace(ioe);
+ System.out.println(message);
+ statusLabel.setText(message);
+ return false;
}
-
-
- /*
- while((bytes_read = in.read(buffer)) != -1) {
- //read the contents of the file into a string
- String tempXMLLine = new String(buffer, 0, bytes_read);
- xmlLine = xmlLine + tempXMLLine;
- }
- */
-
- //in.close();
in_file.delete();
out_file = new File( installPath+File.separator+"user"+File.separator+"basic"+File.separator+"dialog.xlc" );
out_file.createNewFile();
- // FileWriter
- //out = new FileOutputStream( out_file );
+
out = new FileWriter( out_file );
//split the string into a string array with one line of xml in each element
// String[] xmlArray = xmlLine.split("\n");
- //for(int i=0; i<xmlArray.length; i++) {
for(int i=0; i<count + 1; i++) {
- //System.out.println(xmlArray[i]);
- //out.write(xmlArray[i].getBytes());
out.write(xmlArray[i]+"\n");
- //if( ( xmlArray[i].indexOf( "<node oor:name=\"HandlerSet\">" ) != -1 ) && ( xmlArray[i+1].indexOf( "ScriptProtocolHandler" ) == -1 ) ) {
if( ( xmlArray[i].indexOf( "<library:libraries xmlns:library" ) != -1 ) && ( xmlArray[i+1].indexOf( "ScriptBindingLibrary" ) == -1 ) ) {
-//<library:library library:name="Depot" xlink:href="file:///scriptdev/neil/openoffice1.0.1ScriptFrame/share/basic/Depot/script.xlb/" xlink:type="simple" library:link="true" library:readonly="false"/>
-//<library:library library:name="Standard" xlink:href="file:///scriptdev/neil/openoffice1.0.1ScriptFrame/user/basic/Standard/script.xlb/" xlink:type="simple" library:link="false"/>
- //System.out.println( " <library:library library:name=\"ScriptBindingLibrary\" xlink:href=\"file://"+installPath+"/user/basic/ScriptBindingLibrary/dialog.xlb/\" xlink:type=\"simple\" library:link=\"false\"/>\n" );
String opSys = System.getProperty("os.name");
if (opSys.indexOf("Windows") != -1) {
out.write(" <library:library library:name=\"ScriptBindingLibrary\" library:link=\"false\"/>\n" );
@@ -266,16 +208,19 @@ public class FileUpdater {
}
}
catch( Exception e ) {
- System.out.println("\n Update Dialog.xlc Failed!");
- System.err.println(e);
+ String message = "\nError updating dialog.xlc, please view SFrameworkInstall.log.";
+ System.out.println(message);
+ e.printStackTrace();
+ statusLabel.setText(message);
+ return false;
}
finally {
try {
out.close();
- //System.out.println("File closed");
}
catch(Exception e) {
- System.out.println("\n Update Dialog.xlc Failed! (Write error)");
+ System.out.println("Update dialog.xlc Failed (File closing error)");
+ e.printStackTrace();
System.err.println(e);
}
}