use of com.alibaba.otter.manager.biz.common.exceptions.ManagerException in project otter by alibaba.
the class NodeServiceImpl method doToModel.
/**
* 用于DO对象转化为Model对象
*
* @param nodeDo
* @return Node
*/
private Node doToModel(NodeDO nodeDo) {
Node node = new Node();
try {
node.setId(nodeDo.getId());
node.setIp(nodeDo.getIp());
node.setName(nodeDo.getName());
node.setPort(nodeDo.getPort());
node.setDescription(nodeDo.getDescription());
node.setStatus(nodeDo.getStatus());
// 处理下zk集群
NodeParameter parameter = nodeDo.getParameters();
if (parameter.getZkCluster() != null) {
AutoKeeperCluster zkCluster = autoKeeperClusterService.findAutoKeeperClusterById(parameter.getZkCluster().getId());
parameter.setZkCluster(zkCluster);
}
node.setParameters(parameter);
node.setGmtCreate(nodeDo.getGmtCreate());
node.setGmtModified(nodeDo.getGmtModified());
} catch (Exception e) {
logger.error("ERROR ## change the node Do to Model has an exception");
throw new ManagerException(e);
}
return node;
}
use of com.alibaba.otter.manager.biz.common.exceptions.ManagerException in project otter by alibaba.
the class NodeServiceImpl method modelToDo.
/**
* 用于Model对象转化为DO对象
*
* @param node
* @return NodeDO
*/
private NodeDO modelToDo(Node node) {
NodeDO nodeDo = new NodeDO();
try {
nodeDo.setId(node.getId());
nodeDo.setIp(node.getIp());
nodeDo.setName(node.getName());
nodeDo.setPort(node.getPort());
nodeDo.setDescription(node.getDescription());
nodeDo.setStatus(node.getStatus());
nodeDo.setParameters(node.getParameters());
nodeDo.setGmtCreate(node.getGmtCreate());
nodeDo.setGmtModified(node.getGmtModified());
} catch (Exception e) {
logger.error("ERROR ## change the node Model to Do has an exception");
throw new ManagerException(e);
}
return nodeDo;
}
use of com.alibaba.otter.manager.biz.common.exceptions.ManagerException in project otter by alibaba.
the class PipelineServiceImpl method listByChannelIdsWithoutColumn.
public List<Pipeline> listByChannelIdsWithoutColumn(Long... channelIds) {
Assert.assertNotNull(channelIds);
List<Pipeline> pipelines = new ArrayList<Pipeline>();
try {
List<PipelineDO> pipelineDos = pipelineDao.listByChannelIds(channelIds);
if (pipelineDos.isEmpty()) {
logger.debug("DEBUG ## query pipeline by channelId:" + channelIds + " return null.");
return pipelines;
}
pipelines = doToModelWithoutColumn(pipelineDos);
} catch (Exception e) {
logger.error("ERROR ## query pipelines by channelIds:" + channelIds.toString() + " has an exception!");
throw new ManagerException(e);
}
return pipelines;
}
use of com.alibaba.otter.manager.biz.common.exceptions.ManagerException in project otter by alibaba.
the class PipelineServiceImpl method listByChannelIds.
/**
* 更具channelId找到所属所有pipeline
*/
public List<Pipeline> listByChannelIds(Long... channelId) {
Assert.assertNotNull(channelId);
List<Pipeline> pipelines = new ArrayList<Pipeline>();
try {
List<PipelineDO> pipelineDos = pipelineDao.listByChannelIds(channelId);
if (pipelineDos.isEmpty()) {
logger.debug("DEBUG ## query pipeline by channelId:" + channelId + " return null.");
return pipelines;
}
pipelines = doToModel(pipelineDos);
} catch (Exception e) {
logger.error("ERROR ## query pipelines by channelIds:" + channelId.toString() + " has an exception!");
throw new ManagerException(e);
}
return pipelines;
}
use of com.alibaba.otter.manager.biz.common.exceptions.ManagerException in project otter by alibaba.
the class PipelineServiceImpl method doToModelWithoutColumn.
private Pipeline doToModelWithoutColumn(PipelineDO pipelineDo) {
Pipeline pipeline = new Pipeline();
try {
pipeline.setId(pipelineDo.getId());
pipeline.setName(pipelineDo.getName());
pipeline.setParameters(pipelineDo.getParameters());
pipeline.setDescription(pipelineDo.getDescription());
pipeline.setGmtCreate(pipelineDo.getGmtCreate());
pipeline.setGmtModified(pipelineDo.getGmtModified());
pipeline.setChannelId(pipelineDo.getChannelId());
pipeline.getParameters().setMainstemClientId(pipeline.getId().shortValue());
// 组装DatamediaPair
List<DataMediaPair> pairs = dataMediaPairService.listByPipelineIdWithoutColumn(pipelineDo.getId());
Collections.sort(pairs, new DataMediaPairComparable());
pipeline.setPairs(pairs);
// 组装Node
List<PipelineNodeRelationDO> relations = pipelineNodeRelationDao.listByPipelineIds(pipelineDo.getId());
List<Long> totalNodeIds = new ArrayList<Long>();
for (PipelineNodeRelationDO relation : relations) {
Long nodeId = relation.getNodeId();
if (!totalNodeIds.contains(nodeId)) {
totalNodeIds.add(nodeId);
}
}
List<Node> totalNodes = nodeService.listByIds(totalNodeIds.toArray(new Long[totalNodeIds.size()]));
List<Node> selectNodes = new ArrayList<Node>();
List<Node> extractNodes = new ArrayList<Node>();
List<Node> loadNodes = new ArrayList<Node>();
for (Node node : totalNodes) {
for (PipelineNodeRelationDO relation : relations) {
if (node.getId().equals(relation.getNodeId())) {
if (relation.getLocation().isSelect()) {
selectNodes.add(node);
} else if (relation.getLocation().isExtract()) {
extractNodes.add(node);
} else if (relation.getLocation().isLoad()) {
loadNodes.add(node);
}
}
}
}
pipeline.setSelectNodes(selectNodes);
pipeline.setExtractNodes(extractNodes);
pipeline.setLoadNodes(loadNodes);
} catch (Exception e) {
logger.error("ERROR ## change the pipeline Do to Model has an exception");
throw new ManagerException(e);
}
return pipeline;
}
Aggregations