fr.ifremer.isisfish.ui.script
Class ScriptAction

java.lang.Object
  extended by fr.ifremer.isisfish.ui.script.ScriptAction
All Implemented Interfaces:
EventListener, CaretListener, TreeSelectionListener

public class ScriptAction
extends Object
implements TreeSelectionListener, CaretListener

ScriptAction. Template are now loaded with freemarker.

Version:
$Revision: 1526 $ Last update: $Date: 2008-10-07 18:46:13 +0200 (mar 07 oct 2008) $ by : $Author: tchemit $
Author:
letellier

Nested Class Summary
protected static class ScriptAction.ScriptMapping
          enum to encapsulate a script module
 
Field Summary
protected  CodeSourceStorage codeStorage
          Storage for currently edited file.
protected static Color COLOR_FAILURE
          Couleur d'echec (rouge leger).
protected static Color COLOR_SUCCESS
          Couleur de succes (vert leger).
protected  freemarker.template.Configuration freemarkerConfiguration
          Freemarke configuration used to create new script (based on templates).
protected static FileFilter scriptFileFilter
           
protected  ScriptUI scriptUI
          UI managed by this action class.
 
Constructor Summary
ScriptAction(ScriptUI scriptUI)
          Constructeur.
 
Method Summary
protected  void backup(File src, String path, String suffix)
          Copy a single file to destination directory.
protected  void backupScripts(List<String> paths, File destination)
          Make a backup a given files to current isis backup directory.
 void caretUpdate(CaretEvent e)
           
 void checkAllScripts()
          Check all scripts.
 boolean checkScript()
          Check script content.
 void commitScript()
          Save script, and display commit UI.
 void copy()
          Copy selection in current editor.
 void cut()
          Cut selection in current editor.
 void deleteScript(boolean deleteRemote)
          Delete a script
 void diffScript()
          Show diff between selected files and files server version.
 void evaluateScript()
          Call main method in current cod storage code.
 void exportScript()
          Exporte le(s) script(s) sélectionnés dans l'arbre.
protected static List<String> extractFiles(int prefixLength, TreePath[] selectedPaths)
           
 boolean fileLoaded()
           
 void generateScriptJavadoc()
          Generate javadoc and display output in UI.
static FileFilter getScriptFileFilter()
           
 void importScript()
          Show a improved script dialog with multiple selection support.
 boolean isJavaScript()
           
 void loadScript(File file)
          Load specified script in current action.
 void moveFiles(File directory, Collection<File> filesToMove)
          Move files.
 void newScript()
          Make new script, and select it on tree.
 void newScript(ScriptAction.ScriptMapping scriptType)
          Make new script, and select it on tree.
protected  File newScript(String fileName, ScriptAction.ScriptMapping scriptType)
          Creer un nouveau script, ici un script peut-etre un Script, un Simulator, un Export.
 void paste()
          Paste clipboard content in editor.
 void performImportScript(File sourceScriptArchive, FileSelectionTableModel selectedFiles, FileSelectionTableModel selectedConflictFiles)
          Perform import script action called by ImportDialogUI.
 void postInit()
          Post init, must be called after ui building.
protected  void returnError(String s, Exception eee)
          Write error in log and display exception to user.
 void saveScript()
          Save current editor test in current loaded codeStorage.
protected static List<String>[] scanZip(File source, File root)
          Scan archive for script, and return an array of new files and conflict files.
protected  void setButton()
          Update script UI component actions buttons.
protected  void setStatusMessage(String msg)
           
protected  void setStatusMessage(String msg, boolean running)
           
 void showScriptJavadoc()
          Open a browser displaying javadoc.
 void updateScript()
           
 void valueChanged(TreeSelectionEvent e)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

COLOR_SUCCESS

protected static final Color COLOR_SUCCESS
Couleur de succes (vert leger).


COLOR_FAILURE

protected static final Color COLOR_FAILURE
Couleur d'echec (rouge leger).


codeStorage

protected CodeSourceStorage codeStorage
Storage for currently edited file.


freemarkerConfiguration

protected freemarker.template.Configuration freemarkerConfiguration
Freemarke configuration used to create new script (based on templates).


scriptUI

protected ScriptUI scriptUI
UI managed by this action class.


scriptFileFilter

