All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.sf.aguacate.context.spi.sql.impl.SentenceSqlDelete Maven / Gradle / Ivy

There is a newer version: 0.10.9
Show newest version
package net.sf.aguacate.context.spi.sql.impl;

import java.sql.SQLException;
import java.util.List;
import java.util.Map;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

import net.sf.aguacate.function.FunctionContext;
import net.sf.aguacate.function.FunctionEvalResult;
import net.sf.aguacate.util.parameter.Parameter;
import net.sf.aguacate.util.parameter.Prm;

/**
 * 
 * {
 *  "name": "...",
 *  "type": "DELETE",
 *  "message": "...",
 *  "table": "table",
 *  "required": [ // WHERE columns
 *  ],
 *  "optional": [], //EMPTY
 *  "methods": [
 *  ]
 * }
 * 
* * @see AbstractSentenceSql#DELETE * */ public class SentenceSqlDelete extends AbstractSentenceSql { private static final Logger LOGGER = LogManager.getLogger(SentenceSqlDelete.class); private final String table; private final Parameter[] required; private final Parameter[] optional; public SentenceSqlDelete(String name, String message, String table, List methods, List required, List optional) { super(name, message, methods); this.table = table; this.required = Prm.toArray(required); this.optional = Prm.toArray(optional); } @Override public FunctionEvalResult evaluate0(FunctionContext functionContext, Map context) throws SQLException { int count = functionContext.databaseInterface().executeDelete(functionContext.acquireConnection(), table, context, required, optional); if (LOGGER.isInfoEnabled()) { LOGGER.debug("deleted: {}", count); } return SUCCESS; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy