test_class.declarator: actorSystem
test_class.modifier: private
test_class.original_string: private ActorSystem actorSystem;
test_class.type: ActorSystem
test_class.var_name: actorSystem
test_class.declarator: materializer
test_class.modifier: private
test_class.original_string: private Materializer materializer;
test_class.type: Materializer
test_class.var_name: materializer
test_class.declarator: pubSubMediatorProbe
test_class.modifier: private
test_class.original_string: private TestProbe pubSubMediatorProbe;
test_class.type: TestProbe
test_class.var_name: pubSubMediatorProbe
test_class.declarator: conciergeForwarderProbe
test_class.modifier: private
test_class.original_string: private TestProbe conciergeForwarderProbe;
test_class.type: TestProbe
test_class.var_name: conciergeForwarderProbe
test_class.file: services/utils/search/src/test/java/org/eclipse/ditto/services/utils/search/SubscriptionManagerTest.java
test_class.identifier: SubscriptionManagerTest
test_case.body: @Test
      public void illegalDemand() {
          new TestKit(actorSystem) {{
              final ActorRef underTest = createSubscriptionManager();
              underTest.tell(createSubscription(1), getRef());
              final String sid = expectMsgClass(SubscriptionCreated.class).getSubscriptionId();
              underTest.tell(RequestFromSubscription.of(sid, 0L, DittoHeaders.empty()), getRef());
              expectMsgClass(SubscriptionFailed.class);
          }};
      }
test_case.class_method_signature: SubscriptionManagerTest.illegalDemand()
test_case.full_signature: @Test public void illegalDemand()
test_case.identifier: illegalDemand
test_case.invocations: createSubscriptionManager tell createSubscription getRef getSubscriptionId expectMsgClass tell of empty getRef expectMsgClass
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void illegalDemand()
focal_class.declarator: ACTOR_NAME = "subscriptionManager"
focal_class.modifier: public static final
focal_class.original_string: public static final String ACTOR_NAME = "subscriptionManager";
focal_class.type: String
focal_class.var_name: ACTOR_NAME
focal_class.declarator: idleTimeout
focal_class.modifier: private final
focal_class.original_string: private final Duration idleTimeout;
focal_class.type: Duration
focal_class.var_name: idleTimeout
focal_class.declarator: pubSubMediator
focal_class.modifier: private final
focal_class.original_string: private final ActorRef pubSubMediator;
focal_class.type: ActorRef
focal_class.var_name: pubSubMediator
focal_class.declarator: proxyActor
focal_class.modifier: private final
focal_class.original_string: private final ActorRef proxyActor;
focal_class.type: ActorRef
focal_class.var_name: proxyActor
focal_class.declarator: materializer
focal_class.modifier: private final
focal_class.original_string: private final Materializer materializer;
focal_class.type: Materializer
focal_class.var_name: materializer
focal_class.declarator: log
focal_class.modifier: private final
focal_class.original_string: private final DittoDiagnosticLoggingAdapter log;
focal_class.type: DittoDiagnosticLoggingAdapter
focal_class.var_name: log
focal_class.declarator: defaultPageSize
focal_class.modifier: private final
focal_class.original_string: private final int defaultPageSize;
focal_class.type: int
focal_class.var_name: defaultPageSize
focal_class.declarator: maxPageSize
focal_class.modifier: private final
focal_class.original_string: private final int maxPageSize;
focal_class.type: int
focal_class.var_name: maxPageSize
focal_class.declarator: subscriptionIdCounter = 0
focal_class.modifier: private
focal_class.original_string: private int subscriptionIdCounter = 0;
focal_class.type: int
focal_class.var_name: subscriptionIdCounter
focal_class.file: services/utils/search/src/main/java/org/eclipse/ditto/services/utils/search/SubscriptionManager.java
focal_class.identifier: SubscriptionManager
focal_class.class_method_signature: SubscriptionManager.SubscriptionManager(final Duration idleTimeout,
              final ActorRef pubSubMediator,
              final ActorRef proxyActor,
              final Materializer materializer)
focal_class.full_signature:   SubscriptionManager(final Duration idleTimeout,
              final ActorRef pubSubMediator,
              final ActorRef proxyActor,
              final Materializer materializer)
focal_class.identifier: SubscriptionManager
focal_class.parameters: (final Duration idleTimeout,
              final ActorRef pubSubMediator,
              final ActorRef proxyActor,
              final Materializer materializer)
focal_class.signature:  SubscriptionManager(final Duration idleTimeout,
              final ActorRef pubSubMediator,
              final ActorRef proxyActor,
              final Materializer materializer)
focal_class.class_method_signature: SubscriptionManager.props(final Duration idleTimeout,
              final ActorRef pubSubMediator,
              final ActorRef proxyActor,
              final Materializer materializer)
focal_class.full_signature: public static Props props(final Duration idleTimeout,
              final ActorRef pubSubMediator,
              final ActorRef proxyActor,
              final Materializer materializer)
focal_class.identifier: props
focal_class.modifiers: public static
focal_class.parameters: (final Duration idleTimeout,
              final ActorRef pubSubMediator,
              final ActorRef proxyActor,
              final Materializer materializer)
focal_class.return: Props
focal_class.signature: Props props(final Duration idleTimeout,
              final ActorRef pubSubMediator,
              final ActorRef proxyActor,
              final Materializer materializer)
