summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x
diff options
context:
space:
mode:
authorslaws <slaws@13f79535-47bb-0310-9956-ffa450edef68>2010-06-14 11:35:36 +0000
committerslaws <slaws@13f79535-47bb-0310-9956-ffa450edef68>2010-06-14 11:35:36 +0000
commit42e129ae47706d5bfac43edf2136cb0efdfd3a3e (patch)
tree7610c8396ab1f7230043211e6c2e1034efab96b4 /sca-java-2.x
parent28e35c22b924dd82965284dc23e0ee54a3dce3b9 (diff)
Add a little bit more structure to message header storage to generally avoid having to loop across headers to find the right one.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@954414 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '')
-rw-r--r--sca-java-2.x/trunk/modules/binding-jsonrpc-runtime/src/main/java/org/apache/tuscany/sca/binding/jsonrpc/provider/JSONRPCServiceServlet.java2
-rw-r--r--sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/invocation/Message.java3
-rw-r--r--sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/context/impl/RequestContextImpl.java2
-rw-r--r--sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/NonBlockingInterceptor.java3
-rw-r--r--sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/impl/MessageImpl.java8
-rw-r--r--sca-java-2.x/trunk/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/security/SecurityUtil.java25
6 files changed, 16 insertions, 27 deletions
diff --git a/sca-java-2.x/trunk/modules/binding-jsonrpc-runtime/src/main/java/org/apache/tuscany/sca/binding/jsonrpc/provider/JSONRPCServiceServlet.java b/sca-java-2.x/trunk/modules/binding-jsonrpc-runtime/src/main/java/org/apache/tuscany/sca/binding/jsonrpc/provider/JSONRPCServiceServlet.java
index 1177940891..742a27e2ce 100644
--- a/sca-java-2.x/trunk/modules/binding-jsonrpc-runtime/src/main/java/org/apache/tuscany/sca/binding/jsonrpc/provider/JSONRPCServiceServlet.java
+++ b/sca-java-2.x/trunk/modules/binding-jsonrpc-runtime/src/main/java/org/apache/tuscany/sca/binding/jsonrpc/provider/JSONRPCServiceServlet.java
@@ -297,7 +297,7 @@ public class JSONRPCServiceServlet extends JSONRPCServlet {
Message requestMessage = messageFactory.createMessage();
requestMessage.setOperation(jsonOperation);
- requestMessage.getHeaders().add(request);
+ requestMessage.getHeaders().put("RequestMessage", request);
requestMessage.setBody(args);
diff --git a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/invocation/Message.java b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/invocation/Message.java
index cadd876aa9..2bafdb64b8 100644
--- a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/invocation/Message.java
+++ b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/invocation/Message.java
@@ -19,6 +19,7 @@
package org.apache.tuscany.sca.invocation;
import java.util.List;
+import java.util.Map;
import org.apache.tuscany.sca.assembly.Endpoint;
import org.apache.tuscany.sca.assembly.EndpointReference;
@@ -113,7 +114,7 @@ public interface Message {
*
* @return
*/
- List<Object> getHeaders();
+ Map<String, Object> getHeaders();
/**
* Returns the binding context in force for this message
diff --git a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/context/impl/RequestContextImpl.java b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/context/impl/RequestContextImpl.java
index cdb510f7ec..1b2d79e4f1 100644
--- a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/context/impl/RequestContextImpl.java
+++ b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/context/impl/RequestContextImpl.java
@@ -45,7 +45,7 @@ public class RequestContextImpl implements RequestContext {
public Subject getSecuritySubject() {
Subject subject = null;
- for (Object header : ThreadMessageContext.getMessageContext().getHeaders()){
+ for (Object header : ThreadMessageContext.getMessageContext().getHeaders().values()){
if (header instanceof Subject){
subject = (Subject)header;
break;
diff --git a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/NonBlockingInterceptor.java b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/NonBlockingInterceptor.java
index 6435efe4d6..a31a126977 100644
--- a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/NonBlockingInterceptor.java
+++ b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/NonBlockingInterceptor.java
@@ -19,6 +19,7 @@
package org.apache.tuscany.sca.core.invocation;
import java.util.List;
+import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -170,7 +171,7 @@ public class NonBlockingInterceptor implements Interceptor {
throw new UnsupportedOperationException();
}
- public List<Object> getHeaders() {
+ public Map<String, Object> getHeaders() {
return null;
}
public <T> T getBindingContext() {
diff --git a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/impl/MessageImpl.java b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/impl/MessageImpl.java
index e66fb0567a..cc8cb48cc5 100644
--- a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/impl/MessageImpl.java
+++ b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/impl/MessageImpl.java
@@ -18,8 +18,8 @@
*/
package org.apache.tuscany.sca.core.invocation.impl;
-import java.util.ArrayList;
-import java.util.List;
+import java.util.HashMap;
+import java.util.Map;
import org.apache.tuscany.sca.assembly.Endpoint;
import org.apache.tuscany.sca.assembly.EndpointReference;
@@ -32,7 +32,7 @@ import org.apache.tuscany.sca.invocation.Message;
* @version $Rev $Date$
*/
public class MessageImpl implements Message {
- private List<Object> headers = new ArrayList<Object>();
+ private Map<String, Object> headers = new HashMap<String, Object>();
private Object body;
private Object messageID;
private boolean isFault;
@@ -99,7 +99,7 @@ public class MessageImpl implements Message {
this.operation = op;
}
- public List<Object> getHeaders() {
+ public Map<String, Object> getHeaders() {
return headers;
}
diff --git a/sca-java-2.x/trunk/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/security/SecurityUtil.java b/sca-java-2.x/trunk/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/security/SecurityUtil.java
index d2e0180095..50349cdf88 100644
--- a/sca-java-2.x/trunk/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/security/SecurityUtil.java
+++ b/sca-java-2.x/trunk/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/security/SecurityUtil.java
@@ -33,20 +33,16 @@ import org.apache.tuscany.sca.invocation.Message;
*/
public class SecurityUtil {
+ public static String SubjectString = "Subject";
+ public static String PrincipalString = "Principal";
+
public static Subject getSubject(Message msg){
- Subject subject = null;
-
- for (Object header : msg.getHeaders()){
- if (header instanceof Subject){
- subject = (Subject)header;
- break;
- }
- }
+ Subject subject = (Subject)msg.getHeaders().get(SubjectString);
if (subject == null){
subject = new Subject();
- msg.getHeaders().add(subject);
+ msg.getHeaders().put(SubjectString, subject);
}
return subject;
@@ -64,15 +60,6 @@ public class SecurityUtil {
public static Principal getPrincipal(Message msg){
- Principal principal = null;
-
- for (Object header : msg.getHeaders()){
- if (header instanceof Principal){
- principal = (Principal)header;
- break;
- }
- }
-
- return principal;
+ return (Principal)msg.getHeaders().get(PrincipalString);
}
}