删除topic

This commit is contained in:
tangcongfa_v@didichuxing.com
2021-04-28 11:22:53 +08:00
parent b5901a2819
commit df3283f526
3 changed files with 30 additions and 1 deletions

View File

@@ -111,4 +111,9 @@ public interface TopicService {
* 创建topic
*/
Result addTopic(TopicAddDTO dto);
/**
* 删除topic
*/
Result deleteTopic(Long clusterId, String topicName);
}

View File

@@ -874,7 +874,21 @@ public class TopicServiceImpl implements TopicService {
return Result.buildFrom(rs);
}
private Result<TopicOffsetChangedEnum> checkTopicOffsetChanged(ClusterDO clusterDO,
@Override
public Result deleteTopic(Long clusterId, String topicName) {
Long physicalClusterId = logicalClusterMetadataManager.getPhysicalClusterId(clusterId);
if (ValidateUtils.isNull(physicalClusterId)) {
return Result.buildFrom(ResultStatus.CLUSTER_NOT_EXIST);
}
ClusterDO clusterDO = clusterService.getById(physicalClusterId);
if (ValidateUtils.isNull(clusterDO)) {
return Result.buildFrom(ResultStatus.CLUSTER_NOT_EXIST);
}
ResultStatus rs = adminService.deleteTopic(clusterDO, topicName, SpringTool.getUserName());
return Result.buildFrom(rs);
}
private Result<TopicOffsetChangedEnum> checkTopicOffsetChanged(ClusterDO clusterDO,
String topicName,
Map<TopicPartition, Long> endOffsetMap) {
if (ValidateUtils.isNull(clusterDO)

View File

@@ -350,4 +350,14 @@ public class NormalTopicController {
return topicService.addTopic(dto);
}
@ApiOperation(value = "删除topic",notes = "删除topic")
@RequestMapping(value = {"{clusterId}/topics/{topicName}/delete"},method = RequestMethod.DELETE)
@ResponseBody
public Result deleteTopic(@PathVariable Long clusterId,
@PathVariable String topicName) {
if (ValidateUtils.isNull(clusterId) || ValidateUtils.isNull(topicName)) {
return Result.buildFrom(ResultStatus.PARAM_ILLEGAL);
}
return topicService.deleteTopic(clusterId,topicName);
}
}