diff options
author | ZhangZihao <zhangzihao@chinamobile.com> | 2019-12-06 12:59:18 +0800 |
---|---|---|
committer | Guobiao Mo <guobiaomo@chinamobile.com> | 2019-12-12 00:30:54 +0000 |
commit | c0e9f58b04424975eebca0f7a5f256b2101902a7 (patch) | |
tree | 6f72ac14120d66baca2cd07e1e6abb0d4cf7a533 /components/datalake-handler | |
parent | c98fee65162522629f93c19c4221acd18c087824 (diff) |
Modified topic and db api function
table DB's PK is now integer, instead of string.
Change-Id: Id1ceb1bcd7a0455bc55e30c875e4398d12e8cf82
Issue-ID: DCAEGEN2-1715
Signed-off-by: ZhangZihao <zhangzihao@chinamobile.com>
Diffstat (limited to 'components/datalake-handler')
6 files changed, 31 insertions, 32 deletions
diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/DbController.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/DbController.java index 54f46e6f..49439e60 100644 --- a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/DbController.java +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/DbController.java @@ -71,14 +71,13 @@ public class DbController { //list all dbs @GetMapping("") @ResponseBody - @ApiOperation(value="Get all databases name") - public List<String> list() { + @ApiOperation(value="Get all database id") + public List<Integer> list() { Iterable<Db> ret = dbRepository.findAll(); - List<String> retString = new ArrayList<>(); + List<Integer> retString = new ArrayList<>(); for(Db db : ret) { - log.info(db.getName()); - retString.add(db.getName()); + retString.add(db.getId()); } return retString; @@ -165,16 +164,13 @@ public class DbController { //Show a db //the topics are missing in the return, since in we use @JsonBackReference on Db's topics //need to the the following method to retrieve the topic list - @GetMapping("/{dbName}") + @GetMapping("/{dbId}") @ResponseBody @ApiOperation(value="Get a database's details.") - public Db getDb(@PathVariable("dbName") String dbName, HttpServletResponse response) throws IOException { - Db db = dbRepository.findByName(dbName); - if (db == null) { - sendError(response, 404, DB_NOT_FOUND + dbName); - } - return db; - } + public DbConfig getDb(@PathVariable("dbId") int dbId, HttpServletResponse response) throws IOException { + Optional<Db> db = dbRepository.findById(dbId); + return db.isPresent() ? db.get().getDbConfig() : null; + } //Delete a db diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/domain/Topic.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/domain/Topic.java index 5d0c7625..0de004d4 100644 --- a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/domain/Topic.java +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/domain/Topic.java @@ -199,13 +199,13 @@ public class Topic { tConfig.setTtl(getTtl()); Set<Db> topicDb = getDbs(); - List<String> dbList = new ArrayList<>(); - List<String> enabledDbList = new ArrayList<>(); + List<Integer> dbList = new ArrayList<>(); + List<Integer> enabledDbList = new ArrayList<>(); if (topicDb != null) { for (Db item : topicDb) { - dbList.add(item.getName()); + dbList.add(item.getId()); if(item.isEnabled()) { - enabledDbList.add(item.getName()); + enabledDbList.add(item.getId()); } } } diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/dto/TopicConfig.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/dto/TopicConfig.java index 6a262ca8..1bdad2ec 100644 --- a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/dto/TopicConfig.java +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/dto/TopicConfig.java @@ -41,8 +41,8 @@ public class TopicConfig { private String name; private String login; private String password; - private List<String> sinkdbs; - private List<String> enabledSinkdbs;//only include enabled db + private List<Integer> sinkdbs; + private List<Integer> enabledSinkdbs;//only include enabled db private boolean enabled; private boolean saveRaw; private String dataFormat; diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/service/TopicService.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/service/TopicService.java index e13a5d60..2f0761ab 100644 --- a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/service/TopicService.java +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/service/TopicService.java @@ -160,10 +160,10 @@ public class TopicService { topic.setFlattenArrayPath(tConfig.getFlattenArrayPath()); if (tConfig.getSinkdbs() != null) { - for (String item : tConfig.getSinkdbs()) { - Db sinkdb = dbRepository.findByName(item); - if (sinkdb != null) { - relateDb.add(sinkdb); + for (int item : tConfig.getSinkdbs()) { + Optional<Db> sinkdb = dbRepository.findById(item); + if (sinkdb.isPresent()) { + relateDb.add(sinkdb.get()); } } if (!relateDb.isEmpty()) diff --git a/components/datalake-handler/feeder/src/test/java/org/onap/datalake/feeder/controller/DbControllerTest.java b/components/datalake-handler/feeder/src/test/java/org/onap/datalake/feeder/controller/DbControllerTest.java index 3dc836c3..c46a026b 100644 --- a/components/datalake-handler/feeder/src/test/java/org/onap/datalake/feeder/controller/DbControllerTest.java +++ b/components/datalake-handler/feeder/src/test/java/org/onap/datalake/feeder/controller/DbControllerTest.java @@ -44,6 +44,7 @@ import java.util.HashSet; import java.util.List; import java.util.Set; import java.util.Collections; +import java.util.Optional; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; @@ -120,10 +121,11 @@ public class DbControllerTest { assertEquals(null, db); //when(mockBindingResult.hasErrors()).thenReturn(false); String name = "Elecsticsearch"; - when(dbRepository.findByName(name)).thenReturn(TestUtil.newDb(name)); + int testId = 1234; + when(dbRepository.findById(testId)).thenReturn(Optional.of(TestUtil.newDb(name))); //db = dbController.updateDb(dbConfig, mockBindingResult, httpServletResponse); //assertEquals(200, db.getStatusCode()); - Db elecsticsearch = dbController.getDb("Elecsticsearch", httpServletResponse); + DbConfig elecsticsearch = dbController.getDb(testId, httpServletResponse); assertNotNull(elecsticsearch); } @@ -131,13 +133,14 @@ public class DbControllerTest { public void testGetAllDbs() throws IOException, IllegalAccessException, NoSuchFieldException { DbController dbController = new DbController(); String name = "Elecsticsearch"; + int testId = 1234; List<Db> dbs = new ArrayList<>(); dbs.add(TestUtil.newDb(name)); setAccessPrivateFields(dbController); when(dbRepository.findAll()).thenReturn(dbs); - List<String> list = dbController.list(); - for (String dbName : list) { - assertEquals("Elecsticsearch", dbName); + List<Integer> list = dbController.list(); + for (int id : list) { + assertNotEquals(1234, id); } //dbController.deleteDb("Elecsticsearch", httpServletResponse); } diff --git a/components/datalake-handler/feeder/src/test/java/org/onap/datalake/feeder/service/TopicServiceTest.java b/components/datalake-handler/feeder/src/test/java/org/onap/datalake/feeder/service/TopicServiceTest.java index 4eebcb47..eea47501 100644 --- a/components/datalake-handler/feeder/src/test/java/org/onap/datalake/feeder/service/TopicServiceTest.java +++ b/components/datalake-handler/feeder/src/test/java/org/onap/datalake/feeder/service/TopicServiceTest.java @@ -145,18 +145,18 @@ public class TopicServiceTest { tConfig.setMessageIdPath("1234"); tConfig.setAggregateArrayPath("1234"); tConfig.setFlattenArrayPath("1234"); - List<String> sinkdbs = new ArrayList<>(); - sinkdbs.add("Elasticsearch"); + List<Integer> sinkdbs = new ArrayList<>(); + sinkdbs.add(1234); tConfig.setSinkdbs(sinkdbs); Db db = new Db(); - db.setName("Elasticsearch"); + db.setId(1234); TopicName topicName = new TopicName(); topicName.setId("1234"); Optional<TopicName> optional = Optional.of(topicName); - when(dbRepository.findByName("Elasticsearch")).thenReturn(db); + when(dbRepository.findById(1234)).thenReturn(Optional.of(db)); when(topicNameRepository.findById(tConfig.getName())).thenReturn(optional); topicService.fillTopicConfiguration(tConfig); |