protected static FileFilter scriptFileFilter
Constructor Detail

ScriptAction

public ScriptAction(ScriptUI scriptUI)
Constructeur. Init freemarker.

Parameters:
scriptUI - managed script UI
Method Detail

postInit

public void postInit()
Post init, must be called after ui building.


setButton

protected void setButton()
Update script UI component actions buttons.


setStatusMessage

protected void setStatusMessage(String msg)

setStatusMessage

protected void setStatusMessage(String msg,
                                boolean running)

newScript

public void newScript()
Make new script, and select it on tree.


newScript

public void newScript(ScriptAction.ScriptMapping scriptType)
Make new script, and select it on tree.

Parameters:
scriptType - script to make

newScript

protected File newScript(String fileName,
                         ScriptAction.ScriptMapping scriptType)
Creer un nouveau script, ici un script peut-etre un Script, un Simulator, un Export.

Parameters:
fileName - full filename
scriptType - le type que l'on souhaite Script, Simulator, ou Export.
Returns:
created file or null if any error happen

returnError

protected void returnError(String s,
                           Exception eee)
Write error in log and display exception to user.

Parameters:
s - message
eee - cause

valueChanged

public void valueChanged(TreeSelectionEvent e)
Specified by:
valueChanged in interface TreeSelectionListener

loadScript

public void loadScript(File file)
Load specified script in current action. TODO can we change this ?

Parameters:
file - file to load

fileLoaded

public boolean fileLoaded()

isJavaScript

public boolean isJavaScript()

saveScript

public void saveScript()
Save current editor test in current loaded codeStorage.


commitScript

public void commitScript()
Save script, and display commit UI.


exportScript

public void exportScript()
Exporte le(s) script(s) sélectionnés dans l'arbre.
L'arbre doit avoir au moins un script de selectionnés


extractFiles

protected static List<String> extractFiles(int prefixLength,
                                           TreePath[] selectedPaths)

cut

public void cut()
Cut selection in current editor.


copy

public void copy()
Copy selection in current editor.


paste

public void paste()
Paste clipboard content in editor.


getScriptFileFilter

public static FileFilter getScriptFileFilter()

updateScript

public void updateScript()

checkScript

public boolean checkScript()
Check script content.

Returns:
compilation success flag

checkAllScripts

public void checkAllScripts()
Check all scripts.


evaluateScript

public void evaluateScript()
Call main method in current cod storage code. Check script before call.


importScript

public void importScript()
Show a improved script dialog with multiple selection support.


performImportScript

public void performImportScript(File sourceScriptArchive,
                                FileSelectionTableModel selectedFiles,
                                FileSelectionTableModel selectedConflictFiles)
Perform import script action called by ImportDialogUI.

Parameters:
sourceScriptArchive - source archive file
selectedFiles - selected non conflict files model
selectedConflictFiles - selected conflict files model

backupScripts

protected void backupScripts(List<String> paths,
                             File destination)
Make a backup a given files to current isis backup directory.

Parameters:
paths -

backup

protected void backup(File src,
                      String path,
                      String suffix)
               throws IOException
Copy a single file to destination directory.

Parameters:
src - file to copy
path - path of file to copy
suffix - file suffix
Throws:
IOException - if copy fail

scanZip

protected static List<String>[] scanZip(File source,
                                        File root)
Scan archive for script, and return an array of new files and conflict files.

Parameters:
source - archive file
root - database directory
Returns:
an array [newFiles, conflictFiles]

deleteScript

public void deleteScript(boolean deleteRemote)
Delete a script

Parameters:
deleteRemote - true to remove in vcs too

diffScript

public void diffScript()
Show diff between selected files and files server version.


generateScriptJavadoc

public void generateScriptJavadoc()
Generate javadoc and display output in UI.


showScriptJavadoc

public void showScriptJavadoc()
Open a browser displaying javadoc.


caretUpdate

public void caretUpdate(CaretEvent e)
Specified by:
caretUpdate in interface CaretListener

moveFiles

public void moveFiles(File directory,
                      Collection<File> filesToMove)
Move files. (called by drag and drop handler).

Parameters:
directory - directory to moves files to
filesToMove - files to move to directory


Copyright © 1999-2012 CodeLutin. All Rights Reserved.