code: public void setBoundary (@Nonnull final byte [] aBoundary) throws MultipartIllegalBoundaryException
    {
      ValueEnforcer.notNull (aBoundary, "Boundary");
      if (aBoundary.length != m_nBoundaryLength - BOUNDARY_PREFIX.length)
        throw new MultipartIllegalBoundaryException ("The length of a boundary token can not be changed");
      System.arraycopy (aBoundary, 0, m_aBoundary, BOUNDARY_PREFIX.length, aBoundary.length);
    }
docs: <p>
  Changes the boundary token used for partitioning the stream.
  <p>
  This method allows single pass processing of nested multipart streams.
  <p>
  The boundary token of the nested stream is <code>required</code> to be of
  the same length as the boundary token in parent stream.
  <p>
  Restoring the parent stream boundary token after processing of a nested
  stream is left to the application.
  
  @param aBoundary
  The boundary to be used for parsing of the nested stream.
  @throws MultipartIllegalBoundaryException
  if the <code>boundary</code> has a different length than the one
  being currently parsed.