edu.sc.seis.sod
Class SodUtil

java.lang.Object
  extended by edu.sc.seis.sod.SodUtil

public class SodUtil
extends java.lang.Object


Field Summary
static UnitImpl[] FREQ_UNITS
           
static org.python.util.PythonInterpreter interpreter
           
static UnitImpl[] LENGTH_UNITS
           
static int pythonClassNum
           
static UnitImpl[] TIME_UNITS
           
 
Constructor Summary
SodUtil()
           
 
Method Summary
static void copyFile(java.lang.String src, java.lang.String dest)
           
static void copyStream(java.io.InputStream src, java.lang.String dest)
           
static java.util.Calendar createCalendar(int year, int month, int day, int hour, int minute, int second, boolean ceiling)
          Creates a calendar in the given year.
static java.lang.String elementPath(org.w3c.dom.Element e)
           
static void fillInField(int field, int value, boolean ceiling, java.util.Calendar cal)
           
static java.lang.String getAbsolutePath(java.lang.String baseLoc, java.lang.String relativeLoc)
           
static java.util.List<org.w3c.dom.Element> getAllElements(org.w3c.dom.Element config, java.lang.String elementName)
          returns all the element with the given name
static MicroSecondDateSupplier getEarlierSupplier(TimeInterval duration)
           
static org.w3c.dom.Element getElement(org.w3c.dom.Element config, java.lang.String elementName)
          returns the first element with the given name, null if none exists.
static org.w3c.dom.Element getFirstEmbeddedElement(org.w3c.dom.Element config)
           
protected static java.lang.String getJythonAcceptArgs(java.lang.Class mustImplement)
           
static MicroSecondDateSupplier getLaterSupplier(TimeInterval duration)
           
static java.lang.String getNestedText(org.w3c.dom.Element config)
          returns the nested text in the tag *
static org.python.util.PythonInterpreter getPythonInterpreter()
           
static java.lang.String getRelativePath(java.lang.String fromPath, java.lang.String toPath, java.lang.String separator)
           
static java.lang.String getSimpleName(java.lang.Class c)
           
static java.lang.String getText(org.w3c.dom.Element config)
          returns the first text child within the node.
protected static java.lang.Object inlineJython(java.lang.String className, java.lang.Class mustImplement, java.lang.String jythonCode)
           
static int[] intArrayFromList(java.util.List list)
           
static boolean isTrue(org.w3c.dom.Element el, java.lang.String tagName)
           
static boolean isTrueText(java.lang.String nestedText)
           
 void listKnownScriptEngines()
           
static java.lang.Object load(org.w3c.dom.Element config, java.util.List<java.lang.String> armNames)
           
static java.lang.Object load(org.w3c.dom.Element config, java.lang.String armName)
           
static java.lang.Object load(org.w3c.dom.Element config, java.lang.String[] armNames)
           
static BoxAreaImpl loadBoxArea(org.w3c.dom.Element config)
           
static java.awt.Dimension loadDimensions(org.w3c.dom.Element element)
           
static java.lang.Object loadExternal(java.lang.String tagName, java.lang.String[] armNames, org.w3c.dom.Element config)
          loads the class named in the element "classname" in config with config as a costructor argument.
static int loadInt(org.w3c.dom.Element config, java.lang.String elementName, int defaultValue)
           
static java.lang.Object loadJython(java.lang.String tagName, java.lang.String[] armNames, org.w3c.dom.Element config)
           
static void loadProperties(org.w3c.dom.Element config, java.util.Properties props)
           
static QuantityImpl loadQuantity(org.w3c.dom.Element config)
           
static java.lang.String loadText(org.w3c.dom.Element config, java.lang.String elementName, java.lang.String defaultValue)
           
static MicroSecondDateSupplier loadTime(org.w3c.dom.Element el)
           
static MicroSecondDateSupplier loadTime(org.w3c.dom.Element el, boolean endOfDay)
           
static TimeInterval loadTimeInterval(org.w3c.dom.Element config)
           
static MicroSecondTimeRangeSupplier loadTimeRange(org.w3c.dom.Element config)
           
static UnitImpl loadUnit(org.w3c.dom.Element config)
           
static UnitRangeImpl loadUnitRange(org.w3c.dom.Element config)
           
static java.io.File makeOutputDirectory(org.w3c.dom.Element config)
           
static java.lang.String nodeValueOfXPath(org.w3c.dom.Element el, java.lang.String xpath)
           
static MicroSecondDateSupplier nowSupplier()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

interpreter

public static org.python.util.PythonInterpreter interpreter

pythonClassNum

public static int pythonClassNum

LENGTH_UNITS

public static final UnitImpl[] LENGTH_UNITS

TIME_UNITS

public static final UnitImpl[] TIME_UNITS

FREQ_UNITS

public static final UnitImpl[] FREQ_UNITS
Constructor Detail

SodUtil

public SodUtil()
Method Detail

isTrue

public static boolean isTrue(org.w3c.dom.Element el,
                             java.lang.String tagName)

isTrueText

public static boolean isTrueText(java.lang.String nestedText)

makeOutputDirectory

public static java.io.File makeOutputDirectory(org.w3c.dom.Element config)
                                        throws ConfigurationException
Throws:
ConfigurationException

load

public static java.lang.Object load(org.w3c.dom.Element config,
                                    java.lang.String armName)
                             throws ConfigurationException
Throws:
ConfigurationException

load

public static java.lang.Object load(org.w3c.dom.Element config,
                                    java.util.List<java.lang.String> armNames)
                             throws ConfigurationException
Throws:
ConfigurationException

load

public static java.lang.Object load(org.w3c.dom.Element config,
                                    java.lang.String[] armNames)
                             throws ConfigurationException
Throws:
ConfigurationException

elementPath

public static java.lang.String elementPath(org.w3c.dom.Element e)

getPythonInterpreter

public static org.python.util.PythonInterpreter getPythonInterpreter()

loadJython

public static java.lang.Object loadJython(java.lang.String tagName,
                                          java.lang.String[] armNames,
                                          org.w3c.dom.Element config)
                                   throws java.lang.Exception
Throws:
java.lang.Exception

listKnownScriptEngines

public void listKnownScriptEngines()

inlineJython

protected static java.lang.Object inlineJython(java.lang.String className,
                                               java.lang.Class mustImplement,
                                               java.lang.String jythonCode)
                                        throws java.lang.ClassNotFoundException
Throws:
java.lang.ClassNotFoundException

getJythonAcceptArgs

protected static java.lang.String getJythonAcceptArgs(java.lang.Class mustImplement)

loadExternal

public static java.lang.Object loadExternal(java.lang.String tagName,
                                            java.lang.String[] armNames,
                                            org.w3c.dom.Element config)
                                     throws java.lang.Exception
loads the class named in the element "classname" in config with config as a costructor argument. If the loaded class doesnt implement mustImplement, a configuration exception is thrown

Throws:
java.lang.Exception

loadUnit

public static UnitImpl loadUnit(org.w3c.dom.Element config)
                         throws ConfigurationException
Throws:
ConfigurationException

loadTime

public static MicroSecondDateSupplier loadTime(org.w3c.dom.Element el)
                                        throws ConfigurationException
Throws:
ConfigurationException

loadTime

public static MicroSecondDateSupplier loadTime(org.w3c.dom.Element el,
                                               boolean endOfDay)
                                        throws ConfigurationException
Throws:
ConfigurationException

nowSupplier

public static MicroSecondDateSupplier nowSupplier()

createCalendar

public static java.util.Calendar createCalendar(int year,
                                                int month,
                                                int day,
                                                int hour,
                                                int minute,
                                                int second,
                                                boolean ceiling)
Creates a calendar in the given year. Year must be specified, but all other fields can be -1 if unknown. If -1, they're either the greatest of least value of the calendar's current state depending on the value of ceiling.


fillInField

public static void fillInField(int field,
                               int value,
                               boolean ceiling,
                               java.util.Calendar cal)

getEarlierSupplier

public static MicroSecondDateSupplier getEarlierSupplier(TimeInterval duration)

getLaterSupplier

public static MicroSecondDateSupplier getLaterSupplier(TimeInterval duration)

loadTimeInterval

public static TimeInterval loadTimeInterval(org.w3c.dom.Element config)
                                     throws ConfigurationException
Throws:
ConfigurationException

loadQuantity

public static QuantityImpl loadQuantity(org.w3c.dom.Element config)
                                 throws ConfigurationException
Throws:
ConfigurationException

loadInt

public static int loadInt(org.w3c.dom.Element config,
                          java.lang.String elementName,
                          int defaultValue)

loadText

public static java.lang.String loadText(org.w3c.dom.Element config,
                                        java.lang.String elementName,
                                        java.lang.String defaultValue)

copyFile

public static void copyFile(java.lang.String src,
                            java.lang.String dest)
                     throws java.io.FileNotFoundException
Throws:
java.io.FileNotFoundException

copyStream

public static void copyStream(java.io.InputStream src,
                              java.lang.String dest)

loadUnitRange

public static UnitRangeImpl loadUnitRange(org.w3c.dom.Element config)
                                   throws ConfigurationException
Throws:
ConfigurationException

loadTimeRange

public static MicroSecondTimeRangeSupplier loadTimeRange(org.w3c.dom.Element config)
                                                  throws ConfigurationException
Throws:
ConfigurationException

loadDimensions

public static java.awt.Dimension loadDimensions(org.w3c.dom.Element element)
                                         throws java.lang.Exception
Throws:
java.lang.Exception

nodeValueOfXPath

public static java.lang.String nodeValueOfXPath(org.w3c.dom.Element el,
                                                java.lang.String xpath)
                                         throws org.w3c.dom.DOMException,
                                                javax.xml.transform.TransformerException
Throws:
org.w3c.dom.DOMException
javax.xml.transform.TransformerException

loadBoxArea

public static BoxAreaImpl loadBoxArea(org.w3c.dom.Element config)
                               throws ConfigurationException
Throws:
ConfigurationException

getElement

public static org.w3c.dom.Element getElement(org.w3c.dom.Element config,
                                             java.lang.String elementName)
returns the first element with the given name, null if none exists.


getAllElements

public static java.util.List<org.w3c.dom.Element> getAllElements(org.w3c.dom.Element config,
                                                                 java.lang.String elementName)
returns all the element with the given name


getFirstEmbeddedElement

public static org.w3c.dom.Element getFirstEmbeddedElement(org.w3c.dom.Element config)

getText

public static java.lang.String getText(org.w3c.dom.Element config)
returns the first text child within the node.


getNestedText

public static java.lang.String getNestedText(org.w3c.dom.Element config)
returns the nested text in the tag *


getRelativePath

public static java.lang.String getRelativePath(java.lang.String fromPath,
                                               java.lang.String toPath,
                                               java.lang.String separator)

getAbsolutePath

public static java.lang.String getAbsolutePath(java.lang.String baseLoc,
                                               java.lang.String relativeLoc)
                                        throws java.io.IOException
Throws:
java.io.IOException

loadProperties

public static void loadProperties(org.w3c.dom.Element config,
                                  java.util.Properties props)

intArrayFromList

public static int[] intArrayFromList(java.util.List list)

getSimpleName

public static java.lang.String getSimpleName(java.lang.Class c)