Package org.apache.iceberg.hive
Class ClientPool<C,E extends java.lang.Exception>
- java.lang.Object
-
- org.apache.iceberg.hive.ClientPool<C,E>
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
- Direct Known Subclasses:
HiveClientPool
public abstract class ClientPool<C,E extends java.lang.Exception> extends java.lang.Object implements java.io.Closeable
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
ClientPool.Action<R,C,E extends java.lang.Exception>
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
close()
protected abstract void
close(C client)
protected abstract C
newClient()
protected abstract C
reconnect(C client)
<R> R
run(ClientPool.Action<R,C,E> action)
-
-
-
Method Detail
-
run
public <R> R run(ClientPool.Action<R,C,E> action) throws E extends java.lang.Exception, java.lang.InterruptedException
- Throws:
E extends java.lang.Exception
java.lang.InterruptedException
-
newClient
protected abstract C newClient()
-
close
protected abstract void close(C client)
-
close
public void close()
- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
-
-