package org.embulk.spi;
import com.google.common.base.Throwables;
public class CloseResource
implements AutoCloseable
{
private AutoCloseable resource;
public CloseResource()
{
this(null);
}
public CloseResource(AutoCloseable resource)
{
this.resource = resource;
}
public void closeThis(AutoCloseable resource)
{
this.resource = resource;
}
public void dontClose()
{
this.resource = null;
}
public void close()
{
if (resource != null) {
try {
resource.close();
}
catch (Exception ex) {
throw Throwables.propagate(ex);
}
}
}
}