code: @Override
      public String modifyDatastreamByValue(String pid,
                                            String dsID,
                                            org.fcrepo.server.types.gen.ArrayOfString altIDs,
                                            String dsLabel,
                                            String mimeType,
                                            String formatURI,
                                            DataHandler dsContent,
                                            String checksumType,
                                            String checksum,
                                            String logMessage,
                                            boolean force) {
          LOG.debug("start: modifyDatastreamByValue, {}, {}", pid, dsID);
          assertInitialized();
          try {
              MessageContext ctx = context.getMessageContext();
              InputStream byteStream = null;
              if (dsContent != null) {
                  byteStream = dsContent.getInputStream();
              }
              String[] altIDsArray = null;
              if (altIDs != null && altIDs.getItem() != null) {
                  altIDsArray = altIDs.getItem().toArray(EMPTY_STRING_ARRAY);
              }
              return DateUtility.convertDateToString(m_management
                      .modifyDatastreamByValue(ReadOnlyContext
                                                       .getSoapContext(ctx),
                                               pid,
                                               dsID,
                                               altIDsArray,
                                               dsLabel,
                                               mimeType,
                                               formatURI,
                                               byteStream,
                                               checksumType,
                                               checksum,
                                               logMessage,
                                               null));
          } catch (Throwable th) {
              LOG.error("Error modifying datastream by value", th);
              throw CXFUtility.getFault(th);
          } finally {
              LOG.debug("end: modifyDatastreamByValue, {}, {}", pid, dsID);
          }
      }
docs: /*
  (non-Javadoc)
  @see org.fcrepo.server.management.FedoraAPIMMTOM#modifyDatastreamByValue(
  String pid ,)String dsID ,)org.fcrepo.server.types.mtom.gen.ArrayOfString
  altIDs ,)String dsLabel ,)String mimeType ,)String formatURI
  ,)javax.activation.DataHandler dsContent ,)String checksumType ,)String
  checksum ,)String logMessage ,)boolean force )*