Package org.teiid.common.buffer
Class LobManager
- java.lang.Object
-
- org.teiid.common.buffer.LobManager
-
public class LobManager extends Object
Tracks lob references so they are not lost during serialization. TODO: for temp tables we may need to have a copy by value management strategy
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
LobManager.ReferenceMode
-
Constructor Summary
Constructors Constructor Description LobManager(int[] lobIndexes, FileStore lobStore)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description LobManager
clone()
void
detachLob(Streamable<?> lob, FileStore store, byte[] bytes)
int
getLobCount()
static int[]
getLobIndexes(List<? extends Expression> expressions)
Streamable<?>
getLobReference(String id)
void
persist()
static void
persistLob(Streamable<?> lob, FileStore store, byte[] bytes, boolean inlineLobs, int maxMemoryBytes)
void
remove()
void
setInlineLobs(boolean trackMemoryLobs)
void
setMaxMemoryBytes(int maxMemoryBytes)
void
setSaveTemporary(boolean b)
void
updateReferences(List<?> tuple, LobManager.ReferenceMode mode)
-
-
-
Constructor Detail
-
LobManager
public LobManager(int[] lobIndexes, FileStore lobStore)
-
-
Method Detail
-
clone
public LobManager clone()
-
setInlineLobs
public void setInlineLobs(boolean trackMemoryLobs)
-
setMaxMemoryBytes
public void setMaxMemoryBytes(int maxMemoryBytes)
-
updateReferences
public void updateReferences(List<?> tuple, LobManager.ReferenceMode mode) throws TeiidComponentException
- Throws:
TeiidComponentException
-
getLobReference
public Streamable<?> getLobReference(String id) throws TeiidComponentException
- Throws:
TeiidComponentException
-
getLobIndexes
public static int[] getLobIndexes(List<? extends Expression> expressions)
-
persist
public void persist() throws TeiidComponentException
- Throws:
TeiidComponentException
-
detachLob
public void detachLob(Streamable<?> lob, FileStore store, byte[] bytes) throws TeiidComponentException
- Throws:
TeiidComponentException
-
persistLob
public static void persistLob(Streamable<?> lob, FileStore store, byte[] bytes, boolean inlineLobs, int maxMemoryBytes) throws TeiidComponentException
- Throws:
TeiidComponentException
-
getLobCount
public int getLobCount()
-
remove
public void remove()
-
setSaveTemporary
public void setSaveTemporary(boolean b)
-
-