/* (non-Javadoc)
@see com.ibm.ws.sib.processor.runtime.SIMPRemoteQueuePointControllable#getDestinationHighMsgs()
543202
public long getDestinationHighMsgs()
  {
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) 
      SibTr.entry(tc, "getDestinationHighMsgs");
  
    long destHighMsgs = 0;
    if(xmitPointControl != null)
    {
      destHighMsgs = xmitPointControl.getDestinationHighMsgs();
    } 
  
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) 
      SibTr.exit(tc, "getDestinationHighMsgs", new Long(destHighMsgs));
  
    return destHighMsgs ;
  }
656119
public AisMessage getMessage() {
		AisMessage m = aisParser.parse(aisMessage, nmea.getSource(), padBits);
		return m;
	}
191910
public long getLastTickReceived() throws SIMPControllableNotFoundException, SIMPRuntimeOperationFailedException
  {
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
      SibTr.entry(tc, "getLastTickReceived");

    assertValidControllable();

    long tick = 0;
    Iterator itr = null;
    try
    {
      itr = streamSet.iterator();
    }
    catch (SIResourceException e)
    {
      FFDCFilter.processException(
          e,
          "com.ibm.ws.sib.processor.runtime.TargetStreamSetControl.getLastTickReceived",
          "1:194:1.16",
          this);
      
        SIMPRuntimeOperationFailedException finalE =
          new SIMPRuntimeOperationFailedException(
            nls.getFormattedMessage(
              "INTERNAL_MESSAGING_ERROR_CWSIP0002",
              new Object[] {"TargetStreamSetControl.getLastTickReceived",
                  "1:202:1.16",
                            e},
              null), e);
            
        SibTr.exception(tc, finalE);
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(tc, "getLastTickReceived", finalE);
        throw finalE;
    }
    while(itr.hasNext())
    {
      TargetStream stream = (TargetStream) itr.next();
      long newTick = stream.getLastKnownTick();
      tick = (newTick > tick) ? newTick : tick;
    }   

    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
      SibTr.exit(tc, "getLastTickReceived", new Long(tick));
      
    return tick;
  }
807415
public final Long getMessageWaitTime() {
        /* If the transient has never been set, get the value in the message */
        if (cachedMessageWaitTime == null) {
            cachedMessageWaitTime = (Long) getHdr2().getField(JsHdr2Access.MESSAGEWAITTIME);
        }
        return cachedMessageWaitTime;
    }
220728
public SIMPReceivedMessageRequestInfo getRequestMessageInfo()
  {
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) 
      SibTr.entry(tc, "getRequestMessageInfo");
      
    SIMPReceivedMessageRequestInfo requestInfo = null;
    Object tickValue = aoStream.getTickRange(tick).value;
    if(tickValue instanceof AORequested)
    {
      //this message has been requested but not answered - therefore
      //we provide request info
      AORequested aoReqValue = (AORequested)tickValue;
      
      requestInfo = new ReceivedMessageRequestInfo(
        aoReqValue.startTime,
        aoReqValue.expiryInterval,
        aoReqValue.aock.getSelectionCriterias(),
        aoStream.getDMEVersion(),
        aoReqValue.tick);  
    }
    
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) 
      SibTr.exit(tc, "getRequestMessageInfo", requestInfo);
    return requestInfo;    
  }
1162291
@Override
    public long getNumberOfMessagesReceived()
    {
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        {
            SibTr.entry(this, tc, "getNumberOfMessagesReceived");
            SibTr.exit(tc, "getNumberOfMessagesReceived", Long.valueOf(numberOfMessagesReceived));
        }

        return numberOfMessagesReceived;
    }
