On Mon, 29 Aug 2022 14:26:09 GMT, Ramesh Bhagavatam Gangadhar 
<[email protected]> wrote:

>> There are total 160 scenarios written with combination of client properties 
>> (Client Scenarios) and Server Response (Server Scenarios).
>> 
>> In tabular format, Client and Server scenarios along with expected output 
>> are documented 
>> here:[Permalink](https://bugs.openjdk.org/browse/JDK-8291226?focusedCommentId=14519074&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14519074)
>> 
>> This Program Should be run mandatorily in othervm mode itself since it has 
>> system property changes so can't be clubbed with other scenarios. so each 
>> scenario should be run in individual JVM.
>> 
>> For each and every scenario, ServerSocket is created and waits for clients 
>> to connect to it.
>> isProxySet and serverReady are shared variables between server thread and 
>> client thread(main) and it should be set and reset to false for each and 
>> every scenario.
>> 
>> isProxySet and serverReady variables should be set by server thread before 
>> proceeding to client thread(main).
>> 
>> if isProxySet variable is set to true then client set the proxy value to 
>> url.openConnection(Proxy)
>> <SNIPPET>
>> if (isProxySet) { 
>>          httpUrlConnection = (sun.net.www.protocol.http.HttpURLConnection) 
>> url .openConnection(new Proxy(Type.HTTP, new InetSocketAddress("localhost", 
>> SERVER_PORT))); } 
>> else { 
>>         httpUrlConnection = (sun.net.www.protocol.http.HttpURLConnection) 
>> url.openConnection(); 
>> }
>> </SNIPPET>
>> 
>> Program tries to fetch the Value of <Key, Value> Pairs of HashMap 
>> KeepAliveCache where Key is KeepAliveKey and Value is ClientVector 
>> KeepAliveTimeout is stored in Value ClientVector of HashMap KeepAliveCache.
>> 
>> if connection is cached then KeepAliveTimeout is stored in ClientVector. 
>> KeepAliveTimeout stored in Value(ClientVector) of HashMap KeepAliveCache is 
>> compared with Expected Value.
>> 
>> if connection is not cached then connection is terminated immediately.
>
> Ramesh Bhagavatam Gangadhar has updated the pull request incrementally with 
> one additional commit since the last revision:
> 
>   Update KeepAliveTest.java
>   
>   updated description for methods

> Hi Michael,
> 
> Could you please let me know suitable preferred type mentioned below for 
> changes in documentation. I have taken first scenario as example from table.
> 
> if below preferred types are not suitable suggest me better one.
> 
> /*Server Scenario */ private static final String A = 
> CONNECTION_KEEP_ALIVE_ONLY;
> 
> /_Client Scenario_/ private static final String 
> CLIENT_HTTP_KEEP_ALIVE_TIME_SERVER_POSITIVE = 
> "http.keepAlive.time.server=100"; private static final String SERVER_100 = 
> CLIENT_HTTP_KEEP_ALIVE_TIME_SERVER_POSITIVE;
> # PREFERRED TYPE ONE
> 
> ScNo | SERVER RESPONSE | CLIENT SYSTEM PROPERTIES INPUT | EXPECTED CACHED 
> TIMEOUT AT CLIENT SIDE
> 
> 1 | Connection: keep-alive (A) | -Dhttp.keepAlive.time.server=100 
> (SERVER_100) | Client Timeout set to 100
> # PREFERRED TYPE TWO
> 
> ScNo | SERVER RESPONSE | CLIENT SYSTEM PROPERTIES INPUT | EXPECTED CACHED 
> TIMEOUT AT CLIENT SIDE
> 
> 1 | A | SERVER_100 | Client Timeout set to 100
> # PREFERRED TYPE THREE
> 
> ScNo | SERVER RESPONSE | CLIENT SYSTEM PROPERTIES INPUT | EXPECTED CACHED 
> TIMEOUT AT CLIENT SIDE
> 
> 1 | A | -Dhttp.keepAlive.time.server=100 | Client Timeout set to 100

Hi Ramesh

Thanks for considering this. I think Type One looks the most straightforward, 
but any will do

Michael

-------------

PR: https://git.openjdk.org/jdk/pull/9958

Reply via email to