I realized that URL class isn't exposed as a part of TS API. None of
APIs receive it explicitly, and TSMLoc is used instead. Also, I
couldn't overload the API because it's not C++ but C.

So, I think passing URLs as strings is a reasonable way, and it is the
only option for now.

I'm going to start writing documentation this weekend and merge the
Pull Request by next weekend. Please comment if you have any thoughts.
This would be the final call since there's no responses in last 10
days.

Thanks



On Sat, Aug 6, 2016 at 6:13 PM, Masakazu Kitajo <mas...@apache.org> wrote:
> What do you think about providing the both interfaces?
>
> I'm fine with passing URL objects internally. However, I guess there
> are cases that URL strings comes from out of TS APIs such as
> databases, results of some processing, etc. Though people can create
> URL objects easily, it needs few more boring codes in every plugins.
>
>
> On Sat, Aug 6, 2016 at 12:08 AM, Leif Hedstrom <zw...@apache.org> wrote:
>>
>>> On Aug 4, 2016, at 8:15 PM, James Peach <jpe...@apache.org> wrote:
>>>
>>>
>>>> On Aug 1, 2016, at 12:18 AM, Masakazu Kitajo <mas...@apache.org> wrote:
>>>>
>>>> Hi all,
>>>>
>>>> I'd like to add a new API to support Server Push[1] introduced by HTTP/2.
>>>>
>>>>   void TSHttpTxnServerPush(TSHttpTxn txnp, const char *url, int url_len)
>>>
>>> I think the direction we are moving in is to pass URLs as URL objects 
>>> rather than strings.
>>
>>
>> Definitely.
>>
>> — leif
>>
>>>
>>>>
>>>> This allows plugins to push contents with Server Push mechanism
>>>> supported by client session protocols. Currently, the API can be used
>>>> with HTTP/2 sessions but it will be used with QUIC[2] sessions too in
>>>> the future.
>>>>
>>>> I think the API should be marked as experimental, and it need to be
>>>> brushed up with practical use cases. However, at least, it should
>>>> satisfy the simple approaches discussed on TS-3474.
>>>>
>>>> JIRA:
>>>>   https://issues.apache.org/jira/browse/TS-3474
>>>>
>>>> Pull Request:
>>>>   https://github.com/apache/trafficserver/pull/833
>>>>
>>>> [1] https://tools.ietf.org/html/rfc7540#section-8.2
>>>> [2] https://tools.ietf.org/html/draft-shade-quic-http2-mapping-00#section-9
>>>>
>>>> Thanks,
>>>> Masakazu
>>>
>>

Reply via email to