KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > mlw > vlh > adapter > jdbc > util > setter > SasDateSetter


1 /**
2  * Copyright (c) 2003 held jointly by the individual authors.
3  *
4  * This library is free software; you can redistribute it and/or modify it
5  * under the terms of the GNU Lesser General Public License as published
6  * by the Free Software Foundation; either version 2.1 of the License, or
7  * (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful, but
10  * WITHOUT ANY WARRANTY; with out even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public License
15  * along with this library; if not, write to the Free Software Foundation,
16  * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
17  *
18  * > http://www.gnu.org/copyleft/lesser.html
19  * > http://www.opensource.org/licenses/lgpl-license.php
20  */

21 package net.mlw.vlh.adapter.jdbc.util.setter;
22
23 import java.sql.PreparedStatement JavaDoc;
24 import java.sql.SQLException JavaDoc;
25 import java.text.ParseException JavaDoc;
26 import java.text.SimpleDateFormat JavaDoc;
27 import java.util.Date JavaDoc;
28
29 /** This setter is a ahck to fix problems with the SAS JDBC driver...
30  *
31  * @author Matthew L. Wilson
32  * @version $Revision: 1.2 $ $Date: 2005/12/19 10:56:41 $
33  */

34 public class SasDateSetter extends TimestampSetter
35 {
36    protected SimpleDateFormat JavaDoc formatter = new SimpleDateFormat JavaDoc(DEFAULT_FORMAT);
37
38    public static final String JavaDoc DEFAULT_SAS_FORMAT = "ddMMMyy";
39
40    protected SimpleDateFormat JavaDoc sasFormatter = new SimpleDateFormat JavaDoc(DEFAULT_SAS_FORMAT);
41
42    /**
43     * @see net.mlw.util.sql.StatementBuilder.Setter#set(java.sql.PreparedStatement, int, java.lang.Object)
44     */

45    public int set(PreparedStatement JavaDoc query, int index, Object JavaDoc value) throws SQLException JavaDoc, ParseException JavaDoc
46    {
47       //Parse the date into a normal java.util.Date
48
Date JavaDoc date = formatter.parse((String JavaDoc) value);
49
50       //Convert the date into a string and set it.
51
query.setString(index++, sasFormatter.format(date));
52       return index;
53    }
54
55    /**
56     * @param format The format to set.
57     */

58    public void setSasDateFormat(String JavaDoc format)
59    {
60       sasFormatter = new SimpleDateFormat JavaDoc(format);
61    }
62 }
Popular Tags