public class NodeService extends AbstractService implements INodeService
INodeServiceINodeService.AuthenticationStatuslog, parameterService, platform, sqlTemplate, sqlTemplateDirty, symmetricDialect, tablePrefix| Constructor and Description |
|---|
NodeService(ISymmetricEngine engine) |
| Modifier and Type | Method and Description |
|---|---|
void |
checkForOfflineNodes()
Check to see if any nodes are offline and process any nodes found using
the configured IOfflineNodeHandler.
|
boolean |
deleteIdentity() |
void |
deleteNode(java.lang.String nodeId,
boolean syncChange) |
void |
deleteNodeHost(java.lang.String nodeId) |
void |
deleteNodeSecurity(java.lang.String nodeId) |
java.util.List<java.lang.String> |
findAllExternalIds() |
java.util.List<Node> |
findAllNodes() |
java.util.Map<java.lang.String,Node> |
findAllNodesAsMap() |
java.util.Map<java.lang.String,NodeSecurity> |
findAllNodeSecurity(boolean useCache) |
java.util.Collection<Node> |
findEnabledNodesFromNodeGroup(java.lang.String nodeGroupId) |
Node |
findIdentity() |
Node |
findIdentity(boolean useCache) |
Node |
findIdentity(boolean useCache,
boolean logSqlError) |
java.lang.String |
findIdentityNodeId() |
java.util.Map<java.lang.String,java.util.Date> |
findLastHeartbeats() |
Node |
findNode(java.lang.String id)
Lookup a node in the database, which contains information for syncing
with it.
|
Node |
findNode(java.lang.String id,
boolean useCache) |
Node |
findNodeByExternalId(java.lang.String nodeGroupId,
java.lang.String externalId) |
java.util.List<NodeHost> |
findNodeHosts(java.lang.String nodeId) |
Node |
findNodeInCacheOnly(java.lang.String id) |
NodeSecurity |
findNodeSecurity(java.lang.String id)
Lookup a node_security in the database, which contains private
information used to authenticate.
|
NodeSecurity |
findNodeSecurity(java.lang.String nodeId,
boolean useCache) |
java.util.List<NodeSecurity> |
findNodeSecurityWithLoadEnabled() |
java.util.Set<Node> |
findNodesThatOriginatedFromNodeId(java.lang.String originalNodeId)
Find a list of
Nodes that were create at the passed in node or
were created at a node that was created by the passed in node
(recursively). |
java.util.Set<Node> |
findNodesThatOriginatedFromNodeId(java.lang.String originalNodeId,
boolean recursive) |
java.util.List<Node> |
findNodesToPull() |
java.util.List<Node> |
findNodesToPushTo() |
java.util.List<Node> |
findNodesWhoPullFromMe() |
java.util.List<Node> |
findNodesWhoPushToMe() |
java.util.Collection<Node> |
findNodesWithOpenRegistration() |
java.util.List<java.lang.String> |
findOfflineNodeIds(long minutesOffline) |
java.util.List<Node> |
findOfflineNodes()
Find nodes that have been offline for the configured timeframe before
IOfflineClientListener
and IOfflineServerListener will be called |
java.util.List<Node> |
findOfflineNodes(long minutesOffline)
Find nodes that have been offline for a number of minutes
|
NodeSecurity |
findOrCreateNodeSecurity(java.lang.String nodeId) |
Node |
findRootNode() |
java.util.List<Node> |
findSourceNodesFor(NodeGroupLinkAction eventAction) |
java.lang.String |
findSymmetricVersion() |
java.util.List<Node> |
findTargetNodesFor(NodeGroupLinkAction eventAction) |
protected void |
fireOffline(java.util.List<Node> offlineClientNodeList) |
void |
flushNodeAuthorizedCache() |
void |
flushNodeCache() |
void |
flushNodeGroupCache() |
INodeService.AuthenticationStatus |
getAuthenticationStatus(java.lang.String nodeId,
java.lang.String securityToken) |
Node |
getCachedIdentity() |
java.lang.String |
getExternalId(java.lang.String nodeId) |
protected <T> T |
getFirstEntry(java.util.List<T> list) |
NodeStatus |
getNodeStatus()
Get the current status of this node.
|
NetworkedNode |
getRootNetworkedNode() |
void |
ignoreNodeChannelForExternalId(boolean enabled,
java.lang.String channelId,
java.lang.String nodeGroupId,
java.lang.String externalId) |
void |
incrementNodeFailedLogins(java.lang.String nodeId) |
void |
insertNodeGroup(java.lang.String groupId,
java.lang.String description) |
void |
insertNodeIdentity(java.lang.String nodeId) |
void |
insertNodeSecurity(java.lang.String id) |
boolean |
isDataLoadCompleted() |
boolean |
isDataLoadStarted() |
boolean |
isExternalIdRegistered(java.lang.String nodeGroupId,
java.lang.String externalId) |
protected boolean |
isNodeAuthorizationLocked(java.lang.String nodeId) |
boolean |
isNodeAuthorized(java.lang.String nodeId,
java.lang.String password)
Check that the given node and password match in the node_security table.
|
boolean |
isRegistrationEnabled(java.lang.String nodeId) |
boolean |
isRegistrationServer() |
protected boolean |
registrationOpen(Node node) |
void |
resetNodeFailedLogins(java.lang.String nodeId) |
void |
save(Node node) |
boolean |
setInitialLoadEnabled(org.jumpmind.db.sql.ISqlTransaction transaction,
java.lang.String nodeId,
boolean initialLoadEnabled,
boolean syncChange,
long loadId,
java.lang.String createBy) |
boolean |
setInitialLoadEnabled(java.lang.String nodeId,
boolean initialLoadEnabled,
boolean syncChange,
long loadId,
java.lang.String createBy) |
void |
setNodePasswordFilter(INodePasswordFilter nodePasswordFilter) |
boolean |
setReverseInitialLoadEnabled(org.jumpmind.db.sql.ISqlTransaction transaction,
java.lang.String nodeId,
boolean initialLoadEnabled,
boolean syncChange,
long loadId,
java.lang.String createBy) |
boolean |
setReverseInitialLoadEnabled(java.lang.String nodeId,
boolean initialLoadEnabled,
boolean syncChange,
long loadId,
java.lang.String createBy) |
protected boolean |
syncEnabled(Node node) |
boolean |
updateNode(Node node) |
void |
updateNodeHost(NodeHost nodeHost) |
void |
updateNodeHostForCurrentNode() |
boolean |
updateNodeSecurity(org.jumpmind.db.sql.ISqlTransaction transaction,
NodeSecurity security) |
boolean |
updateNodeSecurity(NodeSecurity security) |
assertNotNull, buildBatchWhere, close, createSqlReplacementTokens, createSqlReplacementTokens, getJdbcTemplate, getParameterService, getSql, getSymmetricDialect, getTablePrefix, getTargetDialect, getTargetPlatform, getTargetPlatform, isCalledFromSymmetricAdminTool, isSet, isStreamClosedByClient, isSymmetricTable, logOnce, maxDate, readAcks, sendAck, setSqlMap, synchronize, toNodeIds, toNodeIdspublic NodeService(ISymmetricEngine engine)
public java.lang.String findSymmetricVersion()
findSymmetricVersion in interface INodeServicepublic java.lang.String findIdentityNodeId()
findIdentityNodeId in interface INodeServicepublic java.lang.String getExternalId(java.lang.String nodeId)
getExternalId in interface INodeServicepublic java.util.Collection<Node> findEnabledNodesFromNodeGroup(java.lang.String nodeGroupId)
findEnabledNodesFromNodeGroup in interface INodeServicepublic java.util.Set<Node> findNodesThatOriginatedFromNodeId(java.lang.String originalNodeId)
INodeServiceNodes that were create at the passed in node or
were created at a node that was created by the passed in node
(recursively).findNodesThatOriginatedFromNodeId in interface INodeServicepublic java.util.Collection<Node> findNodesWithOpenRegistration()
findNodesWithOpenRegistration in interface INodeServicepublic java.util.Set<Node> findNodesThatOriginatedFromNodeId(java.lang.String originalNodeId, boolean recursive)
findNodesThatOriginatedFromNodeId in interface INodeServicepublic Node findNode(java.lang.String id)
findNode in interface INodeServicepublic Node findNodeInCacheOnly(java.lang.String id)
findNodeInCacheOnly in interface INodeServicepublic Node findNode(java.lang.String id, boolean useCache)
findNode in interface INodeServicepublic void flushNodeCache()
flushNodeCache in interface INodeServicepublic Node findNodeByExternalId(java.lang.String nodeGroupId, java.lang.String externalId)
findNodeByExternalId in interface INodeServicepublic void ignoreNodeChannelForExternalId(boolean enabled,
java.lang.String channelId,
java.lang.String nodeGroupId,
java.lang.String externalId)
ignoreNodeChannelForExternalId in interface INodeServicepublic java.util.List<NodeHost> findNodeHosts(java.lang.String nodeId)
findNodeHosts in interface INodeServicepublic void deleteNodeHost(java.lang.String nodeId)
deleteNodeHost in interface INodeServicepublic void updateNodeHost(NodeHost nodeHost)
updateNodeHost in interface INodeServicepublic void updateNodeHostForCurrentNode()
updateNodeHostForCurrentNode in interface INodeServicepublic void deleteNode(java.lang.String nodeId,
boolean syncChange)
deleteNode in interface INodeServicepublic void insertNodeIdentity(java.lang.String nodeId)
insertNodeIdentity in interface INodeServicepublic boolean deleteIdentity()
deleteIdentity in interface INodeServicepublic void insertNodeGroup(java.lang.String groupId,
java.lang.String description)
insertNodeGroup in interface INodeServicepublic void save(Node node)
save in interface INodeServicepublic boolean updateNode(Node node)
protected <T> T getFirstEntry(java.util.List<T> list)
public Node getCachedIdentity()
getCachedIdentity in interface INodeServicepublic Node findIdentity()
findIdentity in interface INodeServicepublic Node findIdentity(boolean useCache)
findIdentity in interface INodeServicepublic Node findIdentity(boolean useCache, boolean logSqlError)
findIdentity in interface INodeServicepublic java.util.List<Node> findNodesToPull()
findNodesToPull in interface INodeServicepublic java.util.List<Node> findNodesWhoPushToMe()
findNodesWhoPushToMe in interface INodeServicepublic java.util.List<Node> findNodesToPushTo()
findNodesToPushTo in interface INodeServicepublic java.util.List<Node> findNodesWhoPullFromMe()
findNodesWhoPullFromMe in interface INodeServicepublic java.util.List<Node> findSourceNodesFor(NodeGroupLinkAction eventAction)
findSourceNodesFor in interface INodeServicepublic java.util.List<Node> findTargetNodesFor(NodeGroupLinkAction eventAction)
findTargetNodesFor in interface INodeServicepublic void flushNodeGroupCache()
flushNodeGroupCache in interface INodeServicepublic java.util.List<java.lang.String> findAllExternalIds()
findAllExternalIds in interface INodeServicepublic java.util.List<Node> findAllNodes()
findAllNodes in interface INodeServicepublic java.util.Map<java.lang.String,Node> findAllNodesAsMap()
findAllNodesAsMap in interface INodeServicepublic NetworkedNode getRootNetworkedNode()
getRootNetworkedNode in interface INodeServicepublic Node findRootNode()
findRootNode in interface INodeServicepublic NodeSecurity findNodeSecurity(java.lang.String id)
findNodeSecurity in interface INodeServicepublic NodeSecurity findNodeSecurity(java.lang.String nodeId, boolean useCache)
findNodeSecurity in interface INodeServicepublic NodeSecurity findOrCreateNodeSecurity(java.lang.String nodeId)
findOrCreateNodeSecurity in interface INodeServicepublic boolean isRegistrationEnabled(java.lang.String nodeId)
isRegistrationEnabled in interface INodeServicepublic void insertNodeSecurity(java.lang.String id)
public void deleteNodeSecurity(java.lang.String nodeId)
deleteNodeSecurity in interface INodeServicepublic java.util.List<NodeSecurity> findNodeSecurityWithLoadEnabled()
findNodeSecurityWithLoadEnabled in interface INodeServicepublic java.util.Map<java.lang.String,NodeSecurity> findAllNodeSecurity(boolean useCache)
findAllNodeSecurity in interface INodeServicepublic boolean isNodeAuthorized(java.lang.String nodeId,
java.lang.String password)
isNodeAuthorized in interface INodeServiceprotected boolean isNodeAuthorizationLocked(java.lang.String nodeId)
public void flushNodeAuthorizedCache()
flushNodeAuthorizedCache in interface INodeServicepublic boolean updateNodeSecurity(NodeSecurity security)
updateNodeSecurity in interface INodeServicepublic boolean updateNodeSecurity(org.jumpmind.db.sql.ISqlTransaction transaction,
NodeSecurity security)
updateNodeSecurity in interface INodeServicepublic boolean setInitialLoadEnabled(org.jumpmind.db.sql.ISqlTransaction transaction,
java.lang.String nodeId,
boolean initialLoadEnabled,
boolean syncChange,
long loadId,
java.lang.String createBy)
setInitialLoadEnabled in interface INodeServicepublic boolean setInitialLoadEnabled(java.lang.String nodeId,
boolean initialLoadEnabled,
boolean syncChange,
long loadId,
java.lang.String createBy)
setInitialLoadEnabled in interface INodeServicepublic boolean setReverseInitialLoadEnabled(org.jumpmind.db.sql.ISqlTransaction transaction,
java.lang.String nodeId,
boolean initialLoadEnabled,
boolean syncChange,
long loadId,
java.lang.String createBy)
setReverseInitialLoadEnabled in interface INodeServicepublic boolean setReverseInitialLoadEnabled(java.lang.String nodeId,
boolean initialLoadEnabled,
boolean syncChange,
long loadId,
java.lang.String createBy)
setReverseInitialLoadEnabled in interface INodeServicepublic boolean isExternalIdRegistered(java.lang.String nodeGroupId,
java.lang.String externalId)
isExternalIdRegistered in interface INodeServicepublic boolean isDataLoadCompleted()
isDataLoadCompleted in interface INodeServicepublic boolean isDataLoadStarted()
isDataLoadStarted in interface INodeServicepublic boolean isRegistrationServer()
isRegistrationServer in interface INodeServicepublic NodeStatus getNodeStatus()
INodeServicegetNodeStatus in interface INodeServiceNodeStatuspublic void setNodePasswordFilter(INodePasswordFilter nodePasswordFilter)
public void checkForOfflineNodes()
INodeServicecheckForOfflineNodes in interface INodeServicepublic java.util.List<Node> findOfflineNodes()
INodeServiceIOfflineClientListener
and IOfflineServerListener will be calledfindOfflineNodes in interface INodeServicepublic java.util.List<Node> findOfflineNodes(long minutesOffline)
INodeServicefindOfflineNodes in interface INodeServiceminutesOffline - the number of minutes that have passed that a node has not
checked in for until it is considered offlinepublic java.util.Map<java.lang.String,java.util.Date> findLastHeartbeats()
findLastHeartbeats in interface INodeServicepublic java.util.List<java.lang.String> findOfflineNodeIds(long minutesOffline)
findOfflineNodeIds in interface INodeServiceprotected void fireOffline(java.util.List<Node> offlineClientNodeList)
public INodeService.AuthenticationStatus getAuthenticationStatus(java.lang.String nodeId, java.lang.String securityToken)
getAuthenticationStatus in interface INodeServicepublic void resetNodeFailedLogins(java.lang.String nodeId)
resetNodeFailedLogins in interface INodeServicepublic void incrementNodeFailedLogins(java.lang.String nodeId)
incrementNodeFailedLogins in interface INodeServiceprotected boolean syncEnabled(Node node)
protected boolean registrationOpen(Node node)