package com.diodesoftware.scb.tables; import com.diodesoftware.dbmapper.DatabaseEntry; import com.diodesoftware.dbmapper.DatabaseColumn; import com.diodesoftware.dbmapper.DatabaseColumnType; import com.diodesoftware.dbmapper.DBMapper; import java.util.Calendar; import java.sql.Connection; import java.sql.SQLException; import java.sql.PreparedStatement; import java.sql.ResultSet; import org.apache.log4j.Logger; /** * Copyright 2008 Sensemaker Software Inc. * User: rob * Date: Apr 3, 2008 * Time: 7:03:04 PM */ public class Ignoremail implements DatabaseEntry { private int number; private String email; private Calendar created; private static Logger log = Logger.getLogger(Ignoremail.class); private DatabaseColumn[] columns = new DatabaseColumn[]{ new DatabaseColumn("Email", DatabaseColumnType.CHAR_200), new DatabaseColumn("Created", DatabaseColumnType.DATEEPOCH) }; public DatabaseColumn[] columns(){ return columns; } public int getNumber() { return number; } public void setNumber(int number) { this.number = number; } public Calendar getCreated() { return created; } public void setCreated(Calendar created) { this.created = created; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public static boolean isIgnored(String email, Connection con){ boolean result = false; email = email.toLowerCase(); String sql = "select * from Ignoreemail where Email = ?"; try{ PreparedStatement prepStmt = con.prepareStatement(sql); prepStmt.setString(1, email); ResultSet rs = prepStmt.executeQuery(); result = rs.next(); rs.close(); prepStmt.close(); }catch(SQLException e){ log.error("Error running SQL [" + sql + "]",e); } return result; } public static void add(String email, Connection con){ if(!isIgnored(email,con)){ email = email.toLowerCase(); Ignoremail im = new Ignoremail(); im.setEmail(email); im.setCreated(Calendar.getInstance()); DBMapper.save(im, con); } } }