/******************************************************************************* * Copyright (c) 2016 hangum. * All rights reserved. This program and the accompanying materials * are made available under the terms of the GNU Lesser Public License v2.1 * which accompanies this distribution, and is available at * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html * * Contributors: * hangum - initial API and implementation ******************************************************************************/ package com.hangum.tadpole.engine.sql.util; import org.apache.commons.lang.StringUtils; import org.apache.log4j.Logger; import com.hangum.tadpole.commons.libs.core.define.PublicTadpoleDefine.QUERY_DDL_TYPE; import com.hangum.tadpole.engine.define.DBGroupDefine; import com.hangum.tadpole.engine.query.dao.system.UserDBDAO; /** * Object compile util * * @author hangum * */ public class ObjectCompileUtil { private static final Logger logger = Logger.getLogger(ObjectCompileUtil.class); /** * object 컴파일 후 - 오브젝트 상태를 표시해 줄수 있도록 합니다. * * @param userDB * @param ddlType * @param objectName * @return */ public static String validateObject(UserDBDAO userDB, QUERY_DDL_TYPE ddlType, String objectName) { if(StringUtils.isEmpty(objectName)) return ""; String retMsg = ""; //$NON-NLS-1$ if(DBGroupDefine.ORACLE_GROUP == userDB.getDBGroup()) { try { String strObjectName = StringUtils.upperCase(objectName); if(ddlType == QUERY_DDL_TYPE.PROCEDURE) { retMsg = OracleObjectCompileUtils.otherObjectCompile(QUERY_DDL_TYPE.PROCEDURE, "PROCEDURE", strObjectName, userDB); //$NON-NLS-1$ } else if(ddlType == QUERY_DDL_TYPE.PACKAGE) { retMsg = OracleObjectCompileUtils.packageCompile(strObjectName, userDB); } else if(ddlType == QUERY_DDL_TYPE.FUNCTION) { retMsg = OracleObjectCompileUtils.otherObjectCompile(QUERY_DDL_TYPE.FUNCTION, "FUNCTION", strObjectName, userDB); //$NON-NLS-1$ } else if(ddlType == QUERY_DDL_TYPE.TRIGGER) { retMsg = OracleObjectCompileUtils.otherObjectCompile(QUERY_DDL_TYPE.TRIGGER, "TRIGGER", strObjectName, userDB); //$NON-NLS-1$ } else if(ddlType == QUERY_DDL_TYPE.SYNONYM) { retMsg = OracleObjectCompileUtils.otherObjectCompile(QUERY_DDL_TYPE.SYNONYM, "SYNONYM", strObjectName, userDB); //$NON-NLS-1$ } } catch(Exception e) { logger.error("object compile", e); retMsg = e.getMessage(); } } return retMsg; } }