com.softslate.commerce.daos.core
Class DAOUtilsImpl

java.lang.Object
  extended by com.softslate.commerce.daos.core.DAOUtilsImpl
All Implemented Interfaces:
DAOUtils

public class DAOUtilsImpl
extends java.lang.Object
implements DAOUtils

Holds various utility methods for use by DAOs.

Author:
David Tobey

Field Summary
(package private) static org.apache.commons.logging.Log log
           
 java.lang.String[] stopWords
           
 
Constructor Summary
DAOUtilsImpl()
           
 
Method Summary
 java.lang.String generateKeyPair(java.lang.String publicFile, java.lang.String privateFile, boolean savePrivate)
           
 void generateTwoWayKey(java.lang.String keyFile)
           
 java.util.Collection getCollectionFromBeans(java.util.Collection collection, java.lang.String field)
          Given a Collection of beans representing a ResultSet, and a field name for a field, returns a Collection of Integers representing each field's value in the incoming Collection.
 java.util.Collection getCollectionFromCollection(java.util.Collection collection, java.lang.String field)
          Given a Collection of Maps representing a ResultSet, and a field name for a field, returns a Collection of Strings representing each field's value in the incoming Collection.
 java.util.Collection getCollectionFromResultSet(java.sql.ResultSet resultSet, java.lang.String field)
          Given a ResultSet and a field name for a field, returns a Collection of Strings representing each field value in the ResultSet.
 java.lang.String getDebugMessage(java.sql.ResultSet resultSet)
          Retrieves a string indicating the number of rows and columns returned from a ResultSet.
 java.lang.String getDecrypted(java.lang.String stringToDecrypt, java.lang.String encryptionType, java.lang.String privateKeyFile)
          Decrypts a string using the given encryption type.
 java.lang.String getEncrypted(java.lang.String stringToEncrypt, java.lang.String encryptionType, java.lang.String publicKeyFile)
          Encrypts a string using the given encryption type.
 java.util.Collection getIntegersFromStrings(java.util.Collection collection)
          Given a Collection of Strings, returns a collection of Integers corresponding to the strings.
 java.lang.String getList(java.lang.String[] stringArray)
          Given an array of strings, returns a single string that can be used as a list in an SQL expression.
 java.lang.String getListFromCollection(java.util.Collection collection, java.lang.String field)
          Given a Collection of Maps representing a ResultSet, and a field name for a field, returns a String list representing each field's value in the incoming Collection.
 java.lang.String getListFromResultSet(java.sql.ResultSet resultSet, java.lang.String field)
          Given a ResultSet and a field name, returns a single string that can be used as a list in an SQL expression.
 java.lang.String getListFromStringCollection(java.util.Collection collection)
          Given a Collection of Strings, returns a String list representing each element's value in the incoming Collection.
 java.lang.String getQuotedList(java.util.Map map)
          Given a Map of string keys, returns a single string that can be used as a list in an SQL expression.
 java.lang.String getQuotedList(java.lang.String[] stringArray)
          Given an array of strings, returns a single string that can be used as a list in an SQL expression.
 java.lang.String[] getStopWords()
          An array of strings to eliminate from database search queries.
private  java.security.Key loadKey(java.lang.String filename, boolean isPublic)
           
 void outputCsv(java.util.Collection data, java.io.Writer out)
          Outputs a matrix of strings as comma-separated values.
 java.lang.String prepareSearchString(java.lang.String searchString)
          Prepares a string for insertion into an SQL search expression.
private  void saveKey(java.lang.String filename, byte[] contents)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

static org.apache.commons.logging.Log log

stopWords

public java.lang.String[] stopWords
Constructor Detail

DAOUtilsImpl

public DAOUtilsImpl()
Method Detail

getStopWords

public java.lang.String[] getStopWords()
Description copied from interface: DAOUtils
An array of strings to eliminate from database search queries.

Specified by:
getStopWords in interface DAOUtils

getList

