I want to add a `predefined_query_handler` to serve a single JSON from my query.
For example

```xml
<rule>
      <url>/my/url</url>
      <methods>GET</methods>
      <handler>
        <type>predefined_query_handler</type>
        <query>select '{"my": "json"}' format JSONAsString</query>
      </handler>
    </rule>
```

I can use `RawBLOB` but it sets up Content-Type 'text/plain' instead of 'application/json'.
I think JSONAsString should also work with output.

{
            return out_maybe_delayed_and_compressed != out_maybe_compressed;
        }
        inline void finalize()
        {
            if (finalized)
                return;
            finalized = true;
            if (out_maybe_delayed_and_compressed)
                out_maybe_delayed_and_compressed->finalize();
            if (out_maybe_compressed)
                out_maybe_compressed->finalize();
            if (out)
                out->finalize();
        }
        inline bool isFinalized() const
        {
            return finalized;
        }
    };
    IServer & server;
    Poco::Logger * log;
    /// It is the name of the server that will be sent in an http-header X-ClickHouse-Server-Display-Name.
    String server_display_name;
    CurrentMetrics::Increment metric_increment{CurrentMetrics::HTTPConnection};
    /// Reference to the immutable settings in the global context.
    /// Those settings are used only to extract a http request's parameters.
    /// See settings http_max_fields, http_max_field_name_size, http_max_field_value_size in HTMLForm.
    const Settings & default_settings;