code: @Override
      void updateDataFields(int why) {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(this, tc, "updateDataFields");
  
          super.updateDataFields(why);
          setFlags();
          /* If the cachedMessageWaitTime transient has ever been set, write it back */
          if (cachedMessageWaitTime != null) {
              getHdr2().setField(JsHdr2Access.MESSAGEWAITTIME, cachedMessageWaitTime);
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(this, tc, "updateDataFields");
      }
docs: Helper method used by the JMO to rewrite any transient data back into the
  underlying JMF message.
  Package level visibility as used by the JMO.
  
  @param why The reason why updateDataFields is being called