docs: public CreateMediaResourceResponse createMediaResource(
              String sourceUrl,
              String title,
              String description,
              String transcodingPresetGroupName,
              int priority,
              String mode) {
          checkStringNotEmpty(sourceUrl, "sourceUrl should not be null or empty!");
  
          // generate media Id
          GenerateMediaIdResponse generateMediaIdresponse;
          if (mode == null) {
              generateMediaIdresponse = applyMedia();
          } else {
              generateMediaIdresponse = applyMedia(mode);
          }
          String mediaId = generateMediaIdresponse.getMediaId();
          String targetBucket = generateMediaIdresponse.getSourceBucket();
          String targetKey = generateMediaIdresponse.getSourceKey();
  
          // fetch to temp bucket
          bosClient.fetchObject(targetBucket, targetKey, sourceUrl);
  
          // create mediaId
          InternalCreateMediaRequest request =
                  new InternalCreateMediaRequest()
                          .withMediaId(mediaId)
                          .withTitle(title)
                          .withDescription(description)
                          .withTranscodingPresetGroupName(transcodingPresetGroupName)
                          .withPriority(priority);
          InternalCreateMediaResponse internalResponse = processMedia(request);
  
          CreateMediaResourceResponse response = new CreateMediaResourceResponse();
          response.setMediaId(internalResponse.getMediaId());
  
          return response;
      }