code: public OutputStream openStream() throws IllegalStateException {
          if (mClass != null) {
              throw new IllegalStateException("New class has already been defined");
          }
          ByteArrayOutputStream data = mData;
          if (data != null) {
              throw new IllegalStateException("Stream already opened");
          }
          mData = data = new ByteArrayOutputStream();
          return data;
      }
docs: Open a stream to define the new class into.
  
  @throws IllegalStateException if new class has already been defined
  or if a stream has already been opened