diff options
Diffstat (limited to 'sca-java-2.x/contrib/modules/binding-comet-runtime/src/main/java/org/apache/tuscany/sca/binding/comet/runtime/CometServiceBindingProvider.java')
-rw-r--r-- | sca-java-2.x/contrib/modules/binding-comet-runtime/src/main/java/org/apache/tuscany/sca/binding/comet/runtime/CometServiceBindingProvider.java | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/sca-java-2.x/contrib/modules/binding-comet-runtime/src/main/java/org/apache/tuscany/sca/binding/comet/runtime/CometServiceBindingProvider.java b/sca-java-2.x/contrib/modules/binding-comet-runtime/src/main/java/org/apache/tuscany/sca/binding/comet/runtime/CometServiceBindingProvider.java index b4f45240bc..3aeff7269f 100644 --- a/sca-java-2.x/contrib/modules/binding-comet-runtime/src/main/java/org/apache/tuscany/sca/binding/comet/runtime/CometServiceBindingProvider.java +++ b/sca-java-2.x/contrib/modules/binding-comet-runtime/src/main/java/org/apache/tuscany/sca/binding/comet/runtime/CometServiceBindingProvider.java @@ -26,29 +26,37 @@ import org.apache.tuscany.sca.interfacedef.InterfaceContract; import org.apache.tuscany.sca.interfacedef.Operation; import org.apache.tuscany.sca.provider.ServiceBindingProvider; import org.apache.tuscany.sca.runtime.RuntimeEndpoint; +import org.atmosphere.cpr.MeteorServlet; -// TODO public class CometServiceBindingProvider implements ServiceBindingProvider { private RuntimeEndpoint endpoint; private ServletHost servletHost; public CometServiceBindingProvider(RuntimeEndpoint endpoint, ServletHost servletHost) { + System.out.println("Entering CometServiceBindingProvider constructor..."); this.endpoint = endpoint; this.servletHost = servletHost; } public void start() { + System.out.println("Entering CometServiceBindingProvider#start..."); ComponentService service = endpoint.getService(); Interface serviceInterface = service.getInterfaceContract().getInterface(); for (Operation op : serviceInterface.getOperations()) { - CometServlet servlet = new CometServlet(endpoint, op); + // CometServlet servlet = new CometServlet(endpoint, op); + MeteorServlet servlet = new MeteorServlet(); + servlet.addInitParameter("org.atmosphere.servlet", "org.apache.tuscany.sca.binding.comet.runtime.CometServlet"); String path = endpoint.getBinding().getURI() + "/" + op.getName(); servletHost.addServletMapping(path, servlet); + System.out.println("Adding attributes to servlet context..."); + servlet.getServletContext().setAttribute("org.apache.tuscany.sca.binding.comet.endpoint", endpoint); + servlet.getServletContext().setAttribute("org.apache.tuscany.sca.binding.comet.operation", op); } } public void stop() { + System.out.println("Entering CometServiceBindingProvider#stop..."); ComponentService service = endpoint.getService(); Interface serviceInterface = service.getInterfaceContract().getInterface(); for (Operation op : serviceInterface.getOperations()) { @@ -57,12 +65,13 @@ public class CometServiceBindingProvider implements ServiceBindingProvider { } } - // TODO: Why are these two still on the ServiceBindingProvider interface? public InterfaceContract getBindingInterfaceContract() { + System.out.println("Entering CometServiceBindingProvider#getBindingInterfaceContract..."); return null; } public boolean supportsOneWayInvocation() { + System.out.println("Entering CometServiceBindingProvider#supportsOneWayInvocation..."); return true; } |