org.csstudio.opibuilder.scriptUtil
Class FileUtil

java.lang.Object

public class FileUtil
extends java.lang.Object

The Utility class to help file operating.

Author:
Xihui Chen

Constructor Summary
FileUtil()
           
 
Method Summary
static java.io.InputStream getInputStreamFromFile(java.lang.String filePath, org.csstudio.opibuilder.editparts.AbstractBaseEditPart widget)
          Return an InputStream of the file on the specified path.
static org.jdom.Element loadXMLFile(java.lang.String filePath)
          Load the root element of an XML file.
static org.jdom.Element loadXMLFile(java.lang.String filePath, org.csstudio.opibuilder.editparts.AbstractBaseEditPart widget)
          Load the root element of an XML file.
static void openFile(java.lang.String filePath, org.csstudio.opibuilder.editparts.AbstractBaseEditPart widget)
          Open a file in default editor.
static java.lang.String openFileDialog(boolean inWorkspace)
          Open a file select dialog.
static void openWebPage(java.lang.String link)
          Open a web page.
static void playWavFile(java.lang.String filePath, org.csstudio.opibuilder.editparts.AbstractBaseEditPart widget)
          Play a .wav file.
static java.lang.String readTextFile(java.lang.String filePath)
          Read a text file.
static java.lang.String readTextFile(java.lang.String filePath, org.csstudio.opibuilder.editparts.AbstractBaseEditPart widget)
          Read a text file.
static void writeTextFile(java.lang.String filePath, boolean inWorkspace, org.csstudio.opibuilder.editparts.AbstractBaseEditPart widget, java.lang.String text, boolean append)
          Write a text file.
static void writeTextFile(java.lang.String filePath, boolean inWorkspace, java.lang.String text, boolean append)
          Write a text file.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FileUtil

public FileUtil()
Method Detail

loadXMLFile

public static org.jdom.Element loadXMLFile(java.lang.String filePath)
                                    throws java.lang.Exception
Load the root element of an XML file. The element is a JDOM Element.

Parameters:
filePath - path of the file. It must be an absolute path which can be either
a workspace path such as /BOY Examples/Scripts/myfile.xml
a local file system path such as C:\myfile.xml
or an URL path such as http://mysite.com/myfile.xml. *
Returns:
root element of the XML file.
Throws:
java.lang.Exception - if the file does not exist or is not a correct XML file.

loadXMLFile

public static org.jdom.Element loadXMLFile(java.lang.String filePath,
                                           org.csstudio.opibuilder.editparts.AbstractBaseEditPart widget)
                                    throws java.lang.Exception
Load the root element of an XML file. The element is a JDOM Element.

Parameters:
filePath - path of the file. It can be an absolute path or a relative path to the OPI that contains the specified widget. If it is an absolute path, it can be either
a workspace path such as /BOY Examples/Scripts/myfile.xml
a local file system path such as C:\myfile.xml
or an URL path such as http://mysite.com/myfile.xml.
widget - a widget in the OPI, which is used to provide relative path reference. It can be null if the path is an absolute path.
Returns:
root element of the XML file.
Throws:
java.lang.Exception - if the file does not exist or is not a correct XML file.

getInputStreamFromFile

public static java.io.InputStream getInputStreamFromFile(java.lang.String filePath,
                                                         org.csstudio.opibuilder.editparts.AbstractBaseEditPart widget)
                                                  throws java.lang.Exception
Return an InputStream of the file on the specified path. The client is responsible for closing the stream when finished.

Parameters:
filePath - path of the file. It can be an absolute path or a relative path to the OPI that contains the specified widget. If it is an absolute path, it can be either
a workspace path such as /BOY Examples/Scripts/myfile.xml
a local file system path such as C:\myfile.xml
or an URL path such as http://mysite.com/myfile.xml.
widget - a widget in the OPI, which is used to provide relative path reference. It can be null if the path is an absolute path.
Returns:
java.io.InputStream of the file.
Throws:
java.lang.Exception - if the file does not exist.

readTextFile

public static java.lang.String readTextFile(java.lang.String filePath)
                                     throws java.lang.Exception
Read a text file.

