SetDate.java
- /***************************************************************************
- Copyright 2012 Emily Estes
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- ***************************************************************************/
- package net.metanotion.sqlc.setters;
- import java.sql.Date;
- import java.sql.PreparedStatement;
- import java.sql.SQLException;
- import java.util.Map;
- public final class SetDate extends SQLSetter {
- public SetDate(int count, String name) { super(count, name); }
- @Override public void set(PreparedStatement stmt, Map<String,Object> env) throws SQLException {
- Object o = env.get(name);
- Date dt = null;
- if(o instanceof Date) {
- dt = (Date) o;
- } else if(o instanceof java.util.Date) {
- dt = new Date(((java.util.Date) o).getTime());
- } else { throw new RuntimeException("Invalid Date Object."); }
- stmt.setDate(count, dt);
- }
- @Override public String setStatic(String stmtVar, String paramVar) {
- return stmtVar + ".setDate(" + count + ", new java.sql.Date(" + paramVar + ".getTime()))";
- }
- }