Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package org.jacorb.notification.servant;
  
  /*
   *        JacORB - a free Java ORB
   *
   *   Copyright (C) 1997-2012 Gerald Brose / The JacORB Team.
   *
   *   This library is free software; you can redistribute it and/or
   *   modify it under the terms of the GNU Library General Public
  *   License as published by the Free Software Foundation; either
  *   version 2 of the License, or (at your option) any later version.
  *
  *   This library is distributed in the hope that it will be useful,
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  *   Library General Public License for more details.
  *
  *   You should have received a copy of the GNU Library General Public
  *   License along with this library; if not, write to the Free
  *   Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 

Author(s):
Alphonse Bendt
 
 
 public class ProxyPullSupplierImpl
     extends AbstractProxySupplier
     implements ProxyPullSupplierOperations
 {
     private final Any sUndefinedAny;
 
     ////////////////////////////////////////
 
     private PullConsumer pullConsumer_ = null;
 
     ////////////////////////////////////////
 
     public ProxyPullSupplierImpl(IAdmin adminORB orbPOA poaConfiguration configTaskProcessor taskProcessorOfferManager offerManagerSubscriptionManager subscriptionManagerConsumerAdmin consumerAdmin)
             throws ConfigurationException
     {
         super(adminorbpoaconfigtaskProcessorofferManagersubscriptionManagerconsumerAdmin);
 
          = orb.create_any();
     }
 
     public ProxyType MyType()
     {
         return .;
     }
 
     public void disconnect_pull_supplier()
     {
         destroy();
     }
 
     protected void disconnectClient()
     {
         if ( != null)
         {
             .info("disconnect any_pull_consumer");
 
             .disconnect_pull_consumer();
              = null;
         }
     }
 
     public Any pull() throws Disconnected
     {
         checkStillConnected();
 
         try
         {
             Message _event = getMessageBlocking();
             try
             {
                 return _event.toAny();
             }
             finally
             {
                _event.dispose();
            }
        }
        catch (InterruptedException e)
        {
            .error("interrupted"e);
            throw new UNKNOWN();
        }
    }
    public Any try_pull(BooleanHolder hasEventthrows Disconnected
    {
        checkStillConnected();
        hasEvent.value = false;
        Message _message = getMessageNoBlock();
        if (_message != null)
        {
            try
            {
                hasEvent.value = true;
                return _message.toAny();
            }
            finally
            {
                _message.dispose();
            }
        }
        return ;
    }
    public void connect_any_pull_consumer(PullConsumer consumerthrows AlreadyConnected
    {
        .info("connect any_pull_consumer");
        checkIsNotConnected();
         = consumer;
        connectClient(consumer);
    }
    public void enableDelivery()
    {
        // as delivery to this PullSupplier causes no remote calls
        // we can ignore this
    }
    public void disableDelivery()
    {
        // as delivery to this PullSupplier causes no remote calls
        // we can ignore this
    }
    public void deliverPendingData()
    {
        // as we do not actively deliver events we can ignore this
    }
    public Servant newServant()
    {
        return new ProxyPullSupplierPOATie(this);
    }
    protected long getCost()
    {
        return 0;
    }
New to GrepCode? Check out our FAQ X