use of org.jumpmind.symmetric.model.NodeHost in project symmetric-ds by JumpMind.
the class RestService method nodeImpl.
private Node nodeImpl(ISymmetricEngine engine) {
Node xmlNode = new Node();
if (isRegistered(engine)) {
INodeService nodeService = engine.getNodeService();
org.jumpmind.symmetric.model.Node modelNode = nodeService.findIdentity();
List<NodeHost> nodeHosts = nodeService.findNodeHosts(modelNode.getNodeId());
NodeSecurity nodeSecurity = nodeService.findNodeSecurity(modelNode.getNodeId());
xmlNode.setNodeId(modelNode.getNodeId());
xmlNode.setExternalId(modelNode.getExternalId());
xmlNode.setSyncUrl(modelNode.getSyncUrl());
xmlNode.setRegistrationUrl(engine.getParameterService().getRegistrationUrl());
xmlNode.setBatchInErrorCount(modelNode.getBatchInErrorCount());
xmlNode.setBatchToSendCount(modelNode.getBatchToSendCount());
if (nodeHosts.size() > 0) {
xmlNode.setLastHeartbeat(nodeHosts.get(0).getHeartbeatTime());
}
xmlNode.setHeartbeatInterval(engine.getParameterService().getInt(ParameterConstants.HEARTBEAT_JOB_PERIOD_MS));
xmlNode.setRegistered(nodeSecurity.hasRegistered());
xmlNode.setInitialLoaded(nodeSecurity.hasInitialLoaded());
xmlNode.setReverseInitialLoaded(nodeSecurity.hasReverseInitialLoaded());
if (modelNode.getCreatedAtNodeId() == null) {
xmlNode.setRegistrationServer(true);
} else {
xmlNode.setRegistrationServer(false);
}
xmlNode.setCreatedAtNodeId(modelNode.getCreatedAtNodeId());
} else {
throw new NotFoundException();
}
return xmlNode;
}
use of org.jumpmind.symmetric.model.NodeHost in project symmetric-ds by JumpMind.
the class RestService method childrenImpl.
private NodeList childrenImpl(ISymmetricEngine engine) {
NodeList children = new NodeList();
Node xmlChildNode = null;
INodeService nodeService = engine.getNodeService();
org.jumpmind.symmetric.model.Node modelNode = nodeService.findIdentity();
if (isRegistered(engine)) {
if (isRootNode(engine, modelNode)) {
NetworkedNode networkedNode = nodeService.getRootNetworkedNode();
Set<NetworkedNode> childNetwork = networkedNode.getChildren();
if (childNetwork != null) {
for (NetworkedNode child : childNetwork) {
List<NodeHost> nodeHosts = nodeService.findNodeHosts(child.getNode().getNodeId());
NodeSecurity nodeSecurity = nodeService.findNodeSecurity(child.getNode().getNodeId());
xmlChildNode = new Node();
xmlChildNode.setNodeId(child.getNode().getNodeId());
xmlChildNode.setExternalId(child.getNode().getExternalId());
xmlChildNode.setRegistrationServer(false);
xmlChildNode.setSyncUrl(child.getNode().getSyncUrl());
xmlChildNode.setBatchInErrorCount(child.getNode().getBatchInErrorCount());
xmlChildNode.setBatchToSendCount(child.getNode().getBatchToSendCount());
if (nodeHosts.size() > 0) {
xmlChildNode.setLastHeartbeat(nodeHosts.get(0).getHeartbeatTime());
}
xmlChildNode.setRegistered(nodeSecurity.hasRegistered());
xmlChildNode.setInitialLoaded(nodeSecurity.hasInitialLoaded());
xmlChildNode.setReverseInitialLoaded(nodeSecurity.hasReverseInitialLoaded());
if (child.getNode().getCreatedAtNodeId() == null) {
xmlChildNode.setRegistrationServer(true);
}
children.addNode(xmlChildNode);
}
}
}
} else {
throw new NotFoundException();
}
return children;
}
use of org.jumpmind.symmetric.model.NodeHost in project symmetric-ds by JumpMind.
the class RestService method nodeStatusImpl.
private NodeStatus nodeStatusImpl(ISymmetricEngine engine) {
NodeStatus status = new NodeStatus();
if (isRegistered(engine)) {
INodeService nodeService = engine.getNodeService();
org.jumpmind.symmetric.model.Node modelNode = nodeService.findIdentity();
NodeSecurity nodeSecurity = nodeService.findNodeSecurity(modelNode.getNodeId());
List<NodeHost> nodeHost = nodeService.findNodeHosts(modelNode.getNodeId());
status.setStarted(engine.isStarted());
status.setRegistered(nodeSecurity.getRegistrationTime() != null);
status.setInitialLoaded(nodeSecurity.getInitialLoadTime() != null);
status.setReverseInitialLoaded(nodeSecurity.getRevInitialLoadTime() != null);
status.setNodeId(modelNode.getNodeId());
status.setNodeGroupId(modelNode.getNodeGroupId());
status.setExternalId(modelNode.getExternalId());
status.setSyncUrl(modelNode.getSyncUrl());
status.setRegistrationUrl(engine.getParameterService().getRegistrationUrl());
status.setDatabaseType(modelNode.getDatabaseType());
status.setDatabaseVersion(modelNode.getDatabaseVersion());
status.setSyncEnabled(modelNode.isSyncEnabled());
status.setCreatedAtNodeId(modelNode.getCreatedAtNodeId());
status.setBatchToSendCount(engine.getOutgoingBatchService().countOutgoingBatchesUnsent());
status.setBatchInErrorCount(engine.getOutgoingBatchService().countOutgoingBatchesInError());
status.setDeploymentType(modelNode.getDeploymentType());
if (modelNode.getCreatedAtNodeId() == null) {
status.setRegistrationServer(true);
} else {
status.setRegistrationServer(false);
}
if (nodeHost != null && nodeHost.size() > 0) {
status.setLastHeartbeat(nodeHost.get(0).getHeartbeatTime());
}
status.setHeartbeatInterval(engine.getParameterService().getInt(ParameterConstants.HEARTBEAT_SYNC_ON_PUSH_PERIOD_SEC));
if (status.getHeartbeatInterval() == 0) {
status.setHeartbeatInterval(600);
}
} else {
throw new NotFoundException();
}
return status;
}
Aggregations