congrats Icon
New! Announcing Tabnine Chat Beta
Learn More
Tabnine Logo
SubscriptionRepository.ensureSubscriptionExists
Code IndexAdd Tabnine to your IDE (free)

How to use
ensureSubscriptionExists
method
in
pl.allegro.tech.hermes.domain.subscription.SubscriptionRepository

Best Java code snippets using pl.allegro.tech.hermes.domain.subscription.SubscriptionRepository.ensureSubscriptionExists (Showing top 8 results out of 315)

origin: allegro/hermes

public SubscriptionMetrics getSubscriptionMetrics(TopicName topicName, String subscriptionName) {
  subscriptionRepository.ensureSubscriptionExists(topicName, subscriptionName);
  return metricsRepository.loadMetrics(topicName, subscriptionName);
}
origin: allegro/hermes

@Override
public void setSubscriptionDeliveredCounter(TopicName topicName, String subscriptionName, long count) {
  try {
    subscriptionRepository.ensureSubscriptionExists(topicName, subscriptionName);
    incrementSharedCounter(subscriptionDeliveredCounter(topicName, subscriptionName), count);
  } catch (SubscriptionNotExistsException e) {
    LOGGER.debug("Trying to report metric on not existing subscription {} {}", topicName, subscriptionName);
  }
}
origin: allegro/hermes

@Override
public void setSubscriptionDiscardedCounter(TopicName topicName, String subscriptionName, long count) {
  try {
    subscriptionRepository.ensureSubscriptionExists(topicName, subscriptionName);
    incrementSharedCounter(subscriptionDiscardedCounter(topicName, subscriptionName), count);
  } catch (SubscriptionNotExistsException e) {
    LOGGER.debug("Trying to report metric on not existing subscription {} {}", topicName, subscriptionName);
  }
}
origin: allegro/hermes

@Override
public PartitionOffsets getSubscriptionOffsets(TopicName topic, String subscriptionName, String brokersClusterName) {
  subscriptionRepository.ensureSubscriptionExists(topic, subscriptionName);
  String kafkaTopicsPath = paths.subscribedKafkaTopicsPath(topic, subscriptionName);
  PartitionOffsets allOffsets = new PartitionOffsets();
  getZookeeperChildrenForPath(kafkaTopicsPath).stream().map(KafkaTopicName::valueOf).forEach(kafkaTopic ->
      allOffsets.addAll(getOffsetsForKafkaTopic(topic, kafkaTopic, subscriptionName, brokersClusterName))
  );
  return allOffsets;
}
origin: allegro/hermes

@Override
public void setSubscriptionOffset(TopicName topicName, String subscriptionName, String brokersClusterName, PartitionOffset partitionOffset) {
  subscriptionRepository.ensureSubscriptionExists(topicName, subscriptionName);
  String offsetPath = paths.offsetPath(topicName, subscriptionName, partitionOffset.getTopic(), brokersClusterName, partitionOffset.getPartition());
  try {
    byte[] offset = String.valueOf(partitionOffset.getOffset()).getBytes(StandardCharsets.UTF_8);
    if (zookeeper.checkExists().forPath(offsetPath) == null) {
      zookeeper.create()
          .creatingParentsIfNeeded()
          .forPath(offsetPath, offset);
    } else {
      zookeeper.setData().forPath(offsetPath, offset);
    }
  } catch (Exception e) {
    throw new InternalProcessingException(e);
  }
}
origin: allegro/hermes

@Override
public void setInflightCounter(TopicName topicName, String subscriptionName, long count) {
  try {
    subscriptionRepository.ensureSubscriptionExists(topicName, subscriptionName);
    distributedCounter.setCounterValue(
        pathsCompiler.compile(appendRootPath(SUBSCRIPTION_INFLIGHT_FULL_PATH),
            subscriptionPathContext(topicName, subscriptionName)),
            count);
  } catch (SubscriptionNotExistsException e) {
    LOGGER.debug("Trying to report metric on not existing subscription {} {}", topicName, subscriptionName);
  }
}
origin: allegro/hermes

@Test
public void shouldNotIncrementSharedCounterForNonExistingSubscription() {
  //given
  TopicName topicName = TopicName.fromQualifiedName("test.topic");
  String subscriptionName = "sub";
  doThrow(new SubscriptionNotExistsException(topicName, subscriptionName))
      .when(subscriptionRepository).ensureSubscriptionExists(topicName, subscriptionName);
  //when
  storage.setSubscriptionDeliveredCounter(topicName, subscriptionName, 1L);
  //then
  verifyZeroInteractions(sharedCounter);
}
origin: allegro/hermes

  @Test
  public void shouldNotIncrementInflightCounterForNonExistingSubscription() {
    //given
    TopicName topicName = TopicName.fromQualifiedName("test.topic");
    String subscriptionName = "sub";
    doThrow(new SubscriptionNotExistsException(topicName, subscriptionName))
        .when(subscriptionRepository).ensureSubscriptionExists(topicName, subscriptionName);

    //when
    storage.setInflightCounter(topicName, subscriptionName, 1L);

    //then
    verifyZeroInteractions(sharedCounter);
  }
}
pl.allegro.tech.hermes.domain.subscriptionSubscriptionRepositoryensureSubscriptionExists

Popular methods of SubscriptionRepository

  • getSubscriptionDetails
  • listSubscriptions
  • createSubscription
  • updateSubscriptionState
  • listSubscriptionNames
  • removeSubscription
  • subscriptionExists
  • updateSubscription

Popular in Java

  • Creating JSON documents from java classes using gson
  • onRequestPermissionsResult (Fragment)
  • onCreateOptionsMenu (Activity)
  • findViewById (Activity)
  • RandomAccessFile (java.io)
    Allows reading from and writing to a file in a random-access manner. This is different from the uni-
  • Selector (java.nio.channels)
    A controller for the selection of SelectableChannel objects. Selectable channels can be registered w
  • MessageDigest (java.security)
    Uses a one-way hash function to turn an arbitrary number of bytes into a fixed-length byte sequence.
  • LinkedList (java.util)
    Doubly-linked list implementation of the List and Dequeinterfaces. Implements all optional list oper
  • Random (java.util)
    This class provides methods that return pseudo-random values.It is dangerous to seed Random with the
  • Annotation (javassist.bytecode.annotation)
    The annotation structure.An instance of this class is returned bygetAnnotations() in AnnotationsAttr
  • Best IntelliJ plugins
Tabnine Logo
  • Products

    Search for Java codeSearch for JavaScript code
  • IDE Plugins

    IntelliJ IDEAWebStormVisual StudioAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimGoLandRubyMineEmacsJupyter NotebookJupyter LabRiderDataGripAppCode
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogTabnine AcademyTerms of usePrivacy policyJava Code IndexJavascript Code Index
Get Tabnine for your IDE now