summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/context/impl/RequestContextImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/context/impl/RequestContextImpl.java')
-rw-r--r--sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/context/impl/RequestContextImpl.java21
1 files changed, 12 insertions, 9 deletions
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 5d0527682e..6aaa6186b9 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
@@ -65,20 +65,22 @@ public class RequestContextImpl implements RequestContext {
public String getServiceName() {
Message msgContext = ThreadMessageContext.getMessageContext();
- if (msgContext != null){
+ if (msgContext != null &&
+ msgContext.getTo() != null){
return msgContext.getTo().getService().getName();
} else {
- // message in thread context could be null if the user has
- // spun up a new thread inside their component implementation
+ // message in thread context could be null (or the default message where to == null)
+ // if the user has spun up a new thread inside their component implementation
return null;
}
}
public <B> ServiceReference<B> getServiceReference() {
Message msgContext = ThreadMessageContext.getMessageContext();
- if (msgContext == null){
- // message in thread context could be null if the user has
- // spun up a new thread inside their component implementation
+ if (msgContext == null ||
+ msgContext.getTo() == null){
+ // message in thread context could be null (or the default message where to == null)
+ // if the user has spun up a new thread inside their component implementation
return null;
}
// FIXME: [rfeng] Is this the service reference matching the caller side?
@@ -101,9 +103,10 @@ public class RequestContextImpl implements RequestContext {
@SuppressWarnings("unchecked")
public <CB> ServiceReference<CB> getCallbackReference() {
Message msgContext = ThreadMessageContext.getMessageContext();
- if (msgContext == null){
- // message in thread context could be null if the user has
- // spun up a new thread inside their component implementation
+ if (msgContext == null ||
+ msgContext.getTo() == null){
+ // message in thread context could be null (or the default message where to == null)
+ // if the user has spun up a new thread inside their component implementation
return null;
}