KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > mchange > v1 > util > ClosableResourceUtils


1 /*
2  * Distributed as part of c3p0 v.0.9.1
3  *
4  * Copyright (C) 2005 Machinery For Change, Inc.
5  *
6  * Author: Steve Waldman <swaldman@mchange.com>
7  *
8  * This library is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU Lesser General Public License version 2.1, as
10  * published by the Free Software Foundation.
11  *
12  * This software is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public License
18  * along with this software; see the file LICENSE. If not, write to the
19  * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
20  * Boston, MA 02111-1307, USA.
21  */

22
23
24 package com.mchange.v1.util;
25
26 import com.mchange.v2.log.*;
27
28 public final class ClosableResourceUtils
29 {
30     private final static MLogger logger = MLog.getLogger( ClosableResourceUtils.class );
31
32     /**
33      * attempts to close the specified resource,
34      * logging any exception or failure, but allowing
35      * control flow to proceed normally regardless.
36      */

37     public static Exception JavaDoc attemptClose(ClosableResource cr)
38     {
39     try
40         {
41         if (cr != null) cr.close();
42         return null;
43         }
44     catch (Exception JavaDoc e)
45         {
46         //e.printStackTrace();
47
if ( logger.isLoggable( MLevel.WARNING ) )
48             logger.log( MLevel.WARNING, "CloseableResource close FAILED.", e );
49         return e;
50         }
51     }
52
53     private ClosableResourceUtils()
54     {}
55 }
56
Popular Tags