package org.alanwilliamson.lang.java.inline;
import java.util.Date;
import java.util.Iterator;
public interface Context {
/**
* Executes a CFML function returning back the Java object
*
* @param function
* @param objects
* @return
* @throws Exception
*/
public Object call( String function, Object... objects ) throws Exception ;
/**
* Returns the CFML variable as a Java String object
*
* @param var - CFML path eg "form.param1"
* @return
*/
public String getString( String var );
/**
* Returns the CFML variable as a Java integer
*
* @param var - CFML path eg "form.param1"
* @return
*/
public int getInt( String var );
/**
* Returns the CFML variable as a Java long
*
* @param var - CFML path eg "form.param1"
* @return
*/
public long getLong( String var );
/**
* Returns the CFML variable as a Java boolean
*
* @param var - CFML path eg "form.param1"
* @return
*/
public boolean getBoolean( String var );
/**
* Returns the CFML variable as a Java Date
*
* @param var - CFML path eg "form.param1"
* @return
*/
public Date getDate( String var );
/**
* Returns the CFML variable as a Java Object
*
* @param var - CFML path eg "form.param1"
* @return
*/
public Object get( String var );
/**
* Returns the CFML array as a Java cfArray
*
* @param var - CFML path eg "form.param1"
* @return - null if not found or not an array
*/
public cfArray getArray( String var );
/**
* Returns the CFML array as a Java cfQuery
*
* @param var - CFML path eg "form.param1"
* @return - null if not found or not an query
*/
public cfQuery getQuery( String var );
/**
* Returns the CFML array as a Java cfStruct
*
* @param var - CFML path eg "form.param1"
* @return - null if not found or not an struct
*/
public cfStruct getStruct( String var );
/**
* Sets the given Java object to the CFML path.
* It will automatically convert to Array, Struct accordingly
*
* @param var - CFML path eg "form.param1"
* @param data
*/
public void set( String var, Object data );
/**
* Prints the given parameter to the request output
* @param s
*/
public void print(String s);
public void print(int s);
public void print(StringBuilder s);
public void print(long s);
public void print(double s);
public void print(boolean s);
public void print(byte s);
public void print(Object i);
/**
* Attributes for storing Java objects between calls
*/
public void setAttribute(String name, Object o);
public Object getAttribute(String name);
public void removeAttribute(String name);
public Iterator<String> getAttributeNames();
}