com.sun.xml.ws.client
Class ResponseContext

java.lang.Object
  extended by java.util.AbstractMap<String,Object>
      extended by com.sun.xml.ws.client.ResponseContext
All Implemented Interfaces:
Map<String,Object>

public class ResponseContext
extends AbstractMap<String,Object>

Implements "response context" on top of Packet.

This class creates a read-only Map view that gets exposed to client applications after an invocation is complete.

The design goal of this class is to make it efficient to create a new ResponseContext, at the expense of making some Map operations slower. This is justified because the response context is mostly just used to query a few known values, and operations like enumeration isn't likely.

Some of the Map methods requre this class to build the complete Set of properties, but we try to avoid that as much as possible.

 TODO: are we exposing all strongly-typed fields, or
 do they have appliation/handler scope notion?
 


Nested Class Summary
 
Nested classes/interfaces inherited from interface java.util.Map
Map.Entry<K,V>
 
Constructor Summary
ResponseContext(Packet packet)
           
 
Method Summary
 void clear()
           
 boolean containsKey(Object key)
           
 Set<Map.Entry<String,Object>> entrySet()
           
 Object get(Object key)
           
 Object put(String key, Object value)
           
 void putAll(Map<? extends String,? extends Object> t)
           
 Object remove(Object key)
           
 
Methods inherited from class java.util.AbstractMap
clone, containsValue, equals, hashCode, isEmpty, keySet, size, toString, values
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ResponseContext

public ResponseContext(Packet packet)
Parameters:
packet - The Packet to wrap.
Method Detail

containsKey

public boolean containsKey(Object key)
Specified by:
containsKey in interface Map<String,Object>
Overrides:
containsKey in class AbstractMap<String,Object>

get

public Object get(Object key)
Specified by:
get in interface Map<String,Object>
Overrides:
get in class AbstractMap<String,Object>

put

public Object put(String key,
                  Object value)
Specified by:
put in interface Map<String,Object>
Overrides:
put in class AbstractMap<String,Object>

remove

public Object remove(Object key)
Specified by:
remove in interface Map<String,Object>
Overrides:
remove in class AbstractMap<String,Object>

putAll

public void putAll(Map<? extends String,? extends Object> t)
Specified by:
putAll in interface Map<String,Object>
Overrides:
putAll in class AbstractMap<String,Object>

clear

public void clear()
Specified by:
clear in interface Map<String,Object>
Overrides:
clear in class AbstractMap<String,Object>

entrySet

public Set<Map.Entry<String,Object>> entrySet()
Specified by:
entrySet in interface Map<String,Object>
Specified by:
entrySet in class AbstractMap<String,Object>