com.edustructures.sifworks.tools.queries
Class SQLField

java.lang.Object
  extended by com.edustructures.sifworks.tools.queries.SQLField

public class SQLField
extends java.lang.Object

Encapsulates a field name and type from the java.sql.Types class When preparing a dictionary to be passed to the SQLQueryFormatter.format method, the caller must map SIFDTD ElementDef constants to instances of SQLField. The java.sql.Types constant is used to render the field value according to its data type (e.g. strings are quoted with a single quote, numeric fields are rendered as-is, etc.)

For example,

Map m = new HashMap();
m.put( SIFDTD.STUDENTPERSONAL_REFID,
    new SQLField( "Students.Foreign_ID", java.sql.Types.VARCHAR ) );
m.put( SIFDTD.NAME_LASTNAME,
    new SQLField( "Students.Last_Name", java.sql.Types.VARCHAR ) );
m.put( SIFDTD.NAME_FIRSTNAME,
    new SQLField( "First_Name", java.sql.Types.VARCHAR ) );
m.put( SIFDTD.DEMOGRAPHICS_CITIZENSHIPSTATUS,
    new SQLField( "Students.US_Citizen_Bool{04=1,=0}", java.sql.Types.NUMERIC ) );

The above example might result in a string such as "( Students.US_Citizen_Bool = 0 )" or "( Students.Foreign_ID = '898' ) OR ( Students.Last_Name = 'Cortez' AND First_Name = 'Robert' )"

Version:
ADK 1.0

Field Summary
 java.lang.String Name
           
 int Type
           
 
Constructor Summary
SQLField(java.lang.String name, int type)
          Constructor
 
Method Summary
 java.lang.String render(java.lang.String value)
          Render a field value given the java.sql.Types constant passed to the constructor
 java.lang.String renderDate(java.lang.String value)
          Render a field value as a date
 java.lang.String renderNumeric(java.lang.String value)
          Render a field value as a number
 java.lang.String renderString(java.lang.String value)
          Render a field value as a string
 java.lang.String renderTime(java.lang.String value)
          Render a field value as a time
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

Name

public java.lang.String Name

Type

public int Type
Constructor Detail

SQLField

public SQLField(java.lang.String name,
                int type)
Constructor

Parameters:
name - The application-defined field name
type - A constant from the java.sql.Types class. The type is used by SQLQueryBuilder to property format the field value
Method Detail

render

public java.lang.String render(java.lang.String value)
                        throws QueryFormatterException
Render a field value given the java.sql.Types constant passed to the constructor

Throws:
QueryFormatterException

renderString

public java.lang.String renderString(java.lang.String value)
Render a field value as a string


renderNumeric

public java.lang.String renderNumeric(java.lang.String value)
Render a field value as a number


renderDate

public java.lang.String renderDate(java.lang.String value)
Render a field value as a date


renderTime

public java.lang.String renderTime(java.lang.String value)
Render a field value as a time



Copyright © 2001-2007 Edustructures LLC. All Rights Reserved. SIFWorks® and ADK® are registered trademarks of Edustructures LLC. SIF™ and Schools Interoperability Framework are trademarks of the Schools Interoperability Framework Association.