package fr.ydelouis.selfoss.model;
import com.j256.ormlite.dao.BaseDaoImpl;
import com.j256.ormlite.stmt.SelectArg;
import com.j256.ormlite.support.ConnectionSource;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import fr.ydelouis.selfoss.entity.Tag;
public class TagDao extends BaseDaoImpl<Tag, String> {
public static final String COLUMN_NAME = "name";
public TagDao(ConnectionSource connectionSource) throws SQLException {
super(connectionSource, Tag.class);
}
public List<Tag> queryForNames(List<String> tagsNames) {
try {
return queryBuilder().where().in(COLUMN_NAME, safeStringCollection(tagsNames)).query();
} catch (SQLException e) {
e.printStackTrace();
return new ArrayList<Tag>();
}
}
private List<SelectArg> safeStringCollection(List<String> strings) {
List<SelectArg> safeStrings = new ArrayList<SelectArg>();
for (String string : strings) {
safeStrings.add(new SelectArg(string));
}
return safeStrings;
}
}