Commit 527c2ec0 by linxu
parents 6d986d16 8e8c413d
......@@ -13,7 +13,7 @@ import org.springframework.scheduling.annotation.EnableAsync;
public class MetadataRelationApplication {
public static void main(String[] args) {
// System.setProperty("es.set.netty.runtime.available.processors", "false");
// System.setProperty("es.set.netty.runtime.available.processors", "false");
SpringApplication.run(MetadataRelationApplication.class, args);
}
......
......@@ -7,13 +7,13 @@ import org.springframework.context.annotation.Configuration;
@Configuration
public class FeignClientConfig {
@Value("${security.authUser}")
private String authUser;
@Value("${security.authPwd}")
private String authPwd;
@Value("${security.authUser}")
private String authUser;
@Value("${security.authPwd}")
private String authPwd;
@Bean
public BasicAuthRequestInterceptor getBasicAuthRequestInterceptor() {
return new BasicAuthRequestInterceptor(authUser, authPwd);
......
......@@ -8,28 +8,28 @@ import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class Neo4jConfig {
public class Neo4jConfig {
@Value("${spring.data.neo4j.url}")
private String neo4jUrl;
private String neo4jUrl;
@Value("${spring.data.neo4j.username}")
private String neo4jUsername;
private String neo4jUsername;
@Value("${spring.data.neo4j.password}")
private String neo4jPassword;
private String neo4jPassword;
private static Driver driver;
private static Driver driver;
@Bean
public Driver getNeo4jConnection() {
if(driver!=null){
if (driver != null) {
}else {
driver = GraphDatabase.driver(neo4jUrl, AuthTokens.basic(neo4jUsername, neo4jPassword));
} else {
driver = GraphDatabase.driver(neo4jUrl, AuthTokens.basic(neo4jUsername, neo4jPassword));
}
return driver;
}
......
......@@ -5,7 +5,7 @@ import org.neo4j.ogm.annotation.Property;
import org.neo4j.ogm.annotation.RelationshipEntity;
import org.neo4j.ogm.annotation.StartNode;
public class BaseRelationship <S extends BaseNode, E extends BaseNode> extends AllBaseEntity {
public class BaseRelationship<S extends BaseNode, E extends BaseNode> extends AllBaseEntity {
@Property
private String name; //关系名称
......@@ -15,13 +15,14 @@ public class BaseRelationship <S extends BaseNode, E extends BaseNode> extends A
@EndNode
private E end;
public BaseRelationship(){
public BaseRelationship() {
}
public BaseRelationship(String name,S start,E end){
this.name =name;
this.start=start;
this.end=end;
public BaseRelationship(String name, S start, E end) {
this.name = name;
this.start = start;
this.end = end;
}
@Override
......
......@@ -3,5 +3,5 @@ package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.RelationshipEntity;
@RelationshipEntity(type = "Composition")
public class CompositionRelation extends BaseRelationship{
public class CompositionRelation extends BaseRelationship {
}
......@@ -3,5 +3,5 @@ package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.RelationshipEntity;
@RelationshipEntity(type = "Dependency")
public class DependencyRelation extends BaseRelationship{
public class DependencyRelation extends BaseRelationship {
}
......@@ -3,6 +3,6 @@ package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.RelationshipEntity;
@RelationshipEntity(type = "Execute")
public class ExecuteRelation extends BaseRelationship{
public class ExecuteRelation extends BaseRelationship {
}
......@@ -3,5 +3,5 @@ package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.RelationshipEntity;
@RelationshipEntity(type = "Input")
public class InputRelation extends BaseRelationship{
public class InputRelation extends BaseRelationship {
}
......@@ -6,6 +6,7 @@ import org.neo4j.ogm.annotation.Relationship;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
@NodeEntity(label = "MetaData")
public class MetaData extends BaseNode {
public String getMetadataId() {
......@@ -77,15 +78,15 @@ public class MetaData extends BaseNode {
}
public void addRelation(DependencyRelation friendshipRelation){
if(this.dependencyRelationList == null){
public void addRelation(DependencyRelation friendshipRelation) {
if (this.dependencyRelationList == null) {
dependencyRelationList = new ArrayList<DependencyRelation>();
}
dependencyRelationList.add(friendshipRelation);
}
public List<DependencyRelation> getDependencyRelationList() {
if(this.dependencyRelationList == null){
if (this.dependencyRelationList == null) {
dependencyRelationList = new ArrayList<DependencyRelation>();
}
return dependencyRelationList;
......@@ -94,12 +95,13 @@ public class MetaData extends BaseNode {
public void setDependencyRelationList(List<DependencyRelation> dependencyRelationList) {
this.dependencyRelationList = dependencyRelationList;
}
@Relationship(type = "Dependency_RELATION")
private List<DependencyRelation> dependencyRelationList;
public List<DependencyRelation> getCompositionRelationList() {
if(this.compositionRelationList == null){
if (this.compositionRelationList == null) {
compositionRelationList = new ArrayList<DependencyRelation>();
}
return compositionRelationList;
......@@ -110,7 +112,7 @@ public class MetaData extends BaseNode {
}
@Relationship(type = "Composition_RELATION")
private List<DependencyRelation> compositionRelationList ;
private List<DependencyRelation> compositionRelationList;
public String getNode() {
......
......@@ -3,5 +3,5 @@ package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.RelationshipEntity;
@RelationshipEntity(type = "Output")
public class OutputRelation extends BaseRelationship{
public class OutputRelation extends BaseRelationship {
}
......@@ -2,10 +2,10 @@ package com.keymobile.metadata.metadataRelation.pojo;
public class RelationMongo {
private String id;
private String source;
private String target;
private String type;
private String id;
private String source;
private String target;
private String type;
public String getId() {
return id;
......
......@@ -18,7 +18,7 @@ public class TempNode extends BaseNode {
private String catalogName;
private Long parentId;
private Long parentId;
public String getEtlScriptId() {
return etlScriptId;
......
......@@ -9,8 +9,6 @@ public class Edge {
private String type;
public String getEdgeId() {
return edgeId;
}
......
......@@ -6,6 +6,7 @@ public class MetaModel {
private String cnName;
private String description;
public String getModelName() {
return modelName;
}
......
......@@ -15,7 +15,8 @@ public class Node {
private String icon;
private String type;
private String type;
public String getType() {
return type;
}
......
......@@ -9,7 +9,7 @@ import java.util.Map;
public class ReturnReslult {
private List<Edge> edges= new ArrayList<>();
private List<Edge> edges = new ArrayList<>();
private List<Node> nodes = new ArrayList<>();
......@@ -21,8 +21,7 @@ public class ReturnReslult {
this.metaModelMap = metaModelMap;
}
private Map<String,MetaModel> metaModelMap = new HashedMap();
private Map<String, MetaModel> metaModelMap = new HashedMap();
public List<Edge> getEdges() {
......
......@@ -9,6 +9,6 @@ import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface BaseRelationshipRepository extends Neo4jRepository<BaseRelationship,Long> {
public interface BaseRelationshipRepository extends Neo4jRepository<BaseRelationship, Long> {
}
......@@ -9,7 +9,7 @@ import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface CompositionRelationRespository extends Neo4jRepository<CompositionRelation,Long> {
public interface CompositionRelationRespository extends Neo4jRepository<CompositionRelation, Long> {
@Query("MATCH (n:MetaData{metadataId: $startId}),(n1:MetaData{metadataId: $endId}),p=(n)-[]-(n1) return p")
List<CompositionRelation> findCompositionRelationship(@Param("startId") String startId, @Param("endId") String endId);
......@@ -17,6 +17,7 @@ public interface CompositionRelationRespository extends Neo4jRepository<Composit
/**
* 添加组合关系
*
* @param sourceId
* @param targetId
* @return
......
......@@ -9,10 +9,11 @@ import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface ExecuteRelationRepository extends Neo4jRepository<ExecuteRelation,Long> {
public interface ExecuteRelationRepository extends Neo4jRepository<ExecuteRelation, Long> {
/**
* 添加excute关系
*
* @param sourceId
* @param targetId
* @return
......@@ -24,5 +25,4 @@ public interface ExecuteRelationRepository extends Neo4jRepository<ExecuteRelati
List<ExecuteRelation> findExecuteRelationship(@Param("startId") String startId, @Param("endId") String endId);
}
......@@ -9,7 +9,7 @@ import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface InputRelationReRepository extends Neo4jRepository<InputRelation,Long> {
public interface InputRelationReRepository extends Neo4jRepository<InputRelation, Long> {
@Query("MATCH (n:MetaData{metadataId: $startId}),(n1:MetaData{metadataId: $endId}),p=(n)-[]-(n1) return p")
......@@ -18,6 +18,7 @@ public interface InputRelationReRepository extends Neo4jRepository<InputRelation
/**
* 添加input关系
*
* @param sourceId
* @param targetId
* @return
......
......@@ -10,30 +10,30 @@ import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface MetadataRepository extends Neo4jRepository<MetaData,Long> {
public interface MetadataRepository extends Neo4jRepository<MetaData, Long> {
MetaData findMetadataByName(String name);
@Query("match (n:MetaData ) where n.metadataId =~{modelName} return n")
List<MetaData> findMetaDataByModelName(@Param("modelName") String dataName );
List<MetaData> findMetaDataByModelName(@Param("modelName") String dataName);
//MATCH p=(a:MetaData{metadataId:"Table=1=b148ad31504d4487bd81ecebbc7522c3"})-[r:Composition]->() -[*]->()<-[r1:Composition]-(b:MetaData{metadataId:"Table=368=600efbf1fb4a4bd1910dbc1b567d6691"})
//MATCH p=(a:MetaData{metadataId:"Table=1=b148ad31504d4487bd81ecebbc7522c3"})-[r:Composition]->() -[*]->()<-[r1:Composition]-(b:MetaData{metadataId:"Table=368=600efbf1fb4a4bd1910dbc1b567d6691"})
//RETURN p
MetaData findMetaDataByMetadataId(String id);
/**
* @Query("MATCH (n : MetaData { metadataId : $startId }), (n1 : MetaData { metadataId : $endId }), p=(n)-[]-(n1) return p")
* List<OutputRelation> findOutputRelationship(@Param("startId") String startId, @Param("endId") String endId);
* @param dataName
* @return
* @Query("MATCH (n : MetaData { metadataId : $startId }), (n1 : MetaData { metadataId : $endId }), p=(n)-[]-(n1) return p")
* List<OutputRelation> findOutputRelationship(@Param("startId") String startId, @Param("endId") String endId);
*/
@Query("match data=(na:MetaData{name:{0}})<-[rel*1..3]->(nb:MetaData) return data")
List<MetaData> findMetaData(@Param("dataName") String dataName , @Param("n") int n );
List<MetaData> findMetaData(@Param("dataName") String dataName, @Param("n") int n);
@Query("match (data:MetaData{system:{parentName}}) return data")
List<MetaData> findMetaDataByParentName(@Param("parentName") String parentName );
List<MetaData> findMetaDataByParentName(@Param("parentName") String parentName);
@Query("MATCH p=(n:MetaData {metadataId:{parentId}})-[r:Composition]->(m) RETURN m")
List<MetaData> findMetaDataByParentId(@Param("parentId") String parentId);
......
......@@ -9,7 +9,7 @@ import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface OutputRelationRepository extends Neo4jRepository<OutputRelation,Long> {
public interface OutputRelationRepository extends Neo4jRepository<OutputRelation, Long> {
@Query("MATCH (n:MetaData{metadataId: $startId}),(n1:MetaData{metadataId: $endId}),p=(n)-[]-(n1) return p")
List<OutputRelation> findOutputRelationship(@Param("startId") String startId, @Param("endId") String endId);
......@@ -17,6 +17,7 @@ public interface OutputRelationRepository extends Neo4jRepository<OutputRelation
/**
* 添加output关系
*
* @param sourceId
* @param targetId
* @return
......
......@@ -20,52 +20,51 @@ public interface IBaseRelationshipService {
List<String> findAllRelationTypes();
/**
* @desc 添加关系
* @param relationship
* @desc 添加关系
*/
BaseRelationship addRelationship(BaseRelationship relationship);
/**
* @desc 添加关系
* @param name 关系名称
* @param name 关系名称
* @param startNode 开始节点
* @param endNode 结束节点
* @param endNode 结束节点
* @desc 添加关系
*/
BaseRelationship addRelationship(String name, BaseNode startNode, BaseNode endNode);
/**
* @desc 删除关系
* @param id
* @desc 删除关系
*/
boolean deleteRelationshipById(Long id);
/**
* @desc 获取关系 根据开始节点名称和关系名称
* @param name 关系名称
* @param name 关系名称
* @param startName 开始节点名称
* @param endName 结束节点名称
* @param endName 结束节点名称
* @desc 获取关系 根据开始节点名称和关系名称
*/
List<BaseRelationship> findMetadataRelationshipByAllName(String name, String startName, String endName);
List<BaseRelationship> findMetadataRelationshipByAllName(String name, String startName, String endName);
/**
* @desc 获取关系 根据节点名称和关系名称
* @param name 关系名称
* @param name 关系名称
* @param startName 开始节点名称
* @desc 获取关系 根据节点名称和关系名称
*/
List<BaseRelationship> findMetadataRelationshipByStartNameAndName(String name, String startName);
/**
* @desc 获取关系 根据节点名称和关系名称
* @param startName 开始节点名称
* @desc 获取关系 根据节点名称和关系名称
*/
List<BaseRelationship> findMetadataRelationshipByStartName(String startName);
List<BaseRelationship> findMetadataRelationshipByStartName(String startName);
/**
* @desc 根据节点名称,获取所有有关系的节点
* @param startName 开始节点名称
* @desc 根据节点名称, 获取所有有关系的节点
*/
List<BaseNode> findMetadataByStartName(String startName);
}
......@@ -9,66 +9,68 @@ import java.util.List;
public interface IMetadataService {
List<MetaData> findNodeByName (String dataName);
List<MetaData> findNodeByName(String dataName);
ReturnReslult findNodeByDataId (String metadataId, int depth);
ReturnReslult findNodeByDataId(String metadataId, int depth);
ReturnReslult findResultByModelName (String modelName);
ReturnReslult findResultByModelName(String modelName);
List<MetaData> findChildrenByParentId(String parentId);
List<MetaData> findChildrenByParentName(String parentName);
List<MetaData> finAllMetaData();
/**
* 添加元数据对象
*
* @param metaData
*/
MetaData addMetaData(MetaData metaData);
/**
* @desc 根据名称添加元数据
* @param name
* @desc 根据名称添加元数据
*/
MetaData addMetadataByName(String name);
void syschroRelationFromMongo(String catalogName);
/**
* 添加元数据对象
*
* @param id
*/
MetaData getMetaDataById(Long id);
/**
* @desc 根据名称获取元数据
* @param name
* @desc 根据名称获取元数据
*/
MetaData getMetadataByName(String name);
/**
* @desc 根据ID删除人物节点
* @param id
* @desc 根据ID删除人物节点
*/
boolean deleteMetadata(Long id);
/**
* @desc 添加元数据的关系
* @param name 关系名称
* @param name 关系名称
* @param startName 开始节点名称
* @param endName 结束节点名称
* @param endName 结束节点名称
* @return BaseRelationship
* @desc 添加元数据的关系
*/
BaseRelationship addMetadataRelationship(String name, String startName, String endName);
/**
* @desc 获取任务关系
* @param name 关系名称
* @param name 关系名称
* @param startName 开始节点名称
* @param endName 结束节点名称
* @param endName 结束节点名称
* @desc 获取任务关系
*/
List<BaseRelationship> getMetadataRelationship(String name, String startName, String endName);
......
......@@ -26,9 +26,9 @@ public class BaseRelationshipServiceImpl implements IBaseRelationshipService {
@Autowired
BaseRelationshipRepository refRepository;
@Autowired
private CompositionRelationRespository compositionRelationRespository ;
private CompositionRelationRespository compositionRelationRespository;
@Autowired
private InputRelationReRepository inputRelationReRepository ;
private InputRelationReRepository inputRelationReRepository;
@Autowired
private OutputRelationRepository outputRelationRepository;
@Autowired
......@@ -37,30 +37,30 @@ public class BaseRelationshipServiceImpl implements IBaseRelationshipService {
@Override
public List<BaseRelationship> findAllRelation() {
List<CompositionRelation> compositionRelationList = (List<CompositionRelation>)compositionRelationRespository.findAll();
List<CompositionRelation> compositionRelationList = (List<CompositionRelation>) compositionRelationRespository.findAll();
List<InputRelation> inputRelationList = (List<InputRelation>)inputRelationReRepository.findAll();
List<InputRelation> inputRelationList = (List<InputRelation>) inputRelationReRepository.findAll();
List<OutputRelation> outputRelationList = (List<OutputRelation>)outputRelationRepository.findAll();
List<OutputRelation> outputRelationList = (List<OutputRelation>) outputRelationRepository.findAll();
List<ExecuteRelation> executeRelationList = (List<ExecuteRelation>)executeRelationRepository.findAll();
List<ExecuteRelation> executeRelationList = (List<ExecuteRelation>) executeRelationRepository.findAll();
List<BaseRelationship> baseRelationshipList = new ArrayList<>();
for(CompositionRelation compositionRelation:compositionRelationList ){
for (CompositionRelation compositionRelation : compositionRelationList) {
compositionRelation.setName("组合");
baseRelationshipList.add(compositionRelation);
}
for(InputRelation inputRelation:inputRelationList ){
for (InputRelation inputRelation : inputRelationList) {
inputRelation.setName("流入");
baseRelationshipList.add(inputRelation);
}
for(OutputRelation outputRelation:outputRelationList ){
for (OutputRelation outputRelation : outputRelationList) {
outputRelation.setName("流出");
baseRelationshipList.add(outputRelation);
}
for(ExecuteRelation executeRelation:executeRelationList ){
for (ExecuteRelation executeRelation : executeRelationList) {
executeRelation.setName("执行");
baseRelationshipList.add(executeRelation);
}
......@@ -76,8 +76,8 @@ public class BaseRelationshipServiceImpl implements IBaseRelationshipService {
Neo4jConfig neo4jConfig = new Neo4jConfig();
Driver neo4jConnection = neo4jConfig.getNeo4jConnection();
Session session = neo4jConnection.session();
String cypher =" MATCH (n:MetaData)-[r]->() RETURN id(STARTNODE(r)) as startId,id(endNode(r)) as endId, type(r) as name";
logger.info("cypher:"+cypher);
String cypher = " MATCH (n:MetaData)-[r]->() RETURN id(STARTNODE(r)) as startId,id(endNode(r)) as endId, type(r) as name";
logger.info("cypher:" + cypher);
StatementResult result = session.run(cypher);
while (result.hasNext()) {
......@@ -86,13 +86,13 @@ public class BaseRelationshipServiceImpl implements IBaseRelationshipService {
Long endId = record.get("endId").asLong();
String name = record.get("name").asString();
if(name.equals("Input")){
if (name.equals("Input")) {
name = "流入";
}else if(name.equals("Output")){
} else if (name.equals("Output")) {
name = "流出";
} else if(name.equals("Composition")){
} else if (name.equals("Composition")) {
name = "组合";
} else if(name.equals("Execute")){
} else if (name.equals("Execute")) {
name = "执行";
}
......@@ -101,7 +101,7 @@ public class BaseRelationshipServiceImpl implements IBaseRelationshipService {
// } else {
// name = startId + "-" + name + "-" + endId;
// }
if(!relationTypes.contains(name)){
if (!relationTypes.contains(name)) {
relationTypes.add(name);
}
}
......@@ -116,7 +116,7 @@ public class BaseRelationshipServiceImpl implements IBaseRelationshipService {
@Override
public BaseRelationship addRelationship(String name, BaseNode startNode, BaseNode endNode) {
BaseRelationship relationship = new BaseRelationship(name,startNode,endNode);
BaseRelationship relationship = new BaseRelationship(name, startNode, endNode);
return refRepository.save(relationship);
}
......@@ -127,7 +127,7 @@ public class BaseRelationshipServiceImpl implements IBaseRelationshipService {
}
@Override
public List<BaseRelationship> findMetadataRelationshipByAllName(String name, String startName, String endName) {
public List<BaseRelationship> findMetadataRelationshipByAllName(String name, String startName, String endName) {
// List<BaseRelationship> ships = refRepository.findRelationshipByAllName(name,startName,endName);
// if(ships != null && ships.size()>0) {
// return ships;
......@@ -136,7 +136,7 @@ public class BaseRelationshipServiceImpl implements IBaseRelationshipService {
}
@Override
public List<BaseRelationship> findMetadataRelationshipByStartNameAndName(String name, String startName) {
public List<BaseRelationship> findMetadataRelationshipByStartNameAndName(String name, String startName) {
// List<BaseRelationship> ships = refRepository.findRelationshipByStartNameAndName(name,startName);
// if(ships != null && ships.size()>0) {
// return ships;
......@@ -152,6 +152,7 @@ public class BaseRelationshipServiceImpl implements IBaseRelationshipService {
// }
return null;
}
@Override
public List<BaseNode> findMetadataByStartName(String startName) {
// List<BaseNode> nodes = refRepository.findBaseNodeByStartName(startName);
......
......@@ -27,26 +27,27 @@ public class MongoDbServiceImpl {
*
* @return
*/
public List<RelationMongo> findAll(String catalogName ) {
public List<RelationMongo> findAll(String catalogName) {
logger.info("--------------------->[MongoDB find start]");
try {
return mongoTemplate.findAll(RelationMongo.class,"md_relation_"+catalogName);
}catch (Exception e){
return mongoTemplate.findAll(RelationMongo.class, "md_relation_" + catalogName);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
/**
* 查询所有
*
* @return
*/
public List<RelationMongo> findAll( ) {
public List<RelationMongo> findAll() {
logger.info("--------------------->[MongoDB find start]");
try {
return mongoTemplate.findAll(RelationMongo.class,"md_relational");
}catch (Exception e){
return mongoTemplate.findAll(RelationMongo.class, "md_relational");
} catch (Exception e) {
e.printStackTrace();
return null;
}
......@@ -55,7 +56,7 @@ public class MongoDbServiceImpl {
public void saveTempRelation(List<JSONObject> list, String catalogName) {
if (CollectionUtils.isEmpty(list)) {
return ;
return;
}
list.forEach(o -> mongoTemplate.save(o, PREFIX_MD_RELATION_TEMP_NODE + catalogName));
}
......
......@@ -18,7 +18,7 @@ public class Neo4jTool {
Object value = map.get(key);
// 得到property对应的setter方法
Method setter = property.getWriteMethod();
if(setter!=null) {
if (setter != null) {
try {
setter.invoke(obj, value);
} catch (Exception e) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment