Package org.jboss.remoting.callback

Examples of org.jboss.remoting.callback.InvokerCallbackHandler


         Collection holders = localServerLocators.values();
         Iterator itr = holders.iterator();
         while(itr.hasNext())
         {
            CallbackHandlerHolder holder = (CallbackHandlerHolder)itr.next();
            InvokerCallbackHandler holderhandler = holder.getHandler();
            boolean handlersEqual = holderhandler.equals(callbackhandler);
            InvokerLocator handlerLocator = holder.getLocator();
            boolean locatorsEqual = handlerLocator.equals(locator);
            if(handlersEqual && locatorsEqual)
            {
               // the entry already exists for this pair, so return null
View Full Code Here


               if (!sessionId.equals(prefix))
                  continue;
               if (index >= 0)
                  listenerId = listenerId.substring(index + 1);
               CallbackHandlerHolder holder = (CallbackHandlerHolder) entry.getValue();
               InvokerCallbackHandler holderHandler = holder.getHandler();
               if(holderHandler.equals(handler))
               {
                  CallbackLocatorHolder locatorHolder = new CallbackLocatorHolder(listenerId, holder.getLocator());
                  holderList.add(locatorHolder);
               }
            }
View Full Code Here

                                        obj);
              
               callbackRequest.setReturnPayload(callbackHandleObject);
            }
           
            InvokerCallbackHandler callbackHandler = callbackContainer.getCallbackHandler();
           
            callbackHandler.handleCallback(callbackRequest);
         }
         else
         {
            log.error("Could not find callback handler to call upon for handleCallback " +
                      "where session id equals " + sessionId);
         }
      }
      else if(InternalInvocation.ADDLISTENER.equals(methodName))
      {
         if(handler == null)
         {
            throw new InvalidConfigurationException(
               "Can not accept a callback listener since there are no ServerInvocationHandlers " +
               "registered. Please add via xml configuration or via the Connector's " +
               "addInvocationHandler() method.");

         }
         ServerInvokerCallbackHandler callbackHandler = getCallbackHandler(invocation);
         if (registerCallbackListeners)
         {
            connectionNotifier.addListenerFirst(callbackHandler);
         }
         handler.addListener(callbackHandler);
      }
      else if(InternalInvocation.REMOVELISTENER.equals(methodName))
      {
         ServerInvokerCallbackHandler callbackHandler = removeCallbackHandler(invocation);
         if(callbackHandler != null)
         {
            if(handler == null)
            {
               throw new InvalidConfigurationException(
                  "Can not remove a callback listener since there are no ServerInvocationHandlers " +
                  "registered.  Please add via xml configuration or via the Connector's " +
                  "addInvocationHandler() method.");
            }
            if (registerCallbackListeners)
            {
               connectionNotifier.removeListener(callbackHandler);
            }
            handler.removeListener(callbackHandler);

            if(trace) { log.trace("ServerInvoker (" + this + ") removing server callback handler " + callbackHandler + "."); }

            callbackHandler.destroy();
         }
         else
         {
            String sessionId = ServerInvokerCallbackHandler.getId(invocation);
            throw new RuntimeException("Can not remove callback listener from target server with " +
               "id of " + sessionId + " as it does not exist as a registered callback listener.");
         }
      }
      else if(InternalInvocation.GETCALLBACKS.equals(methodName))
      {
         ServerInvokerCallbackHandler callbackHandler = getCallbackHandler(invocation);
         if(trace) { log.trace("ServerInvoker (" + this + ") getting callbacks for callback handler " + callbackHandler + "."); }
         result = callbackHandler.getCallbacks(invocation.getRequestPayload());
      }
      else if(InternalInvocation.ACKNOWLEDGECALLBACK.equals(methodName))
      {
         ServerInvokerCallbackHandler callbackHandler = getCallbackHandler(invocation);
         if(trace) { log.trace("ServerInvoker (" + this + ") acknowledge callback on callback handler " + callbackHandler + "."); }
         callbackHandler.acknowledgeCallbacks(param);
      }
      else if(InternalInvocation.ADDCLIENTLISTENER.equals(methodName))
      {
         String sessionId = ServerInvokerCallbackHandler.getId(invocation);
         Object[] params = param.getParameters();

         // the only elements should be the callback handler and possibly the callback handle object
         if(params == null || params.length < 0 || params.length > 3)
         {
            log.debug("Received addClientListener InternalInvocation, but getParameters() " +
                      "returned: " + params);
            throw new RuntimeException(
               "InvokerCallbackHandler and callback handle object (optional) must be supplied as " +
               "the only parameter objects within the InternalInvocation when calling " +
               "addClientListener.");
         }

         InvokerCallbackHandler callbackHandler = (InvokerCallbackHandler)params[0];
         Object callbackHandleObject = params[1];
         CallbackContainer callbackContainer =
            new CallbackContainer(callbackHandler, callbackHandleObject);                         
        
         clientCallbackListener.put(sessionId, callbackContainer);
View Full Code Here

           
            // send callback to all registered listeners
            Iterator itr = localListeners.iterator();
            while(itr.hasNext())
            {
               InvokerCallbackHandler callbackHandler = (InvokerCallbackHandler) itr.next();
              
               try
               {
                  callbackHandler.handleCallback(callback);
               }
               catch(HandleCallbackException e)
               {
                  e.printStackTrace();
               }
View Full Code Here

         receiverConnector.setInvokerLocator(receiverLocator.getLocatorURI());
         log.info(receiverLocator.getLocatorURI());
         receiverConnector.start();
         receiverLocator = receiverConnector.getLocator();
         log.info(receiverConnector.getInvokerLocator());
         InvokerCallbackHandler receiverHandler = new ChatReceiverHandler(talkFrame);
         serverClient.addListener(receiverHandler, receiverLocator, owner);
      }
      catch (MalformedURLException e)
      {
         log.error(e);
View Full Code Here

         InvokerLocator receiverLocator = new InvokerLocator(receiverLocatorString);
         receiverConnector.setInvokerLocator(receiverLocator.getLocatorURI());
         log.info(receiverLocator.getLocatorURI());
         receiverConnector.start();
         receiverLocator = receiverConnector.getLocator();
         InvokerCallbackHandler receiverHandler = new ChatReceiverHandler(talkFrame);
         serverClient.addListener(receiverHandler, receiverLocator, newMember);
      }
      catch (MalformedURLException e)
      {
         log.error(e);
View Full Code Here

               // create new callback message
               Callback callback = new Callback("Callback " + callbackCounter++ + ": This is the payload of callback invocation.");
               Iterator itr = listeners.iterator();
               while(itr.hasNext())
               {
                  InvokerCallbackHandler callbackHandler = (InvokerCallbackHandler) itr.next();
                  try
                  {
                     callbackHandler.handleCallback(callback);
                  }
                  catch(HandleCallbackException e)
                  {
                     e.printStackTrace();
                  }
View Full Code Here

               callback.setReturnPayload(returnPayload);
              
               Iterator itr = listeners.iterator();
               while(itr.hasNext())
               {
                  InvokerCallbackHandler callbackHandler = (InvokerCallbackHandler) itr.next();
                  try
                  {
                     callbackHandler.handleCallback(callback);
                  }
                  catch(HandleCallbackException e)
                  {
                     e.printStackTrace();
                  }
View Full Code Here

   public void testPullCallbackAcknowledgements()
   {
      try
      {
         // Register callback handler.
         InvokerCallbackHandler callbackHandler = new NonAcknowledgingCallbackHandler();
         client.addListener(callbackHandler);
        
         // Request callbacks from server.
         client.invoke(CallbackAcknowledgeServer.APPLICATION_ACKNOWLDEGEMENTS);
        
View Full Code Here

   public void testPolledCallbackApplicationAcknowledgements()
   {
      try
      {
         // Register callback handler.
         InvokerCallbackHandler callbackHandler = new AcknowledgingCallbackHandler(client);
         HashMap metadata = new HashMap();
         metadata.put(CallbackPoller.CALLBACK_POLL_PERIOD, "1000");
         client.addListener(callbackHandler, metadata);
        
         // Request callbacks from server.
View Full Code Here

TOP

Related Classes of org.jboss.remoting.callback.InvokerCallbackHandler

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.