public java.lang.String getList(java.lang.String[] stringArray)
Description copied from interface: DAOUtils
Given an array of strings, returns a single string that can be used as a list in an SQL expression. Each of the elements of the incoming array are separated by commas.

Specified by:
getList in interface DAOUtils
Parameters:
stringArray - The array of strings to convert into a comma-separated list.
Returns:
A string that can be used as a list in an SQL expression.

getQuotedList

public java.lang.String getQuotedList(java.lang.String[] stringArray)
Description copied from interface: DAOUtils
Given an array of strings, returns a single string that can be used as a list in an SQL expression. Each of the elements of the incoming array are quoted and separated by commas.

Specified by:
getQuotedList in interface DAOUtils
Parameters:
stringArray - The array of strings to convert into a quoted string.
Returns:
A string that can be used as a list in an SQL expression.

getListFromResultSet

public java.lang.String getListFromResultSet(java.sql.ResultSet resultSet,
                                             java.lang.String field)
                                      throws java.sql.SQLException
Description copied from interface: DAOUtils
Given a ResultSet and a field name, returns a single string that can be used as a list in an SQL expression. Each of the elements of the incoming ResultSet corresponding to the given field are separated by commas. Helpful for older databases that do not support sub queries.

Specified by:
getListFromResultSet in interface DAOUtils
Parameters:
resultSet - The ResultSet holding the values.
field - The name of the field whose values are to be returned in a list.
Returns:
A string that can be used as a list in an SQL expression
Throws:
java.sql.SQLException

getListFromCollection

public java.lang.String getListFromCollection(java.util.Collection collection,
                                              java.lang.String field)
Description copied from interface: DAOUtils
Given a Collection of Maps representing a ResultSet, and a field name for a field, returns a String list representing each field's value in the incoming Collection.

Specified by:
getListFromCollection in interface DAOUtils
Parameters:
collection - The Collection holding the values.
Returns:
A string that can be used as a list in an SQL expression.

getListFromStringCollection

public java.lang.String getListFromStringCollection(java.util.Collection collection)
Description copied from interface: DAOUtils
Given a Collection of Strings, returns a String list representing each element's value in the incoming Collection.

Specified by:
getListFromStringCollection in interface DAOUtils
Parameters:
collection - The Collection holding the values.
Returns:
A string that can be used as a list in an SQL expression.

getCollectionFromResultSet

public java.util.Collection getCollectionFromResultSet(java.sql.ResultSet resultSet,
                                                       java.lang.String field)
                                                throws java.sql.SQLException
Description copied from interface: DAOUtils
Given a ResultSet and a field name for a field, returns a Collection of Strings representing each field value in the ResultSet.

Specified by:
getCollectionFromResultSet in interface DAOUtils
Parameters:
resultSet - The ResultSet holding the values.
field - The name of the field whose values are to be returned in a Colleciton.
Returns:
A Collection of Strings representing each field value in the ResultSet
Throws:
java.sql.SQLException

getCollectionFromCollection

public java.util.Collection getCollectionFromCollection(java.util.Collection collection,
                                                        java.lang.String field)
Description copied from interface: DAOUtils
Given a Collection of Maps representing a ResultSet, and a field name for a field, returns a Collection of Strings representing each field's value in the incoming Collection.

Specified by:
getCollectionFromCollection in interface DAOUtils
Parameters:
collection - The Collection holding the values.
field - The name of the field whose values are to be returned in a Collection.
Returns:
A Collection of Strings representing each field's value in the incoming Collection

getIntegersFromStrings

public java.util.Collection getIntegersFromStrings(java.util.Collection collection)
Description copied from interface: DAOUtils
Given a Collection of Strings, returns a collection of Integers corresponding to the strings.

Specified by:
getIntegersFromStrings in interface DAOUtils
Parameters:
collection - A collection of Strings
Returns:
A collection of Integers

getCollectionFromBeans

public java.util.Collection getCollectionFromBeans(java.util.Collection collection,
                                                   java.lang.String field)
                                            throws java.lang.Exception
Description copied from interface: DAOUtils
Given a Collection of beans representing a ResultSet, and a field name for a field, returns a Collection of Integers representing each field's value in the incoming Collection.

Specified by:
getCollectionFromBeans in interface DAOUtils
Parameters:
collection - The Collection holding the values.
field - The name of the field whose values are to be returned in a Collection.
Returns:
a Collection of Integers
Throws:
java.lang.Exception

getDebugMessage

public java.lang.String getDebugMessage(java.sql.ResultSet resultSet)
                                 throws java.sql.SQLException
Description copied from interface: DAOUtils
Retrieves a string indicating the number of rows and columns returned from a ResultSet.

Specified by:
getDebugMessage in interface DAOUtils
Parameters:
resultSet - The ResultSet to produce a debugging message for.
Returns:
A string indicating the number of rows and columns returned from a ResultSet.
Throws:
java.sql.SQLException

getQuotedList

public java.lang.String getQuotedList(java.util.Map map)
Description copied from interface: DAOUtils
Given a Map of string keys, returns a single string that can be used as a list in an SQL expression. Each of the elements of the incoming Map are quoted and separated by commas.

Specified by:
getQuotedList in interface DAOUtils
Parameters:
map - The Map to convert into a quoted string.
Returns:
A string that can be used as a list in an SQL expression.

outputCsv

public void outputCsv(java.util.Collection data,
                      java.io.Writer out)
               throws java.io.IOException
Description copied from interface: DAOUtils
Outputs a matrix of strings as comma-separated values. This implementation encloses problem values in double-quotes, prepends backslash to embedded double-quotes and backslashes, and represents embedded newlines as backslash-n.

Specified by:
outputCsv in interface DAOUtils
Parameters:
data - List of String arrays or Object arrays.
out - The stream to write to.
Throws:
java.io.IOException

prepareSearchString

public java.lang.String prepareSearchString(java.lang.String searchString)
Description copied from interface: DAOUtils
Prepares a string for insertion into an SQL search expression. Adds % to the beginning and end of the string and in between each word. Also strips the string of characters dangerous to an SQL search expression.

Specified by:
prepareSearchString in interface DAOUtils
Returns:
A string acceptable for a LIKE expression.

getEncrypted

public java.lang.String getEncrypted(java.lang.String stringToEncrypt,
                                     java.lang.String encryptionType,
                                     java.lang.String publicKeyFile)
Description copied from interface: DAOUtils
Encrypts a string using the given encryption type.

Specified by:
getEncrypted in interface DAOUtils
Parameters:
stringToEncrypt - The String to encrypt.
encryptionType - "noEncryption", "keyPairStore", "keyPairNoStore", or "oneWay".
Returns:
The encrypted string

getDecrypted

public java.lang.String getDecrypted(java.lang.String stringToDecrypt,
                                     java.lang.String encryptionType,
                                     java.lang.String privateKeyFile)
Description copied from interface: DAOUtils
Decrypts a string using the given encryption type.

Specified by:
getDecrypted in interface DAOUtils
Parameters:
stringToDecrypt - The String to decrypt.
encryptionType - "noEncryption", "keyPairStore", "keyPairNoStore", or "oneWay".
Returns:
The decrypted string

generateTwoWayKey

public void generateTwoWayKey(java.lang.String keyFile)
                       throws java.lang.Exception
Specified by:
generateTwoWayKey in interface DAOUtils
Throws:
java.lang.Exception

generateKeyPair

public java.lang.String generateKeyPair(java.lang.String publicFile,
                                        java.lang.String privateFile,
                                        boolean savePrivate)
                                 throws java.lang.Exception
Specified by:
generateKeyPair in interface DAOUtils
Throws:
java.lang.Exception

saveKey

private void saveKey(java.lang.String filename,
                     byte[] contents)
              throws java.lang.Exception
Throws:
java.lang.Exception

loadKey

private java.security.Key loadKey(java.lang.String filename,
                                  boolean isPublic)
                           throws java.lang.Exception
Throws:
java.lang.Exception


Copyright © SoftSlate, LLC 2003–2005