/**
 * Copyright (c) 2009-2012 EBM WebSourcing, 2012-2013 Linagora
 * 
 * This program/library is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, either version 2.1 of the License, or (at your
 * option) any later version.
 * 
 * This program/library is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
 * for more details.
 * 
 * You should have received a copy of the GNU Lesser General Public License
 * along with this program/library; If not, see <http://www.gnu.org/licenses/>
 * for the GNU Lesser General Public License version 2.1.
 */
package org.ow2.petals.bc.sql;

/**
 * SU extensions Constants.
 * @author Adrien LOUIS - EBM WebSourcing
 */
public interface Constants {

    static final String NAMESPACE = "http://petals.ow2.org/components/sql/version-1";

    // SU parameters constants
    static final String DATABASE_DRIVER = "driver";

    static final String DATABASE_URL = "url";

    static final String DATABASE_USER = "user";

    static final String DATABASE_PASSWORD = "password";

    static final String DATABASE_MAXACTIVE = "maxActive";

    static final String DATABASE_MAXIDLE = "maxIdle";

    static final String DATABASE_MINIDLE = "minIdle";

    static final String DATABASE_MAXWAIT = "maxWait";

    static final String DATABASE_TIMEBTWEVICTION = "timeBetweenEvictionRunsMillis";

    static final String METADATA = "metadata";

    static final String STORED_PROCEDURE = "storedProcedure";
    
    static final String STORED_PROCEDURE_SIGNATURE = "storedProcedureSignature";
    
    static final String PARAMETER = "parameter";
    
    static final String STORED_PROCEDURE_CALL = "storedProcedureCall";
    
    static final String STORED_PROCEDURE_DROP = "storedProcedureDrop";

    // Operation constants
    static final String OPERATION_SELECT = "select";

    static final String OPERATION_INSERT = "insert";

    static final String OPERATION_INSERT_WITH_RESPONSE = "insertwithresponse";

    static final String OPERATION_UPDATE = "update";

    static final String OPERATION_UPDATE_WITH_RESPONSE = "updatewithresponse";

    static final String OPERATION_DELETE = "delete";

    static final String OPERATION_DELETE_WITH_RESPONSE = "deletewithresponse";
    
    static final String OPERATION_STOREDPROCEDURE = "storedprocedure";
    
    static final String OPERATION_XML_STOREDPROCEDURE = "xmlstoredprocedure";

    // XML constants    
    static final String SQL_ELEMENT = "sql";
    
    static final String RESULT_ELEMENT = "result";

    static final String ROW_ELEMENT = "row";

    static final String COLUMN_ELEMENT = "column";

    static final String INDEX_ATTRIBUTE = "index";

    static final String NAME_ATTRIBUTE = "name";

    static final String TYPE_ATTRIBUTE = "type";

    static final String UPDATED_ELEMENT = "updated";
    
    static final String STOREDPROCEDURE_ELEMENT = "storedProcedure";
    
    static final String PARAMETER_ELEMENT = "parameter";
    
    static final String RANK_ATTRIBUTE = "rank";
    
    static final String STOREDPROCEDURE_RESULT_ELEMENT = "storedProcedureResult";
}
