code: public synchronized void addSlice(CommsByteBuffer bufferContainingSlice, boolean last)
     {
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.entry(this, tc, "addSlice", new Object[]{bufferContainingSlice, last});
        
        slices.add(bufferContainingSlice.getDataSlice());
        
        // If this is the last slice, calculate the message length
        if (last) 
        {
           for (DataSlice slice : slices)
           {
              messageLength += slice.getLength();
           }
           complete = true;
        }
        
        if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) SibTr.debug(this, tc, "Message now consists of " + slices.size() + " slices");
        
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(this, tc, "addSlice");
     }
docs: This method will add a data slice to the list of slices for this message.
  
  @param bufferContainingSlice
  @param last