public static TopicBuilder topic(String groupName, String topicName) { return new TopicBuilder(new TopicName(groupName, topicName)); }
public static TopicName fromQualifiedName(String qualifiedName) { if (Strings.isNullOrEmpty(qualifiedName)) { return null; } int index = qualifiedName.lastIndexOf(GROUP_SEPARATOR); if (index == -1) { throw new IllegalArgumentException("Missing group"); } String groupName = qualifiedName.substring(0, index); String topicName = qualifiedName.substring(index + 1, qualifiedName.length()); return new TopicName(groupName, topicName); }
public static TopicBuilder topic(String groupName, String topicName) { return new TopicBuilder(new TopicName(groupName, topicName)); }
public void updateTopic(String group, String topic, PatchData patch) { updateTopic(new TopicName(group, topic), patch); }
@Override public List<Topic> listTopics(String groupName) { return listTopicNames(groupName).stream() .map(name -> getTopicDetails(new TopicName(groupName, name), true)) .filter(Optional::isPresent) .map(Optional::get) .collect(Collectors.toList()); }
public void updateTopic(String group, String topic, PatchData patch) { updateTopic(new TopicName(group, topic), patch); }
public List<String> listQualifiedTopicNames(String groupName) { return topicRepository.listTopicNames(groupName).stream() .map(topicName -> new TopicName(groupName, topicName).qualifiedName()) .collect(toList()); }
@Override public void start() { for(String groupName : groupRepository.listGroupNames()) { for(String topicName : topicRepository.listTopicNames(groupName)) { for(Subscription subscription : subscriptionRepository.listSubscriptions(new TopicName(groupName, topicName))) { subscriptions.put(subscription.getQualifiedName(), subscription); } } } } }
@Override public void start() { for(String groupName : groupRepository.listGroupNames()) { for(String topicName : topicRepository.listTopicNames(groupName)) { for(Subscription subscription : subscriptionRepository.listSubscriptions(new TopicName(groupName, topicName))) { subscriptions.put(subscription.getQualifiedName(), subscription); } } } } }
@Test public void shouldReturnAbsentIfThereAreNoUndeliveredMessagesForGivenSubscription() { // when Optional<SentMessageTrace> result = log.last(new TopicName("unknown", "topic"), "subscription"); // then assertThat(result.isPresent()).isFalse(); }
private static TopicName escapedTopicName(String qualifiedTopicName) { TopicName topicName = fromQualifiedName(qualifiedTopicName); return new TopicName( escapeMetricsReplacementChar(topicName.getGroupName()), topicName.getName() ); }
@Test public void shouldConvertQualifiedName() { // given TopicName topicName = new TopicName("group1", "topic1"); // when & then assertThat(TopicName.fromQualifiedName(topicName.qualifiedName())).isEqualTo(topicName); }