org.kuali.common.impex.service
Class OracleProducer

java.lang.Object
  extended by org.kuali.common.impex.service.AbstractSqlProducer
      extended by org.kuali.common.impex.service.OracleProducer
All Implemented Interfaces:
SqlProducer

public class OracleProducer
extends AbstractSqlProducer


Field Summary
 
Fields inherited from class org.kuali.common.impex.service.AbstractSqlProducer
DEFAULT_BATCH_ROW_COUNT_LIMIT, DEFAULT_DATA_SIZE_LIMIT, OUTPUT_DATE_FORMAT
 
Constructor Summary
OracleProducer()
           
 
Method Summary
protected  boolean addedLongClobs(List<DataBean> rowBeans, List<OracleLongClob> longClobs)
           
protected  void addLongClobs(List<DataBean> rowBeans, List<DataBean> primaryKeys, List<OracleLongClob> longClobs)
           
protected  String buildBatchSql(Table table, List<DataBean> dataBeans)
           
protected  List<String> chunkClob(String value)
          Split a long data string into clob chunks, which have a maximum size of CLOB_BATCH_SIZE and have all single quotes "'" replaced with the escaped version (two single quotes, "''")
protected  String continueClob(Table table, List<OracleLongClob> longClobRows)
           
protected  List<String> getClobSql(List<OracleLongClob> longClobs, Table table)
          Convert LongClob objects into SQL
protected  String getEscapedValue(Column column, String token)
           
protected  List<DataBean> getPrimaryKeys(List<DataBean> rowBeans)
           
 List<String> getSql(Table table, BufferedReader reader)
           
protected  String getSqlValue(DataBean data, SimpleDateFormat dateFormat)
           
protected  boolean hasClobColumns(List<Column> columns)
           
protected  boolean isColumnClobType(Column column)
           
protected  boolean isDataBigClob(String value, Column column)
           
 
Methods inherited from class org.kuali.common.impex.service.AbstractSqlProducer
batchLimitReached, buildRowData, getBatchDataSizeLimit, getBatchRowCountLimit, getColumnNamesCSV, getDate, processToken, readLineSkipHeader, setBatchDataSizeLimit, setBatchRowCountLimit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OracleProducer

public OracleProducer()
Method Detail

getSql

public List<String> getSql(Table table,
                           BufferedReader reader)
                    throws IOException
Throws:
IOException

addedLongClobs

protected boolean addedLongClobs(List<DataBean> rowBeans,
                                 List<OracleLongClob> longClobs)

getClobSql

protected List<String> getClobSql(List<OracleLongClob> longClobs,
                                  Table table)
Convert LongClob objects into SQL


getEscapedValue

protected String getEscapedValue(Column column,
                                 String token)
Specified by:
getEscapedValue in class AbstractSqlProducer

isColumnClobType

protected boolean isColumnClobType(Column column)

continueClob

protected String continueClob(Table table,
                              List<OracleLongClob> longClobRows)

chunkClob

protected List<String> chunkClob(String value)
Split a long data string into clob chunks, which have a maximum size of CLOB_BATCH_SIZE and have all single quotes "'" replaced with the escaped version (two single quotes, "''")

Parameters:
value - the full data string
Returns:
a list of strings representing the full data split into chunks

buildBatchSql

protected String buildBatchSql(Table table,
                               List<DataBean> dataBeans)

getSqlValue

protected String getSqlValue(DataBean data,
                             SimpleDateFormat dateFormat)

isDataBigClob

protected boolean isDataBigClob(String value,
                                Column column)

hasClobColumns

protected boolean hasClobColumns(List<Column> columns)

getPrimaryKeys

protected List<DataBean> getPrimaryKeys(List<DataBean> rowBeans)

addLongClobs

protected void addLongClobs(List<DataBean> rowBeans,
                            List<DataBean> primaryKeys,
                            List<OracleLongClob> longClobs)


Copyright © 2004-2013 The Kuali Foundation. All Rights Reserved.