@InvokeOnHeader(CONTROL_ACTION_SUBSCRIBE)
    public void performSubscribe(final Message message, AsyncCallback callback) {
        String filterId;
        if (message.getBody() instanceof DynamicRouterControlMessage) {
            filterId = subscribeFromMessage(dynamicRouterControlService, message, false);
        } else {
            filterId = subscribeFromHeaders(dynamicRouterControlService, message, false);
        }
        message.setBody(filterId);
        callback.done(false);
    }
@Test
    void performSubscribeActionWithEmptyExpressionLanguage() {
        String subscribeChannel = "testChannel";
        Map<String, Object> headers = Map.of(
                CONTROL_ACTION_HEADER, CONTROL_ACTION_SUBSCRIBE,
                CONTROL_SUBSCRIBE_CHANNEL, subscribeChannel,
                CONTROL_SUBSCRIPTION_ID, "testId",
                CONTROL_DESTINATION_URI, "mock://test",
                CONTROL_PREDICATE, "true",
                CONTROL_EXPRESSION_LANGUAGE, "",
                CONTROL_PRIORITY, 10);
        when(message.getHeaders()).thenReturn(headers);
        Mockito.doNothing().when(callback).done(false);
        producer.performSubscribe(message, callback);
        Mockito.verify(controlService, Mockito.times(1)).subscribeWithPredicateInstance(
                subscribeChannel, "testId", "mock://test", 10, null, false);
    }