ContactCenters
V. 0.9.9.

umontreal.iro.lecuyer.xmlconfig
Class CSVSourceArray2D

java.lang.Object
  extended by umontreal.iro.lecuyer.xmlconfig.AbstractParam
      extended by umontreal.iro.lecuyer.xmlconfig.CSVSourceArray2D
All Implemented Interfaces:
Cloneable, Param, SourceArray2D, StorableParam

public class CSVSourceArray2D
extends AbstractParam
implements SourceArray2D, Cloneable, StorableParam

Represents a source array whose contents is read from a CSV-formatted text file. Each line of the text file pointed to by a URL becomes a row of the source array, with elements of the row separated using commas. Text is read using TextDataReader.readCSVData(URL,char,char) with , as the column delimiter and " as the string delimiter, while StringConvert.fromString(URI,ClassFinder,Class,String) is used to convert strings to target objects.

In the XML file, the URL attribute of an element representing a CSV source array must be used to indicate the URL of the CSV data file.


Constructor Summary
CSVSourceArray2D()
           
 
Method Summary
 CSVSourceArray2D clone()
           
 int columns(int row)
          Returns the number of columns in row row of the source array.
 void dispose()
          Clears the data in the source array.
<T> T
get(Class<T> pcls, int row, int column)
          Returns the element at row row and column column of the source array, converted to class pcls.
 String getElementName()
          Returns the name of the XML element representing the type of source array implemented.
 URL getURL()
          Returns the URL of the text file containing the values of the array, in CSV format.
 void init()
          Initializes the source array.
 int rows()
          Returns the number of rows in the source array.
 void setURL(URL url)
          Sets the URL pointing to the CSV file containing the elements of this array to url.
 Element toElement(ClassFinder finder, Node parent, String elementName, int spc)
          Converts this parameter object to a DOM element using the class finder finder for formatting class names, with parent node parent, element name elementName, and spc spaces for each indentation level.
 
Methods inherited from class umontreal.iro.lecuyer.xmlconfig.AbstractParam
check, createDocument, getId, getXref, setId, setXref, toString, write, write, write, write, write, write, write, write
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CSVSourceArray2D

public CSVSourceArray2D()
Method Detail

getURL

public URL getURL()
Returns the URL of the text file containing the values of the array, in CSV format.

Returns:
the URL of the CSV data.

setURL

public void setURL(URL url)
Sets the URL pointing to the CSV file containing the elements of this array to url.

Parameters:
url - the URL of the data.

columns

public int columns(int row)
Description copied from interface: SourceArray2D
Returns the number of columns in row row of the source array.

Specified by:
columns in interface SourceArray2D
Parameters:
row - the row to test.
Returns:
the number of columns in the row.

get

public <T> T get(Class<T> pcls,
                 int row,
                 int column)
      throws UnsupportedConversionException
Description copied from interface: SourceArray2D
Returns the element at row row and column column of the source array, converted to class pcls.

Specified by:
get in interface SourceArray2D
Type Parameters:
T - the target class.
Parameters:
pcls - the target class.
row - the row index.
column - the column index.
Returns:
the element.
Throws:
UnsupportedConversionException

init

public void init()
Description copied from interface: SourceArray2D
Initializes the source array.

Specified by:
init in interface SourceArray2D

rows

public int rows()
Description copied from interface: SourceArray2D
Returns the number of rows in the source array.

Specified by:
rows in interface SourceArray2D
Returns:
the number of rows in the array.

toElement

public Element toElement(ClassFinder finder,
                         Node parent,
                         String elementName,
                         int spc)
Description copied from interface: StorableParam
Converts this parameter object to a DOM element using the class finder finder for formatting class names, with parent node parent, element name elementName, and spc spaces for each indentation level. The method must create an Element instance with name elementName and add it to the node parent of the DOM tree. It is recommended to use DOMUtils helper methods for this. After the element is created, attributes can be set and nested contents can be added. The configured DOM element is then returned.

Specified by:
toElement in interface StorableParam
Parameters:
finder - the class finder used to format class names.
parent - the parent of the new element.
elementName - the name of the constructed element.
spc - the number of spaces for each indentation level.
Returns:
the newly-constructed element.

dispose

public void dispose()
Description copied from interface: SourceArray2D
Clears the data in the source array.

Specified by:
dispose in interface SourceArray2D

clone

public CSVSourceArray2D clone()
Overrides:
clone in class Object

getElementName

public String getElementName()
Description copied from interface: SourceArray2D
Returns the name of the XML element representing the type of source array implemented.

Specified by:
getElementName in interface SourceArray2D
Returns:
the name of the XML representing the array type.

ContactCenters
V. 0.9.9.

To submit a bug or ask questions, send an e-mail to Richard Simard.