com.pimeca.waster
Class AsterLauncher

java.lang.Object
  extended by com.pimeca.waster.oscmd.AbstractOsCmdLauncher
      extended by com.pimeca.waster.AsterLauncher
All Implemented Interfaces:
OsCmdLauncher

public class AsterLauncher
extends AbstractOsCmdLauncher
implements OsCmdLauncher

Wrapper for launching a computation with aster 3 main method pre() to set the data launch() to execute computation (inherited method) post() to get the results and clean all necessary files for execution are within ROOT_ASTER/runtime

Author:
maurel

Field Summary
private static java.lang.String ASTER_SHORT_VERSION
          /** aster short version
private  java.lang.String baseDirUri
          base dir uri (.
private  java.lang.String cmdFileExtension
           
private  java.lang.String cmdFileUri
           
private  java.util.List<java.lang.String> dataFileUris
          List of uris where are located user data files
private  java.lang.String eficasPathDirName
           
private  java.lang.String eficasPathDirUri
           
private  java.lang.String elementCatalogSrcUri
           
private  java.lang.String exe
           
private  java.util.Map<java.lang.String,java.lang.Integer> extNumberMap
          Map for correspondence between user data files extension and number n in aster data files fort.n
private  java.lang.String filesRootName
           
private  java.lang.String materialDirUri
           
private  java.lang.String memory
           
private  boolean postDeleteBaseDir
          delete base dir and all its content after execution (.
private  boolean postDeleteWorkDir
          delete temporary working dir and all its content after execution normally .
private  java.lang.String runtimeDirUri
           
private  java.lang.String srcCmdFileDirUri
           
private static java.lang.String STA
          aster STA version
private  java.lang.String toolDirUri
           
 
Constructor Summary
private AsterLauncher()
           
  AsterLauncher(java.lang.String cmdFileUri)
          constructor set the extension of command file used set the directory where the user data files are located set the correspondance between user data file extensions and aster data file extensions number
 
Method Summary
 void addDataFileUri(java.lang.String dataFileUri)
          add a file to the list of user data files
private  void buildExtNumberMap()
           
private  void copyFile(java.lang.String srcUri, java.lang.String tgtUri)
           
 java.lang.String getBaseDirUri()
           
private  java.lang.String getExtension(java.lang.String uri)
           
 java.util.List<java.lang.String> getOptions()
           
 java.lang.String getRepe_EnsightDirUri()
           
 java.lang.String getRepe_outDirUri()
           
 java.lang.String getResu_EnsightDirUri()
           
 java.lang.String getSrcCmdFileDirUri()
           
private  java.lang.String incrementFileUri(java.lang.String uri)
          adding .n to the file uri to avoid duplicate names dir/name.ext becomes dir/name.n.ext where n is incremented from existing file
private  boolean isPoursuite()
           
 void post()
          after execution copying of files from temporary working dir to user dir
 void pre()
          preparing of data before launching execution
 void setBaseDirUri(java.lang.String baseDirUri)
           
 void setDefaultBaseDirUri()
           
 void setDefaultDataFiles()
          create default list of user data files including glob.n and pick.n if they exist
 void setDefaultWorkingDirUri()
          set default temporary working dir to: dir_of_cmd_file/work
 void setExe(boolean debug)
           
 void setFilesRootName(java.lang.String filesRootName)
          set root name root name is the common name of user data files example for root name a: a.comm, a.mgib,...
 void setMemory(java.lang.String memory)
          set the value used for aster cmd line memjeveux (see aster doc: value in words)
 void setPostDeleteBaseDir(boolean postDeleteBaseDir)
           
 void setPostDeleteWorkDir(boolean postDeleteWorkDir)
          set the flag to allow for deleting of temporary work directory true allows deletion
 void setRuntimeDirUri(java.lang.String runtimeDirUri)
          set runtime directory where all files needed for aster execution are
 
Methods inherited from class com.pimeca.waster.oscmd.AbstractOsCmdLauncher
getWorkingDirUri, launchCmd, setConsoleOutputRequired, setErrorExitValues, setFileOutputStream, setPreDeleteWorkDir, setTimeWait, setWorkingDirUri
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.pimeca.waster.oscmd.OsCmdLauncher
launchCmd
 

Field Detail

ASTER_SHORT_VERSION

private static final java.lang.String ASTER_SHORT_VERSION
/** aster short version

See Also:
Constant Field Values

STA

private static final java.lang.String STA
aster STA version

See Also:
Constant Field Values

runtimeDirUri

private java.lang.String runtimeDirUri

exe

private java.lang.String exe

eficasPathDirName

private java.lang.String eficasPathDirName

eficasPathDirUri

private java.lang.String eficasPathDirUri

toolDirUri

private java.lang.String toolDirUri

materialDirUri

private java.lang.String materialDirUri

elementCatalogSrcUri

private java.lang.String elementCatalogSrcUri

memory

private java.lang.String memory

extNumberMap

private java.util.Map<java.lang.String,java.lang.Integer> extNumberMap
Map for correspondence between user data files extension and number n in aster data files fort.n


dataFileUris

private java.util.List<java.lang.String> dataFileUris
List of uris where are located user data files


srcCmdFileDirUri

private java.lang.String srcCmdFileDirUri

cmdFileExtension

private java.lang.String cmdFileExtension

filesRootName

private java.lang.String filesRootName

cmdFileUri

private java.lang.String cmdFileUri

baseDirUri

private java.lang.String baseDirUri
base dir uri (./base) for global and pick


postDeleteWorkDir

private boolean postDeleteWorkDir
delete temporary working dir and all its content after execution normally ./work is created before launching execution


postDeleteBaseDir

private boolean postDeleteBaseDir
delete base dir and all its content after execution (./base)

Constructor Detail

AsterLauncher

private AsterLauncher()

AsterLauncher

public AsterLauncher(java.lang.String cmdFileUri)
constructor set the extension of command file used set the directory where the user data files are located set the correspondance between user data file extensions and aster data file extensions number

Parameters:
cmdFileUri - absolute uri of command file
Method Detail

getOptions

public java.util.List<java.lang.String> getOptions()
Overrides:
getOptions in class AbstractOsCmdLauncher
Returns:
list of options

pre

public void pre()
preparing of data before launching execution


post

public void post()
after execution copying of files from temporary working dir to user dir


copyFile

private void copyFile(java.lang.String srcUri,
                      java.lang.String tgtUri)

buildExtNumberMap

private void buildExtNumberMap()

addDataFileUri

public void addDataFileUri(java.lang.String dataFileUri)
add a file to the list of user data files

Parameters:
dataFileUri - (absolute uri)

getExtension

private java.lang.String getExtension(java.lang.String uri)

setFilesRootName

public void setFilesRootName(java.lang.String filesRootName)
set root name root name is the common name of user data files example for root name a: a.comm, a.mgib,...

Parameters:
filesRootName -

setPostDeleteWorkDir

public void setPostDeleteWorkDir(boolean postDeleteWorkDir)
set the flag to allow for deleting of temporary work directory true allows deletion

Parameters:
postDeleteWorkDir -

setPostDeleteBaseDir

public void setPostDeleteBaseDir(boolean postDeleteBaseDir)
Parameters:
postDeleteBaseDir - if true will delete base dir (global, pick)

getRepe_outDirUri

public java.lang.String getRepe_outDirUri()
Returns:
the default uri used by aster during execution needed when some tools are used

getRepe_EnsightDirUri

public java.lang.String getRepe_EnsightDirUri()
Returns:
the default uri used by aster during execution needed when ensight is used

getResu_EnsightDirUri

public java.lang.String getResu_EnsightDirUri()
Returns:
the default uri used by aster during execution needed when ensight is used

setDefaultWorkingDirUri

public void setDefaultWorkingDirUri()
set default temporary working dir to: dir_of_cmd_file/work


getSrcCmdFileDirUri

public java.lang.String getSrcCmdFileDirUri()
Returns:
absolute uri of command file

setDefaultDataFiles

public void setDefaultDataFiles()
create default list of user data files including glob.n and pick.n if they exist


setMemory

public void setMemory(java.lang.String memory)
set the value used for aster cmd line memjeveux (see aster doc: value in words)

Parameters:
memory -

setRuntimeDirUri

public void setRuntimeDirUri(java.lang.String runtimeDirUri)
set runtime directory where all files needed for aster execution are

Parameters:
runtimeDirUri - (absolute uri)

incrementFileUri

private java.lang.String incrementFileUri(java.lang.String uri)
adding .n to the file uri to avoid duplicate names dir/name.ext becomes dir/name.n.ext where n is incremented from existing file

Parameters:
uri - (absolute uri)
Returns:
uri (absolute modified uri)

setExe

public void setExe(boolean debug)
Parameters:
debug - true to generate debug executable

getBaseDirUri

public java.lang.String getBaseDirUri()
Returns:
the baseDirUri

setBaseDirUri

public void setBaseDirUri(java.lang.String baseDirUri)
Parameters:
baseDirUri - the baseDirUri to set

setDefaultBaseDirUri

public void setDefaultBaseDirUri()

isPoursuite

private boolean isPoursuite()