code: public void addChangeData(CmsSitemapChange data) {
  
          if (data == null) {
              return;
          }
          if (!m_entryId.equals(data.m_entryId)) {
              throw new UnsupportedOperationException("Can't add data for a different entry id.");
          }
          m_sitePath = data.m_sitePath;
          if (data.hasChangedName()) {
              m_name = data.m_name;
          }
          if (data.hasChangedPosition()) {
              m_position = data.m_position;
          }
          if (data.hasChangedProperties()) {
              m_propertyModifications.addAll(data.m_propertyModifications);
          }
          if (data.hasNewParent()) {
              m_parentId = data.m_parentId;
          }
  
          if (data.getClipBoardData() != null) {
              m_clipBoardData = data.getClipBoardData();
          }
          if ((data.m_changeType == ChangeType.delete)
              || ((data.m_changeType == ChangeType.remove) && (m_changeType != ChangeType.delete))
              || (m_changeType == ChangeType.clipboardOnly)) {
              m_changeType = data.m_changeType;
          }
      }
docs: Adds the given change data to this change object.<p>
  
  @param data the change data to add