/******************************************************************************* * Copyright (c) 2006-2010 eBay Inc. All Rights Reserved. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 *******************************************************************************/ package org.ebayopensource.turmeric.runtime.sif.pipeline; import java.util.Set; import org.ebayopensource.turmeric.runtime.common.pipeline.MessageContext; import org.ebayopensource.turmeric.runtime.sif.service.ClientServiceContext; import org.ebayopensource.turmeric.runtime.sif.service.ClientServiceId; /** * Minimum Client side MessageContext to be kept after the request is sent. * */ public interface ReducedClientMessageContext extends MessageContext{ /* (non-Javadoc) * @see org.ebayopensource.turmeric.runtime.common.pipeline.MessageContext#getInvokerVersion() */ @Override public String getInvokerVersion(); /* (non-Javadoc) * @see org.ebayopensource.turmeric.runtime.common.pipeline.MessageContext#getServiceId() */ @Override public ClientServiceId getServiceId(); /** * Get the property setting in effect for the current request context. * @param name the name of the property value to retrieve. * @return the property value, or null if none is set. */ public Object getRequestProperty(String name); /** * Sets a property applicable to the current request context. * @param name the property * @param value the value of the property */ public void setRequestProperty(String name, Object value); /** * Get the property setting in effect for the current response context. * @param name the name of the property value to retrieve. * @return the property value, or null if none is set. */ public Object getResponseProperty(String name); /** * Sets a property applicable to the current response context. * @param name the property * @param value the value of the property */ public void setResponseProperty(String name, Object value); /** * Returns a Set of String objects containing the names of all the request properties. * @return a Set of String objects specifying the names of all the request properties */ public Set<String> getRequestPropertyNames(); /** * Returns a Set of String objects containing the names of all the response properties. * @return a Set of String objects specifying the names of all the response properties */ public Set<String> getResponsePropertyNames(); /** * Used in service chaining in situations where a service's implementation is a client of some other service. * The client logic can obtain access to the surrounding service context using this method, so that the * upstream invocation state (headers, cookies, etc.) can be obtained. * @return the message context */ public MessageContext getCallerMessageContext(); /* (non-Javadoc) * @see org.ebayopensource.turmeric.runtime.common.pipeline.MessageContext#getServiceContext() */ @Override public ClientServiceContext getServiceContext(); }