>>>>> On Thu, 20 Aug 2015 06:59:16 +1000, Greg Wilkins <gregw_at_webtide.com> said:
GW> Should we also be explicit about how query string included in setPath and
GW> one in setQueryString are handled?
I don't see setPath() or setQueryString() anywhere in the API. I assume
you mean path() and queryString(). [1]
GW> I'm assuming that they should be merged and the key difference is that
GW> setPath is reset each cycle, but the setQueryString is not.
SWC> There are two ways of merging for parameters with the same name. (Let us
SWC> take a simple example: path with a=1, query with a=2.)
SWC> a) replace a=2
SWC> b) aggregate, a=1, a=2
SWC> It should be (b).
>>>>> On Thu, 20 Aug 2015 11:04:57 +1000, Greg Wilkins <gregw_at_webtide.com> said:
GW> I prefer b)
GW> I think the replace semantic is used elsewhere, but in this case the caller
GW> has full control over both parts and the only difference between then is
GW> lifecycle, so they have full control if they really want replace.
b) it is. I have updated the spec at [2].
I also made it clear that an IAE must be thrown if a call to push()
happens before a call to path() on a given push lifecycle instance.
>>>>> On Fri, 21 Aug 2015 16:14:06 -0700, Shing Wai Chan <shing.wai.chan_at_oracle.com> said:
SW> In PushBuilder, I notice there are several getters API?
SW> Do we really need that?
SW> If we decide to keep those APIs, then we need to take a closer look.
SW> In PushBuilder, we have:
SW> Set<String> getHeaderNames()
SW> Is the modification of the resulting Set has any effect on push request?
SW> It should not. In this case, I suggest to add the following
SW> clarification in the javadoc:
SW> Any changes to the returned Set must not affect the push request.
SW> How can we handle the case of headers with the same header name?
SW> As in HttpServletRequest, we would to like to add the following API:
SW> Collection<String> getHeaders(String name)
Thanks,
Ed
--
| edward.burns_at_oracle.com | office: +1 407 458 0017
| 51 Business days til JavaOne 2015
| 66 Business days til DOAG 2015
[1] https://maven.java.net/service/local/repositories/snapshots/archive/javax/servlet/javax.servlet-api/4.0.0-b01-SERVLET_SPEC-134-SNAPSHOT/javax.servlet-api-4.0.0-b01-SERVLET_SPEC-134-20150819.164748-2-javadoc.jar/!/javax/servlet/http/PushBuilder.html#path-java.lang.String-
https://maven.java.net/service/local/repositories/snapshots/archive/javax/servlet/javax.servlet-api/4.0.0-b01-SERVLET_SPEC-134-SNAPSHOT/javax.servlet-api-4.0.0-b01-SERVLET_SPEC-134-20150819.164748-2-javadoc.jar/!/javax/servlet/http/PushBuilder.html#queryString-java.lang.String-
[2] https://maven.java.net/service/local/repositories/snapshots/archive/javax/servlet/javax.servlet-api/4.0.0-b01-SERVLET_SPEC-134-SNAPSHOT/javax.servlet-api-4.0.0-b01-SERVLET_SPEC-134-20150824.131118-3-javadoc.jar/!/index.html