Parameters:
filePath - path of the file. It must be an absolute path which can be either
a workspace path such as /BOY Examples/Scripts/myfile.xml
a local file system path such as C:\myfile.xml
or an URL path such as http://mysite.com/myfile.xml.
Returns:
a string of the text.
Throws:
java.lang.Exception - if the file does not exist or is not a correct text file.

readTextFile

public static java.lang.String readTextFile(java.lang.String filePath,
                                            org.csstudio.opibuilder.editparts.AbstractBaseEditPart widget)
                                     throws java.lang.Exception
Read a text file.

Parameters:
filePath - path of the file. It can be an absolute path or a relative path to the OPI that contains the specified widget. If it is an absolute path, it can be either
a workspace path such as /BOY Examples/Scripts/myfile.xml
a local file system path such as C:\myfile.xml
or an URL path such as http://mysite.com/myfile.xml.
widget - a widget in the OPI, which is used to provide relative path reference. It can be null if the path is an absolute path.
Returns:
a string of the text.
Throws:
java.lang.Exception - if the file does not exist or is not a correct text file.

writeTextFile

public static void writeTextFile(java.lang.String filePath,
                                 boolean inWorkspace,
                                 java.lang.String text,
                                 boolean append)
                          throws java.lang.Exception
Write a text file.

Parameters:
filePath - path of the file. It must be an absolute path which can be either
a workspace path such as /BOY Examples/Scripts/myfile.xml
or a local file system path such as C:\myfile.xml.
inWorkspace - true if the file path is a workspace file path. Otherwise, it will be recognized as a local file system file.
text - the text to be written to the file.
append - true if the text should be appended to the end of the file.
Throws:
java.lang.Exception - if error happens.

writeTextFile

public static void writeTextFile(java.lang.String filePath,
                                 boolean inWorkspace,
                                 org.csstudio.opibuilder.editparts.AbstractBaseEditPart widget,
                                 java.lang.String text,
                                 boolean append)
                          throws java.lang.Exception
Write a text file.

Parameters:
filePath - path of the file. It can be an absolute path or a relative path to the OPI that contains the specified widget. If it is an absolute path, it can be either
a workspace path such as /BOY Examples/Scripts/myfile.xml
a local file system path such as C:\myfile.xml
or an URL path such as http://mysite.com/myfile.xml.
inWorkspace - true if the file path is a workspace file path. Otherwise, it will be recognized as a local file system file.
widget - a widget in the OPI, which is used to provide relative path reference. It can be null if the path is an absolute path.
text - the text to be written to the file.
append - true if the text should be appended to the end of the file.
Throws:
java.lang.Exception - if error happens.

openFile

public static void openFile(java.lang.String filePath,
                            org.csstudio.opibuilder.editparts.AbstractBaseEditPart widget)
Open a file in default editor. If no such an editor for the type of file, OS default program will be called to open this file.

Parameters:
filePath - path of the file. It can be an absolute path or a relative path to the OPI that contains the specified widget. If it is an absolute path, it can be either a workspace path such as
/BOY Examples/Scripts/myfile.txt
or a local file system path such as C:\myfile.txt.
widget - a widget in the OPI, which is used to provide relative path reference. It can be null if the path is an absolute path.

openWebPage

public static void openWebPage(java.lang.String link)
Open a web page.

Parameters:
link - link to the web page. It can be a link started with http://, https:// or file://.

playWavFile

public static void playWavFile(java.lang.String filePath,
                               org.csstudio.opibuilder.editparts.AbstractBaseEditPart widget)
Play a .wav file.

Parameters:
filePath - path of the file. It can be an absolute path or a relative path to the OPI that contains the specified widget. If it is an absolute path, it can be either
a workspace path such as /BOY Examples/Scripts/myfile.xml
a local file system path such as C:\myfile.xml
or an URL path such as http://mysite.com/myfile.xml.
widget - a widget in the OPI, which is used to provide relative path reference. It can be null if the path is an absolute path.

openFileDialog

public static java.lang.String openFileDialog(boolean inWorkspace)
Open a file select dialog.

Parameters:
inWorkspace - true if it is a workspace file dialog; Otherwise, it is a local file system file dialog.
Returns:
the full file path. Or null if it is canceled.