This method uses a Value message to write an Uncommitted tick
into the stream.
It is called at preCommit time.

@param m The value message to write to the stream
963451
public void writeUncommitted(SIMPMessage m)
                    throws SIResourceException
    {
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
            SibTr.entry(tc, "writeUncommitted", new Object[] { m });

        TickRange tr = null;

        JsMessage jsMsg = m.getMessage();
        long stamp = jsMsg.getGuaranteedValueValueTick();

        long starts = jsMsg.getGuaranteedValueStartTick();
        long ends = jsMsg.getGuaranteedValueEndTick();
        long completedPrefix;

        tr = TickRange.newUncommittedTick(stamp);
        tr.startstamp = starts;
        tr.endstamp = ends;

        if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
        {
            SibTr.debug(tc, "writeUncommitted at: " + stamp + " with Silence from: " + starts + " to " + ends + " on Stream " + streamID);
        }

        synchronized (this)
        {
            // write into stream
            oststream.writeCombinedRange(tr);

            completedPrefix = oststream.getCompletedPrefix();

            sendSilence(starts, completedPrefix);

            // SIB0105
            // If this is the first uncommitted messages to be added to the stream, start off the 
            // blocked message health state timer. This will check back in the future to see if the
            // message successfully sent.
            if (blockedStreamAlarm == null)
            {
                blockedStreamAlarm = new BlockedStreamAlarm(this, getCompletedPrefix());
                am.create(GDConfig.BLOCKED_STREAM_HEALTH_CHECK_INTERVAL, blockedStreamAlarm);
            }

        } // end synchronized

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

    }
1094195
public void writeByte(byte value) throws UnsupportedEncodingException {
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.entry(this, tc, "writeByte", Byte.valueOf(value));
    getBodyList().add(Byte.valueOf(value));
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(this, tc, "writeByte");
  }
811856
public void add(Metric m) {
        final MetricName key = m.getName();
        metrics_.put(key, m);
    }
346638
public void markAsUnspent() {
        if (parent != null)
            if (log.isDebugEnabled()) log.debug("Un-marked {}:{} as spent by {}", getParentTransactionHash(), getIndex(), spentBy);
        else
            if (log.isDebugEnabled()) log.debug("Un-marked floating output as spent by {}", spentBy);
        availableForSpending = true;
        spentBy = null;
    }
1145809
@Override
	public void writeObject(Object value) throws JMSException
    {
        if (value == null)
            throw new NullPointerException(); // [JMS Spec]
        
        if (value instanceof Boolean)
            writeBoolean(((Boolean)value).booleanValue());
        else
        if (value instanceof Byte)
            writeByte(((Byte)value).byteValue());
        else
        if (value instanceof Short)
            writeShort(((Short)value).shortValue());
        else
        if (value instanceof Integer)
            writeInt(((Integer)value).intValue());
        else
        if (value instanceof Long)
            writeLong(((Long)value).longValue());
        else
        if (value instanceof Float)
            writeFloat(((Float)value).floatValue());
        else
        if (value instanceof Double)
            writeDouble(((Double)value).doubleValue());
        else
        if (value instanceof String)
            writeUTF((String)value);
        else
        if (value instanceof byte[])
            writeBytes((byte[])value);
        else
            throw new MessageFormatException("Unsupported property value type : "+value.getClass().getName());
    }
1208090
public void writeValue(final int length, final int value)
		throws EncodingException
	{
		if (length > 31) {
			throw ErrorFactory.createEncodingException(
					ErrorKeys.DIFFTOOL_ENCODING_VALUE_OUT_OF_RANGE,
					"more than maximum length: " + value);
		}

		for (int i = length - 1; i >= 0; i--) {
			writeBit((value >> i) & 1);
		}
	}
923671
private void writeAccepted(long tick)
  {
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
      SibTr.entry(
        tc,
        "writeAccepted",
        new Object[] { Long.valueOf(tick)});

    AIAcceptedTick at = writeAcceptedNoTimeout(tick);
    _initialAcceptedTOM.addTimeoutEntry(at);

    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
      SibTr.exit(tc, "writeAccepted");
  }
904394
@Override
    public void write(final T value, boolean incomplete)
    {
        //  Place the value to the queue, add new terminator element.
        queue.push(value);

        //  Move the "flush up to here" pointer.
        if (!incomplete) {
            f = queue.backPos();
        }
    }
169383
public void setValue(T value)
    {
        try
        {
            lock.writeLock().lock();
            this.value = value;
        }
        finally
        {
            lock.writeLock().unlock();
        }
    }
1355612
@Override
    protected void applyValueUpdate(final T value) throws NotAvailableException {

        if(value == null) {
            throw new NotAvailableException("Value");
        }

        synchronized (VALUE_LOCK) {
            this.value = value;
            this.valueFuture.complete(value);
            VALUE_LOCK.notifyAll();
        }
    }
261208
public final static void writeMediumInt(ByteBuffer out, int value) {
        out.put((byte) ((value >>> 16) & 0xff));
        out.put((byte) ((value >>> 8) & 0xff));
        out.put((byte) (value & 0xff));
    }
1290852
protected void writingMessage(Packet message) {
        if (message.getMessage() instanceof VideoData) {
            Number streamId = message.getHeader().getStreamId();
            final AtomicInteger value = new AtomicInteger();
            AtomicInteger old = pendingVideos.putIfAbsent(streamId.doubleValue(), value);
            if (old == null) {
                old = value;
            }
            old.incrementAndGet();
        }
    }
1205183
public void tick() throws InterruptedException {
    if (mPreviousTickMs != 0) {
      long executionTimeMs = mClock.millis() - mPreviousTickMs;
      if (executionTimeMs > mIntervalMs) {
        mLogger.warn("{} last execution took {} ms. Longer than the interval {}", mThreadName,
            executionTimeMs, mIntervalMs);
      } else {
        mSleeper.sleep(Duration.ofMillis(mIntervalMs - executionTimeMs));
      }
    }
    mPreviousTickMs = mClock.millis();
  }
71980
public void writeFloat(float value) throws UnsupportedEncodingException {
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.entry(this, tc, "writeFloat", new Float(value));
    getBodyList().add(new Float(value));
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(this, tc, "writeFloat");
  }
993213
private void tickIfNecessary() {
        final long oldTick = lastTick.get();
        final long newTick = clock.tick();
        final long age = newTick - oldTick;
        if (age > TICK_INTERVAL) {
            final long newIntervalStartTick = newTick - age % TICK_INTERVAL;
            if (lastTick.compareAndSet(oldTick, newIntervalStartTick)) {
                final long requiredTicks = age / TICK_INTERVAL;
                for (long i = 0; i < requiredTicks; i++) {
                    m15Rate.tick();
                    m120Rate.tick();
                }
            }
        }
    }
1062173
private void throwmsg(String m) throws NamingException {
    String msg = m + " at line " + in.pos + " record=" + crec;
    in.skip();
    throw new NamingException(msg);
  }
1372447
@Override
	public void writeBytes(byte[] value, int offset, int length) throws JMSException
    {
        try
        {
            getOutput().write(value,offset,length);
        }
        catch (IOException e)
        {
            throw new FFMQException("Cannot write message body","IO_ERROR",e);
        }
    }