Package org.jumpmind.symmetric.route
Class ConvertToReloadRouter
java.lang.Object
org.jumpmind.symmetric.route.AbstractDataRouter
org.jumpmind.symmetric.route.ConvertToReloadRouter
- All Implemented Interfaces:
IBuiltInExtensionPoint
,IExtensionPoint
,IDataRouter
public class ConvertToReloadRouter
extends AbstractDataRouter
implements IDataRouter, IBuiltInExtensionPoint
Converts multiple change data rows into reload batches for each table ordered by foreign key dependencies.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected ISymmetricEngine
protected boolean
protected long
protected long
protected long
protected long
static final String
protected long
Fields inherited from class org.jumpmind.symmetric.route.AbstractDataRouter
log
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
completeBatch
(SimpleRouterContext context, OutgoingBatch batch) Override if needed.void
contextCommitted
(SimpleRouterContext context) getAllSortedTables
(SimpleRouterContext context) protected Object[]
getPkObjects
(DataEventType eventType, DataMetaData dataMetaData) protected String
getTempTableSql
(org.jumpmind.symmetric.route.ConvertToReloadRouter.RouterInfo routerInfo, org.jumpmind.symmetric.route.ConvertToReloadRouter.TableInfo tableInfo, long loadId) protected long
insertData
(ISqlTransaction transaction, org.jumpmind.symmetric.route.ConvertToReloadRouter.TableInfo tableInfo, String eventType, String sql) protected void
insertDataEvent
(ISqlTransaction transaction, long batchId, long dataId) protected OutgoingBatch
newBatch
(ISqlTransaction transaction, String nodeId, long loadId, org.jumpmind.symmetric.route.ConvertToReloadRouter.TableInfo tableInfo, String summary) protected void
queueEvents
(ChannelRouterContext context, ISqlTransaction transaction, OutgoingBatch origBatch, List<org.jumpmind.symmetric.route.ConvertToReloadRouter.TableInfo> tableInfos) routeToNodes
(SimpleRouterContext context, DataMetaData dataMetaData, Set<Node> nodes, boolean initialLoad, boolean initialLoadSelectUsed, TriggerRouter triggerRouter) void
setSymmetricEngine
(ISymmetricEngine engine) protected List<org.jumpmind.symmetric.route.ConvertToReloadRouter.TableInfo>
sortTableInfos
(SimpleRouterContext context, Collection<org.jumpmind.symmetric.route.ConvertToReloadRouter.TableInfo> tableInfos) Methods inherited from class org.jumpmind.symmetric.route.AbstractDataRouter
addNodeId, getDataAsObject, getDataAsString, getDataMap, getDataObjectMap, getNewDataAsObject, getNewDataAsString, getNullData, getOldDataAsObject, getOldDataAsString, getPkDataAsObject, getPkDataAsString, isConfigurable, isDmlOnly, testColumnNamesMatchValues, toExternalIds, toNodeIds
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.jumpmind.symmetric.route.IDataRouter
isConfigurable, isDmlOnly
-
Field Details
-
ROUTER_ID
- See Also:
-
engine
-
firstTime
protected boolean firstTime -
routeMs
protected long routeMs -
sortMs
protected long sortMs -
insertTempMs
protected long insertTempMs -
queryNodesMs
protected long queryNodesMs -
insertBatchMs
protected long insertBatchMs
-
-
Constructor Details
-
ConvertToReloadRouter
-
-
Method Details
-
routeToNodes
public Set<String> routeToNodes(SimpleRouterContext context, DataMetaData dataMetaData, Set<Node> nodes, boolean initialLoad, boolean initialLoadSelectUsed, TriggerRouter triggerRouter) - Specified by:
routeToNodes
in interfaceIDataRouter
-
getPkObjects
-
completeBatch
Description copied from class:AbstractDataRouter
Override if needed.- Specified by:
completeBatch
in interfaceIDataRouter
- Overrides:
completeBatch
in classAbstractDataRouter
-
contextCommitted
- Specified by:
contextCommitted
in interfaceIDataRouter
- Overrides:
contextCommitted
in classAbstractDataRouter
-
sortTableInfos
protected List<org.jumpmind.symmetric.route.ConvertToReloadRouter.TableInfo> sortTableInfos(SimpleRouterContext context, Collection<org.jumpmind.symmetric.route.ConvertToReloadRouter.TableInfo> tableInfos) -
getAllSortedTables
-
queueEvents
protected void queueEvents(ChannelRouterContext context, ISqlTransaction transaction, OutgoingBatch origBatch, List<org.jumpmind.symmetric.route.ConvertToReloadRouter.TableInfo> tableInfos) -
getTempTableSql
protected String getTempTableSql(org.jumpmind.symmetric.route.ConvertToReloadRouter.RouterInfo routerInfo, org.jumpmind.symmetric.route.ConvertToReloadRouter.TableInfo tableInfo, long loadId) -
newBatch
protected OutgoingBatch newBatch(ISqlTransaction transaction, String nodeId, long loadId, org.jumpmind.symmetric.route.ConvertToReloadRouter.TableInfo tableInfo, String summary) -
insertData
protected long insertData(ISqlTransaction transaction, org.jumpmind.symmetric.route.ConvertToReloadRouter.TableInfo tableInfo, String eventType, String sql) -
insertDataEvent
-
setSymmetricEngine
-