새소식

Maven Repository

egovframework.com.cmm.util.EgovResourceCloseHelper

728x90

package egovframework.com.cmm.util;


import java.io.Closeable;

import java.net.ServerSocket;

import java.net.Socket;

import java.sql.Connection;

import java.sql.ResultSet;

import java.sql.Statement;

import java.sql.Wrapper;


/**

 * Utility class  to support to close resources

 * @author Vincent Han

 * @since 2014.09.18

 * @version 1.0

 * @see

 *

 * <pre>

 * << 개정이력(Modification Information) >>

 *   

 *   수정일        수정자       수정내용

 *  -------       --------    ---------------------------

 *   2014.09.18 표준프레임워크센터 최초 생성

 *

 * </pre>

 */

public class EgovResourceCloseHelper {

/**

* Resource close 처리.

* @param resources

*/

public static void close(Closeable  ... resources) {

for (Closeable resource : resources) {

if (resource != null) {

try {

resource.close();

} catch (Exception ignore) {

EgovBasicLogger.ignore("Occurred Exception to close resource is ingored!!");

}

}

}

}

/**

* JDBC 관련 resource 객체 close 처리

* @param objects

*/

public static void closeDBObjects(Wrapper ... objects) {

for (Object object : objects) {

if (object != null) {

if (object instanceof ResultSet) {

try {

((ResultSet)object).close();

} catch (Exception ignore) {

EgovBasicLogger.ignore("Occurred Exception to close resource is ingored!!");

}

} else if (object instanceof Statement) {

try {

((Statement)object).close();

} catch (Exception ignore) {

EgovBasicLogger.ignore("Occurred Exception to close resource is ingored!!");

}

} else if (object instanceof Connection) {

try {

((Connection)object).close();

} catch (Exception ignore) {

EgovBasicLogger.ignore("Occurred Exception to close resource is ingored!!");

}

} else {

throw new IllegalArgumentException("Wrapper type is not found : " + object.toString());

}

}

}

}

/**

* Socket 관련 resource 객체 close 처리

* @param objects

*/

public static void closeSocketObjects(Socket socket, ServerSocket server) {

if (socket != null) {

try {

socket.shutdownOutput();

} catch (Exception ignore) {

EgovBasicLogger.ignore("Occurred Exception to shutdown ouput is ignored!!");

}

try {

socket.close();

} catch (Exception ignore) {

EgovBasicLogger.ignore("Occurred Exception to close resource is ignored!!");

}

}

if (server != null) {

try {

server.close();

} catch (Exception ignore) {

EgovBasicLogger.ignore("Occurred Exception to close resource is ignored!!");

}

}

}

/**

*  Socket 관련 resource 객체 close 처리

*  

* @param sockets

*/

public static void closeSockets(Socket ... sockets) {

for (Socket socket : sockets) {

if (socket != null) {

try {

socket.shutdownOutput();

} catch (Exception ignore) {

EgovBasicLogger.ignore("Occurred Exception to shutdown ouput is ignored!!");

}

try {

socket.close();

} catch (Exception ignore) {

EgovBasicLogger.ignore("Occurred Exception to close resource is ignored!!");

}

}

}

}

}

반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.