From e14f86dd16357ed211eeca8c6e02df668ebb8700 Mon Sep 17 00:00:00 2001 From: jackdaw Date: Wed, 16 Nov 2016 14:35:31 +0900 Subject: [PATCH 1/2] . --- .../controller/DiscoveryPortController.java | 24 ++++++++++++++ .../discoveryport/entity/DiscoveryPort.java | 26 +++++++-------- .../entity/ServiceScanHistory.java | 7 ++-- .../entity/DiscoveryService.java | 29 ++++++++--------- src/main/resources/database.properties | 2 +- .../DiscoveryServiceRepositoryTest.java | 32 +++++++++++++++---- 6 files changed, 82 insertions(+), 38 deletions(-) diff --git a/src/main/java/com/loafle/bridge/discoveryport/controller/DiscoveryPortController.java b/src/main/java/com/loafle/bridge/discoveryport/controller/DiscoveryPortController.java index b7db3d6..9d1bd9c 100644 --- a/src/main/java/com/loafle/bridge/discoveryport/controller/DiscoveryPortController.java +++ b/src/main/java/com/loafle/bridge/discoveryport/controller/DiscoveryPortController.java @@ -1,13 +1,19 @@ package com.loafle.bridge.discoveryport.controller; +import com.loafle.bridge.discoveryport.constant.PortType; import com.loafle.bridge.discoveryport.entity.DiscoveryPort; import com.loafle.bridge.discoveryport.repository.DiscoveryPortRepository; +import com.loafle.bridge.discoveryservice.entity.DiscoveryService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; +import javax.transaction.Transactional; +import java.util.ArrayList; +import java.util.List; + /** * Created by root on 16. 11. 15. */ @@ -22,4 +28,22 @@ public class DiscoveryPortController { public DiscoveryPort get(@PathVariable(value = "id") long id) { return repository.findOne(id); } + + @RequestMapping(value ="/index") + @Transactional + public void index() { + DiscoveryPort p = new DiscoveryPort(PortType.TCP,(short)12786); + + List ss = new ArrayList<>(); + + repository.save(p); + + ss.add(new DiscoveryService(p,PortType.TCP,"DNS")); + ss.add(new DiscoveryService(p,PortType.TCP,"TEST")); + ss.add(new DiscoveryService(p,PortType.TCP,"ABB")); + + p.setServices(ss); + + repository.save(p); + } } diff --git a/src/main/java/com/loafle/bridge/discoveryport/entity/DiscoveryPort.java b/src/main/java/com/loafle/bridge/discoveryport/entity/DiscoveryPort.java index 520b18b..d5816c4 100644 --- a/src/main/java/com/loafle/bridge/discoveryport/entity/DiscoveryPort.java +++ b/src/main/java/com/loafle/bridge/discoveryport/entity/DiscoveryPort.java @@ -1,6 +1,7 @@ package com.loafle.bridge.discoveryport.entity; import com.loafle.bridge.discoveryport.constant.PortType; +import com.loafle.bridge.discoveryservice.entity.DiscoveryService; import javax.persistence.*; import java.util.Date; @@ -33,21 +34,21 @@ public class DiscoveryPort { @OneToMany(mappedBy = "port") private List histories; -// @OneToMany(mappedBy = "port") -// private List services; -// -// public List getServices() { -// return services; -// } -// -// public void setServices(List services) { -// this.services = services; -// } + @OneToMany(mappedBy = "port" ,cascade = CascadeType.ALL) + private List services; + + public List getServices() { + return services; + } + + public void setServices(List services) { + this.services = services; + } @Column(columnDefinition = "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable = false, insertable = false, updatable = false) private Date createDate; - @Column(columnDefinition = "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable = false) + @Column(columnDefinition = "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable = false, insertable = false) private Date updateDate; @@ -99,9 +100,6 @@ public class DiscoveryPort { } public Date getUpdateDate() { - if (this.updateDate == null) { - this.updateDate = new Date(); - } return updateDate; } diff --git a/src/main/java/com/loafle/bridge/discoveryport/entity/ServiceScanHistory.java b/src/main/java/com/loafle/bridge/discoveryport/entity/ServiceScanHistory.java index 21e1150..d52cc1b 100644 --- a/src/main/java/com/loafle/bridge/discoveryport/entity/ServiceScanHistory.java +++ b/src/main/java/com/loafle/bridge/discoveryport/entity/ServiceScanHistory.java @@ -16,10 +16,14 @@ public class ServiceScanHistory { @GeneratedValue(strategy = GenerationType.AUTO) private long id; + @Column(columnDefinition = "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable = false, insertable = false, updatable = false) + private Date createDate; + @ManyToOne(fetch = FetchType.LAZY) @JoinColumn private DiscoveryPort port; + @Column(nullable = false) private String serviceName; @@ -27,8 +31,7 @@ public class ServiceScanHistory { @Enumerated(EnumType.STRING) private DirectionType direction; - @Column(columnDefinition = "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable = false, insertable = false, updatable = false) - private Date createDate; + @Lob @Column(nullable = false) diff --git a/src/main/java/com/loafle/bridge/discoveryservice/entity/DiscoveryService.java b/src/main/java/com/loafle/bridge/discoveryservice/entity/DiscoveryService.java index fc81375..3a4058a 100644 --- a/src/main/java/com/loafle/bridge/discoveryservice/entity/DiscoveryService.java +++ b/src/main/java/com/loafle/bridge/discoveryservice/entity/DiscoveryService.java @@ -1,6 +1,7 @@ package com.loafle.bridge.discoveryservice.entity; import com.loafle.bridge.discoveryport.constant.PortType; +import com.loafle.bridge.discoveryport.entity.DiscoveryPort; import javax.persistence.*; import java.util.Date; @@ -14,16 +15,16 @@ public class DiscoveryService { @GeneratedValue(strategy = GenerationType.AUTO) private long id; -// @ManyToOne -// @JoinColumn(nullable = false) -// private DiscoveryPort port; -// public DiscoveryPort getPort() { -// return port; -// } -// -// public void setPort(DiscoveryPort port) { -// this.port = port; -// } + @ManyToOne + @JoinColumn(nullable = false) + private DiscoveryPort port; + public DiscoveryPort getPort() { + return port; + } + + public void setPort(DiscoveryPort port) { + this.port = port; + } @Column(nullable = false) @Enumerated(EnumType.STRING) @@ -35,12 +36,13 @@ public class DiscoveryService { @Column(columnDefinition = "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable = false, insertable = false, updatable = false) private Date createDate; - @Column(columnDefinition = "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable = false) + @Column(columnDefinition = "TIMESTAMP DEFAULT CURRENT_TIMESTAMP", nullable = false ,insertable = false) private Date updateDate; public DiscoveryService() {} - public DiscoveryService(PortType t, String serviceName) { + public DiscoveryService(DiscoveryPort port,PortType t, String serviceName) { + this.port = port; this.portType = t; this.serviceName = serviceName; } @@ -63,9 +65,6 @@ public class DiscoveryService { } public Date getUpdateDate() { - if (this.updateDate == null) { - this.updateDate = new Date(); - } return updateDate; } diff --git a/src/main/resources/database.properties b/src/main/resources/database.properties index aa54933..8703c98 100644 --- a/src/main/resources/database.properties +++ b/src/main/resources/database.properties @@ -1,5 +1,5 @@ ## DataSource configuration -spring.datasource.url=jdbc:h2:file:~/data/test +spring.datasource.url=jdbc:h2:file:~/data/test;DB_CLOSE_ON_EXIT=FALSE spring.datasource.username=sa spring.datasource.password=qwe123 spring.datasource.driver-class-name=org.h2.Driver diff --git a/src/test/java/com/loafle/bridge/discoveryservice/repository/DiscoveryServiceRepositoryTest.java b/src/test/java/com/loafle/bridge/discoveryservice/repository/DiscoveryServiceRepositoryTest.java index 980e898..94eb6e6 100644 --- a/src/test/java/com/loafle/bridge/discoveryservice/repository/DiscoveryServiceRepositoryTest.java +++ b/src/test/java/com/loafle/bridge/discoveryservice/repository/DiscoveryServiceRepositoryTest.java @@ -2,6 +2,8 @@ package com.loafle.bridge.discoveryservice.repository; import com.loafle.bridge.Application; import com.loafle.bridge.discoveryport.constant.PortType; +import com.loafle.bridge.discoveryport.entity.DiscoveryPort; +import com.loafle.bridge.discoveryport.repository.DiscoveryPortRepository; import com.loafle.bridge.discoveryservice.entity.DiscoveryService; import org.apache.log4j.Logger; import org.junit.After; @@ -12,6 +14,8 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import javax.transaction.Transactional; +import java.util.ArrayList; import java.util.List; import static org.junit.Assert.assertEquals; @@ -25,14 +29,28 @@ import static org.junit.Assert.assertEquals; public class DiscoveryServiceRepositoryTest { @Autowired - private DiscoveryServiceRepository repo; + private DiscoveryPortRepository repo; + + + private Logger log = Logger.getLogger(this.getClass()); @Before + @Transactional public void Before() { - repo.save(new DiscoveryService(PortType.TLS,"HTTP")); - repo.save(new DiscoveryService(PortType.TCP,"WMI")); - repo.save(new DiscoveryService(PortType.UDP,"DNS")); + + DiscoveryPort p = new DiscoveryPort(PortType.TCP,(short)12786); + + List ss = new ArrayList<>(); + + ss.add(new DiscoveryService(p,PortType.TCP,"DNS")); + ss.add(new DiscoveryService(p,PortType.TCP,"TEST")); + ss.add(new DiscoveryService(p,PortType.TCP,"ABB")); + + p.setServices(ss); + + repo.save(p); + } @After @@ -41,8 +59,10 @@ public class DiscoveryServiceRepositoryTest { } @Test + @Transactional public void TestBefore() { - List l = repo.findAll(); - assertEquals(3, l.size()); + List ll = repo.findAll(); + assertEquals(1,ll.size()); + assertEquals(3,ll.get(0).getServices().size()); } } \ No newline at end of file From c782dcd20c41ebba9933440eefbf0feaf7137350 Mon Sep 17 00:00:00 2001 From: jackdaw Date: Wed, 16 Nov 2016 15:24:52 +0900 Subject: [PATCH 2/2] . --- .../discoveryport/{entity => }/DiscoveryPort.java | 10 +++++----- .../{controller => }/DiscoveryPortController.java | 6 ++---- .../{repository => }/DiscoveryPortRepository.java | 3 +-- .../discoveryport/{entity => }/ServiceScanHistory.java | 4 ++-- .../{constant => type}/DirectionType.java | 2 +- .../discoveryport/{constant => type}/PortType.java | 2 +- .../discoveryservice/entity/DiscoveryService.java | 4 ++-- .../repository/DiscoveryPortRepositoryTest.java | 9 +++++---- .../repository/DiscoveryServiceRepositoryTest.java | 6 +++--- 9 files changed, 22 insertions(+), 24 deletions(-) rename src/main/java/com/loafle/bridge/discoveryport/{entity => }/DiscoveryPort.java (91%) rename src/main/java/com/loafle/bridge/discoveryport/{controller => }/DiscoveryPortController.java (84%) rename src/main/java/com/loafle/bridge/discoveryport/{repository => }/DiscoveryPortRepository.java (76%) rename src/main/java/com/loafle/bridge/discoveryport/{entity => }/ServiceScanHistory.java (95%) rename src/main/java/com/loafle/bridge/discoveryport/{constant => type}/DirectionType.java (85%) rename src/main/java/com/loafle/bridge/discoveryport/{constant => type}/PortType.java (84%) diff --git a/src/main/java/com/loafle/bridge/discoveryport/entity/DiscoveryPort.java b/src/main/java/com/loafle/bridge/discoveryport/DiscoveryPort.java similarity index 91% rename from src/main/java/com/loafle/bridge/discoveryport/entity/DiscoveryPort.java rename to src/main/java/com/loafle/bridge/discoveryport/DiscoveryPort.java index d5816c4..a0033f4 100644 --- a/src/main/java/com/loafle/bridge/discoveryport/entity/DiscoveryPort.java +++ b/src/main/java/com/loafle/bridge/discoveryport/DiscoveryPort.java @@ -1,6 +1,6 @@ -package com.loafle.bridge.discoveryport.entity; +package com.loafle.bridge.discoveryport; -import com.loafle.bridge.discoveryport.constant.PortType; +import com.loafle.bridge.discoveryport.type.PortType; import com.loafle.bridge.discoveryservice.entity.DiscoveryService; import javax.persistence.*; @@ -29,7 +29,7 @@ public class DiscoveryPort { private PortType portType; @Column(nullable = false) - private short portNumber; + private int portNumber; @OneToMany(mappedBy = "port") private List histories; @@ -75,11 +75,11 @@ public class DiscoveryPort { this.portType = portType; } - public short getPortNumber() { + public int getPortNumber() { return portNumber; } - public void setPortNumber(short portNumber) { + public void setPortNumber(int portNumber) { this.portNumber = portNumber; } diff --git a/src/main/java/com/loafle/bridge/discoveryport/controller/DiscoveryPortController.java b/src/main/java/com/loafle/bridge/discoveryport/DiscoveryPortController.java similarity index 84% rename from src/main/java/com/loafle/bridge/discoveryport/controller/DiscoveryPortController.java rename to src/main/java/com/loafle/bridge/discoveryport/DiscoveryPortController.java index 9d1bd9c..7cbff39 100644 --- a/src/main/java/com/loafle/bridge/discoveryport/controller/DiscoveryPortController.java +++ b/src/main/java/com/loafle/bridge/discoveryport/DiscoveryPortController.java @@ -1,8 +1,6 @@ -package com.loafle.bridge.discoveryport.controller; +package com.loafle.bridge.discoveryport; -import com.loafle.bridge.discoveryport.constant.PortType; -import com.loafle.bridge.discoveryport.entity.DiscoveryPort; -import com.loafle.bridge.discoveryport.repository.DiscoveryPortRepository; +import com.loafle.bridge.discoveryport.type.PortType; import com.loafle.bridge.discoveryservice.entity.DiscoveryService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PathVariable; diff --git a/src/main/java/com/loafle/bridge/discoveryport/repository/DiscoveryPortRepository.java b/src/main/java/com/loafle/bridge/discoveryport/DiscoveryPortRepository.java similarity index 76% rename from src/main/java/com/loafle/bridge/discoveryport/repository/DiscoveryPortRepository.java rename to src/main/java/com/loafle/bridge/discoveryport/DiscoveryPortRepository.java index 537299d..6b8ba8a 100644 --- a/src/main/java/com/loafle/bridge/discoveryport/repository/DiscoveryPortRepository.java +++ b/src/main/java/com/loafle/bridge/discoveryport/DiscoveryPortRepository.java @@ -1,6 +1,5 @@ -package com.loafle.bridge.discoveryport.repository; +package com.loafle.bridge.discoveryport; -import com.loafle.bridge.discoveryport.entity.DiscoveryPort; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.rest.core.annotation.RepositoryRestResource; diff --git a/src/main/java/com/loafle/bridge/discoveryport/entity/ServiceScanHistory.java b/src/main/java/com/loafle/bridge/discoveryport/ServiceScanHistory.java similarity index 95% rename from src/main/java/com/loafle/bridge/discoveryport/entity/ServiceScanHistory.java rename to src/main/java/com/loafle/bridge/discoveryport/ServiceScanHistory.java index d52cc1b..57b61a0 100644 --- a/src/main/java/com/loafle/bridge/discoveryport/entity/ServiceScanHistory.java +++ b/src/main/java/com/loafle/bridge/discoveryport/ServiceScanHistory.java @@ -1,6 +1,6 @@ -package com.loafle.bridge.discoveryport.entity; +package com.loafle.bridge.discoveryport; -import com.loafle.bridge.discoveryport.constant.DirectionType; +import com.loafle.bridge.discoveryport.type.DirectionType; import javax.persistence.*; import java.util.Date; diff --git a/src/main/java/com/loafle/bridge/discoveryport/constant/DirectionType.java b/src/main/java/com/loafle/bridge/discoveryport/type/DirectionType.java similarity index 85% rename from src/main/java/com/loafle/bridge/discoveryport/constant/DirectionType.java rename to src/main/java/com/loafle/bridge/discoveryport/type/DirectionType.java index 9592114..ea7e5f6 100644 --- a/src/main/java/com/loafle/bridge/discoveryport/constant/DirectionType.java +++ b/src/main/java/com/loafle/bridge/discoveryport/type/DirectionType.java @@ -1,4 +1,4 @@ -package com.loafle.bridge.discoveryport.constant; +package com.loafle.bridge.discoveryport.type; /** * Created by root on 16. 11. 15. diff --git a/src/main/java/com/loafle/bridge/discoveryport/constant/PortType.java b/src/main/java/com/loafle/bridge/discoveryport/type/PortType.java similarity index 84% rename from src/main/java/com/loafle/bridge/discoveryport/constant/PortType.java rename to src/main/java/com/loafle/bridge/discoveryport/type/PortType.java index 62966b1..0fdac82 100644 --- a/src/main/java/com/loafle/bridge/discoveryport/constant/PortType.java +++ b/src/main/java/com/loafle/bridge/discoveryport/type/PortType.java @@ -1,4 +1,4 @@ -package com.loafle.bridge.discoveryport.constant; +package com.loafle.bridge.discoveryport.type; /** * Created by root on 16. 11. 15. diff --git a/src/main/java/com/loafle/bridge/discoveryservice/entity/DiscoveryService.java b/src/main/java/com/loafle/bridge/discoveryservice/entity/DiscoveryService.java index 3a4058a..b7c65ea 100644 --- a/src/main/java/com/loafle/bridge/discoveryservice/entity/DiscoveryService.java +++ b/src/main/java/com/loafle/bridge/discoveryservice/entity/DiscoveryService.java @@ -1,7 +1,7 @@ package com.loafle.bridge.discoveryservice.entity; -import com.loafle.bridge.discoveryport.constant.PortType; -import com.loafle.bridge.discoveryport.entity.DiscoveryPort; +import com.loafle.bridge.discoveryport.DiscoveryPort; +import com.loafle.bridge.discoveryport.type.PortType; import javax.persistence.*; import java.util.Date; diff --git a/src/test/java/com/loafle/bridge/discoveryport/repository/DiscoveryPortRepositoryTest.java b/src/test/java/com/loafle/bridge/discoveryport/repository/DiscoveryPortRepositoryTest.java index 01452d5..2c683af 100644 --- a/src/test/java/com/loafle/bridge/discoveryport/repository/DiscoveryPortRepositoryTest.java +++ b/src/test/java/com/loafle/bridge/discoveryport/repository/DiscoveryPortRepositoryTest.java @@ -1,10 +1,11 @@ package com.loafle.bridge.discoveryport.repository; import com.loafle.bridge.Application; -import com.loafle.bridge.discoveryport.constant.DirectionType; -import com.loafle.bridge.discoveryport.constant.PortType; -import com.loafle.bridge.discoveryport.entity.DiscoveryPort; -import com.loafle.bridge.discoveryport.entity.ServiceScanHistory; +import com.loafle.bridge.discoveryport.DiscoveryPort; +import com.loafle.bridge.discoveryport.DiscoveryPortRepository; +import com.loafle.bridge.discoveryport.ServiceScanHistory; +import com.loafle.bridge.discoveryport.type.DirectionType; +import com.loafle.bridge.discoveryport.type.PortType; import org.apache.log4j.Logger; import org.junit.After; import org.junit.Before; diff --git a/src/test/java/com/loafle/bridge/discoveryservice/repository/DiscoveryServiceRepositoryTest.java b/src/test/java/com/loafle/bridge/discoveryservice/repository/DiscoveryServiceRepositoryTest.java index 94eb6e6..e306abb 100644 --- a/src/test/java/com/loafle/bridge/discoveryservice/repository/DiscoveryServiceRepositoryTest.java +++ b/src/test/java/com/loafle/bridge/discoveryservice/repository/DiscoveryServiceRepositoryTest.java @@ -1,9 +1,9 @@ package com.loafle.bridge.discoveryservice.repository; import com.loafle.bridge.Application; -import com.loafle.bridge.discoveryport.constant.PortType; -import com.loafle.bridge.discoveryport.entity.DiscoveryPort; -import com.loafle.bridge.discoveryport.repository.DiscoveryPortRepository; +import com.loafle.bridge.discoveryport.DiscoveryPort; +import com.loafle.bridge.discoveryport.DiscoveryPortRepository; +import com.loafle.bridge.discoveryport.type.PortType; import com.loafle.bridge.discoveryservice.entity.DiscoveryService; import org.apache.log4j.Logger; import org.junit.After;