murlen.util.fscript
Class FSFastExtension

java.lang.Object
  extended bymurlen.util.fscript.FSFastExtension
All Implemented Interfaces:
FSArrayExtension, FSExtension, FSFunctionExtension, FSVarExtension

public class FSFastExtension
extends java.lang.Object
implements FSExtension

FastExtension - general extension in which other (simple) extensions can be plugged.

Copyright (C) 2002

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details.

You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA

Author:
Joachim Van der Auwera modifications by Joachim Van der Auwera 02.08.2002 started 11.08.2002 (murlen) Changed function names to addExtension + java doc

Constructor Summary
FSFastExtension()
           
 
Method Summary
 void addArrayExtension(java.lang.String name, FSArrayExtension array)
          Add new FSArrayExtension to this FastExtension
 void addFunctionExtension(java.lang.String name, FSFunctionExtension fnc)
          Add new FSFunctionExtension to this FastExtension
 void addVarExtension(java.lang.String name, FSVarExtension var)
          Add new FSVarExtension to this FastExtension
 java.lang.Object callFunction(java.lang.String name, java.util.ArrayList params)
          callFunction is called whenever a function call is made in FScript to a function not defined withing hte script itself
 java.lang.Object getVar(java.lang.String name)
          getVar is called whenever a variable is read in FScript that has not been defined within the script iteslf
 java.lang.Object getVar(java.lang.String name, java.lang.Object index)
          getVar is called whenever a variable is read in FScript that has not been defined within the script iteslf
 void setVar(java.lang.String name, java.lang.Object value)
          setVar is called whenever a variable is written to in FScript that has not been defined within the script itself
 void setVar(java.lang.String name, java.lang.Object index, java.lang.Object value)
          setVar is called whenever a variable is written to in FScript that has not been defined within the script itself
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FSFastExtension

public FSFastExtension()
Method Detail

addVarExtension

public void addVarExtension(java.lang.String name,
                            FSVarExtension var)
Add new FSVarExtension to this FastExtension

Parameters:
name - - the name of the variable (must be unique amongst varables)
var - - the FSVarExtension object implementing the varaible

addArrayExtension

public void addArrayExtension(java.lang.String name,
                              FSArrayExtension array)
Add new FSArrayExtension to this FastExtension

Parameters:
name - - the name of the array (must be unique amongst arrays)
array - - the FSArrayExtension object implementing the array

addFunctionExtension

public void addFunctionExtension(java.lang.String name,
                                 FSFunctionExtension fnc)
Add new FSFunctionExtension to this FastExtension

Parameters:
name - - the name of the function (must be unique amongs functions)
fnc - - the FSFunctionExtension object implementing the function

getVar

public java.lang.Object getVar(java.lang.String name)
                        throws FSException
Description copied from interface: FSVarExtension

getVar is called whenever a variable is read in FScript that has not been defined within the script iteslf

Specified by:
getVar in interface FSVarExtension
Parameters:
name - the variable name
Returns:
the value of the variable (as one of FScript's supported object types)
Throws:
FSException

setVar

public void setVar(java.lang.String name,
                   java.lang.Object value)
            throws FSException
Description copied from interface: FSVarExtension

setVar is called whenever a variable is written to in FScript that has not been defined within the script itself

Specified by:
setVar in interface FSVarExtension
Parameters:
name - the variable name
value - the value to assign to the variable
Throws:
FSException

getVar

public java.lang.Object getVar(java.lang.String name,
                               java.lang.Object index)
                        throws FSException
Description copied from interface: FSArrayExtension

getVar is called whenever a variable is read in FScript that has not been defined within the script iteslf

This version allows an index variable to be supplied for array like access

Specified by:
getVar in interface FSArrayExtension
Parameters:
name - the variable name
index - the index
Returns:
the value of the variable (as one of FScript's supported object types)
Throws:
FSException

setVar

public void setVar(java.lang.String name,
                   java.lang.Object index,
                   java.lang.Object value)
            throws FSException
Description copied from interface: FSArrayExtension

setVar is called whenever a variable is written to in FScript that has not been defined within the script itself

This version allows an index variable to be supplied for array like access

Specified by:
setVar in interface FSArrayExtension
Parameters:
name - the variable name
index - the index
value - the value to assign to the variable
Throws:
FSException

callFunction

public java.lang.Object callFunction(java.lang.String name,
                                     java.util.ArrayList params)
                              throws FSException
Description copied from interface: FSFunctionExtension

callFunction is called whenever a function call is made in FScript to a function not defined withing hte script itself

Specified by:
callFunction in interface FSFunctionExtension
Parameters:
name - the name of the function
params - an array list of parameters passed to the function
Returns:
the return value (Object) of the call
Throws:
FSException