1174340
public synchronized SIMessageHandle[] getSIMessageHandles()
   {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.entry(this, tc, "getSIMessageHandles");

      int arrayCount = getInt();              // BIT32 ArrayCount
      if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) SibTr.debug(tc, "arrayCount", arrayCount);

      SIMessageHandle[] msgHandles = new SIMessageHandle[arrayCount];

      JsMessageHandleFactory jsMsgHandleFactory = JsMessageHandleFactory.getInstance();

      // Get arrayCount SIMessageHandles
      for (int msgHandleIndex = 0; msgHandleIndex < msgHandles.length; ++msgHandleIndex)
      {
         long msgHandleValue = getLong();
         byte[] msgHandleUuid = get(8);

         msgHandles[msgHandleIndex] =
            jsMsgHandleFactory.createJsMessageHandle(new SIBUuid8(msgHandleUuid),
                                                     msgHandleValue);
      }

      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(this, tc, "getSIMessageHandles", msgHandles);
      return msgHandles;
   }
904611
public AbstractMessage get( LocalSession localSession , 
				    			TransactionSet transactionSet , 
                                MessageSelector selector ) throws JMSException
    {
    	if (closed)
    		return null;
    	
    	this.lastActivity = System.currentTimeMillis();
    	
    	AbstractMessage msg = null;
    	
        // Search in volatile store first
        if (volatileStore != null)
        {
            msg = getFromStore(localSession, volatileStore, transactionSet, selector);
            
            // Then in persistent store
	        if (msg == null && persistentStore != null)
	        	msg = getFromStore(localSession, persistentStore, transactionSet, selector);
        }
        else
        if (persistentStore != null)
	        msg = getFromStore(localSession, persistentStore, transactionSet, selector);
        
        return msg;
    }
1266458
HashSet getQueuePointGuessSet()
  {
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
      SibTr.entry(tc, "getQueuePointGuessSet");

    HashSet theQueuePoints = null;

    synchronized (_queuePointsGuessSet)
    {
      theQueuePoints = (HashSet) _queuePointsGuessSet.clone();
    }

    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
      SibTr.exit(tc, "getQueuePointGuessSet", theQueuePoints);

    return theQueuePoints;
  }
414699
public SIMPRequestMessageInfo getRequestMessageInfo() throws SIMPRuntimeOperationFailedException
  {
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
      SibTr.entry(tc, "getRequestMessageInfo");

    SIMPRequestMessageInfo requestMessageInfo = null;
    try
    {
      if (State.REQUEST.toString().equals(getState()))
      {
        // This RemoteMessageRequest is in state request so lets get the info
        TickRange tickRange = _aiStream.getTickRange(_tick);
        requestMessageInfo = new RequestMessageInfo((AIRequestedTick)tickRange.value);
      }
    }
    catch(SIMPException e)
    {
      // FFDC
      FFDCFilter.processException(
        e,
        "com.ibm.ws.sib.processor.runtime.RemoteMessageRequest.getRequestMessageInfo",
        "1:407:1.34",
        this);

      SIMPRuntimeOperationFailedException e1 =
        new SIMPRuntimeOperationFailedException(
          nls.getFormattedMessage(
            "INTERNAL_MESSAGING_ERROR_CWSIP0003",
            new Object[] {"RemoteMessageRequest.getRequestMessageInfo",
                          "1:415:1.34",
                          e,
                          _aiStream.getStreamId()},
            null), e);

      SibTr.exception(tc, e1);
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(tc, "getRequestMessageInfo", e1);
      throw e1;
    }

    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
      SibTr.exit(tc, "getRequestMessageInfo", requestMessageInfo);
    return requestMessageInfo;
  }
1159582
@Override
    public JsDestinationAddress getReplyDestination()
    {
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
            SibTr.entry(tc, "getReplyDestination");

        if (!_replySet)
        {
            // Create a JsDestinationAddress from the qualifiedName
            QualifiedDestinationName name = definition.getReplyDestination();

            if (name != null)
                _replyDestination = SIMPUtils.createJsDestinationAddress(
                                                                         name.getDestination(),
                                                                         messageProcessor.getMessagingEngineUuid(),
                                                                         name.getBus());

            _replySet = true;
        }

        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
            SibTr.exit(tc, "getReplyDestination", _replyDestination);

        return _replyDestination;
    }