focal_class.class_method_signature: SubscriptionManager.asJsonArray(final Collection<String> strings)
focal_class.full_signature: private static JsonArray asJsonArray(final Collection<String> strings)
focal_class.identifier: asJsonArray
focal_class.modifiers: private static
focal_class.parameters: (final Collection<String> strings)
focal_class.return: JsonArray
focal_class.signature: JsonArray asJsonArray(final Collection<String> strings)
focal_class.class_method_signature: SubscriptionManager.getPageSize(@Nullable final String optionString)
focal_class.full_signature: private int getPageSize(@Nullable final String optionString)
focal_class.identifier: getPageSize
focal_class.modifiers: private
focal_class.parameters: (@Nullable final String optionString)
focal_class.return: int
focal_class.signature: int getPageSize(@Nullable final String optionString)
focal_class.class_method_signature: SubscriptionManager.createReceive()
focal_class.full_signature: @Override public Receive createReceive()
focal_class.identifier: createReceive
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Receive
focal_class.signature: Receive createReceive()
focal_class.class_method_signature: SubscriptionManager.requestSubscription(final RequestFromSubscription requestFromSubscription)
focal_class.full_signature: private void requestSubscription(final RequestFromSubscription requestFromSubscription)
focal_class.identifier: requestSubscription
focal_class.modifiers: private
focal_class.parameters: (final RequestFromSubscription requestFromSubscription)
focal_class.return: void
focal_class.signature: void requestSubscription(final RequestFromSubscription requestFromSubscription)
focal_class.class_method_signature: SubscriptionManager.cancelSubscription(final CancelSubscription cancelSubscription)
focal_class.full_signature: private void cancelSubscription(final CancelSubscription cancelSubscription)
focal_class.identifier: cancelSubscription
focal_class.modifiers: private
focal_class.parameters: (final CancelSubscription cancelSubscription)
focal_class.return: void
focal_class.signature: void cancelSubscription(final CancelSubscription cancelSubscription)
focal_class.class_method_signature: SubscriptionManager.forwardToChild(final String subscriptionId, final ThingSearchCommand<?> command)
focal_class.full_signature: private void forwardToChild(final String subscriptionId, final ThingSearchCommand<?> command)
focal_class.identifier: forwardToChild
focal_class.modifiers: private
focal_class.parameters: (final String subscriptionId, final ThingSearchCommand<?> command)
focal_class.return: void
focal_class.signature: void forwardToChild(final String subscriptionId, final ThingSearchCommand<?> command)
focal_class.class_method_signature: SubscriptionManager.createSubscription(final CreateSubscription createSubscription)
focal_class.full_signature: private void createSubscription(final CreateSubscription createSubscription)
focal_class.identifier: createSubscription
focal_class.modifiers: private
focal_class.parameters: (final CreateSubscription createSubscription)
focal_class.return: void
focal_class.signature: void createSubscription(final CreateSubscription createSubscription)
focal_class.class_method_signature: SubscriptionManager.connect(final ActorRef subscriptionActor, final Source<JsonArray, NotUsed> pageSource)
focal_class.full_signature: private void connect(final ActorRef subscriptionActor, final Source<JsonArray, NotUsed> pageSource)
focal_class.identifier: connect
focal_class.modifiers: private
focal_class.parameters: (final ActorRef subscriptionActor, final Source<JsonArray, NotUsed> pageSource)
focal_class.return: void
focal_class.signature: void connect(final ActorRef subscriptionActor, final Source<JsonArray, NotUsed> pageSource)
focal_class.class_method_signature: SubscriptionManager.getPageSource(final CreateSubscription createSubscription)
focal_class.full_signature: private Source<JsonArray, NotUsed> getPageSource(final CreateSubscription createSubscription)
focal_class.identifier: getPageSource
focal_class.modifiers: private
focal_class.parameters: (final CreateSubscription createSubscription)
focal_class.return: Source<JsonArray, NotUsed>
focal_class.signature: Source<JsonArray, NotUsed> getPageSource(final CreateSubscription createSubscription)
focal_class.class_method_signature: SubscriptionManager.nextSubscriptionId(final CreateSubscription createSubscription)
focal_class.full_signature: private String nextSubscriptionId(final CreateSubscription createSubscription)
focal_class.identifier: nextSubscriptionId
focal_class.modifiers: private
focal_class.parameters: (final CreateSubscription createSubscription)
focal_class.return: String
focal_class.signature: String nextSubscriptionId(final CreateSubscription createSubscription)
focal_class.class_method_signature: SubscriptionManager.lazify(final Source<T, ?> upstream)
focal_class.full_signature: private static Source<T, ?> lazify(final Source<T, ?> upstream)
focal_class.identifier: lazify
focal_class.modifiers: private static
focal_class.parameters: (final Source<T, ?> upstream)
focal_class.return: Source<T, ?>
focal_class.signature: Source<T, ?> lazify(final Source<T, ?> upstream)
focal_class.superclass: extends AbstractActor
focal_method.body: private void createSubscription(final CreateSubscription createSubscription) {
          log.withCorrelationId(createSubscription).info("Processing <{}>", createSubscription);
          final String subscriptionId = nextSubscriptionId(createSubscription);
          final Props props = SubscriptionActor.props(idleTimeout, getSender(), createSubscription.getDittoHeaders());
          final ActorRef subscriptionActor = getContext().actorOf(props, subscriptionId);
          final Source<JsonArray, NotUsed> pageSource = getPageSource(createSubscription);
          connect(subscriptionActor, pageSource);
      }
focal_method.class_method_signature: SubscriptionManager.createSubscription(final CreateSubscription createSubscription)
focal_method.full_signature: private void createSubscription(final CreateSubscription createSubscription)
focal_method.identifier: createSubscription
focal_method.invocations: info withCorrelationId nextSubscriptionId props getSender getDittoHeaders actorOf getContext getPageSource connect
focal_method.modifiers: private
focal_method.parameters: (final CreateSubscription createSubscription)
focal_method.return: void
focal_method.signature: void createSubscription(final CreateSubscription createSubscription)