472458
static public MessageMap getMessageMap(JSchema sfs, int[] choices) throws JMFUninitializedAccessException {
    BigInteger multiChoice = MessageMap.getMultiChoice(choices, sfs);
    return getMessageMap(sfs, multiChoice);
  }
853602
public boolean isReallocationRequired(SIMPMessage msg)
    throws SIResourceException
  {
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
      SibTr.entry(tc, "isReallocationRequired", new Object[] { msg });

    boolean reallocate = false;

    JsMessage jsMsg = msg.getMessage();
    SIBUuid12 streamID = msg.getGuaranteedStreamUuid();
    StreamSet streamSet = getStreamSet();

    if(!streamID.equals(streamSet.getStreamID()))
    {
      SIResourceException e = new SIResourceException(
                                nls.getFormattedMessage(
                                  "INTERNAL_MESSAGING_ERROR_CWSIP0001",
                                  new Object[] {
                                    "com.ibm.ws.sib.processor.gd.SourceStreamManager",
                                    "1:717:1.102"},
                                  null));

      // FFDC
      FFDCFilter.processException(
        e,
        "com.ibm.ws.sib.processor.gd.SourceStreamManager.isReallocationRequired",
        "1:724:1.102",
        this);

      SibTr.exception(tc, e);
      SibTr.error(tc, "INTERNAL_MESSAGING_ERROR_CWSIP0001",
        new Object[] {
          "com.ibm.ws.sib.processor.gd.SourceStreamManager",
          "1:731:1.102"});

      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.exit(tc, "isReallocationRequired", e);

      throw e;
    }

    int priority = msg.getPriority();
    Reliability reliability = msg.getReliability();

    // Get the stream. Note that no synchronization is required here
    // since we can't be here if a flush is in progress.
    SourceStream sourceStream = (SourceStream) streamSet.getStream(priority,reliability);

    if(sourceStream != null)
    {
      TickRange tr = sourceStream.getTickRange(jsMsg.getGuaranteedValueValueTick());

      // Need to check if it was in uncommitting state AND if it is still outside
      // the send window.
      if (tr.isReallocationRequired() && 
          sourceStream.isOutsideSendWindow(jsMsg.getGuaranteedValueValueTick()))
        reallocate = true;
    }

    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
      SibTr.exit(tc, "isReallocationRequired", Boolean.valueOf(reallocate));

    return reallocate;
  }
1325492
public List<String> getMessages() {
        if (mMessages == null || mMessages.size() == 0) {
            mMessages = Collections.singletonList(super.getMessage());
        }
        return mMessages;
    }
696544
long getMessageLockExpiry() {

        if (TraceComponent.isAnyTracingEnabled() && TRACE.isEntryEnabled()) {
            final String methodName = "getMessageLockExpiry";
            SibTr.entry(this, TRACE, methodName);
            SibTr.exit(this, TRACE, methodName, "0");
        }
        return 0;

    }
1072693
@Override
    public String getGatherMessages() {
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
            SibTr.entry(this, tc, "getGatherMessages");

        String gatherMessages = (String) properties.get(GATHER_MESSAGES);

        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
            SibTr.exit(this, tc, "getGatherMessages");
        return gatherMessages;
    }
90354
public short getLowestMessagePriority()
   {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.entry(this, tc, "getLowestMessagePriority");

      if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) SibTr.debug(this, tc, "Joined resource:", joinedResource);

      final short result;
      if (joinedResource != null)
      {
         result = joinedResource.getLowestMessagePriority();
      }
      else
      {
         result = super.getLowestMessagePriority();
      }

      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(this, tc, "getLowestMessagePriority", result);
      return result;
   }