amoro-format-mixed/amoro-mixed-spark/v3.5/amoro-mixed-spark-3.5/src/main/java/org/apache/amoro/spark/writer/MixedFormatSparkWriteBuilder.java [92:130]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  public Write build() {
    if (table.isKeyedTable()) {
      return new KeyedSparkBatchWrite(table.asKeyedTable(), info, catalog) {
        @Override
        public BatchWrite toBatch() {
          switch (writeMode) {
            case APPEND:
              return asBatchAppend();
            case OVERWRITE_BY_FILTER:
              return asOverwriteByFilter(overwriteExpr);
            case OVERWRITE_DYNAMIC:
              return asDynamicOverwrite();
            case UPSERT:
              return asUpsertWrite();
            default:
              throw new UnsupportedOperationException("unsupported write mode: " + writeMode);
          }
        }
      };
    } else {
      return new UnkeyedSparkBatchWrite(table.asUnkeyedTable(), info, catalog) {
        @Override
        public BatchWrite toBatch() {
          switch (writeMode) {
            case APPEND:
              return asBatchAppend();
            case OVERWRITE_BY_FILTER:
              return asOverwriteByFilter(overwriteExpr);
            case OVERWRITE_DYNAMIC:
              return asDynamicOverwrite();
            case UPSERT:
              return asUpsertWrite();
            default:
              throw new UnsupportedOperationException("unsupported write mode: " + writeMode);
          }
        }
      };
    }
  }
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



amoro-format-mixed/amoro-mixed-spark/v3.2/amoro-mixed-spark-3.2/src/main/java/org/apache/amoro/spark/writer/MixedFormatSparkWriteBuilder.java [92:130]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  public Write build() {
    if (table.isKeyedTable()) {
      return new KeyedSparkBatchWrite(table.asKeyedTable(), info, catalog) {
        @Override
        public BatchWrite toBatch() {
          switch (writeMode) {
            case APPEND:
              return asBatchAppend();
            case OVERWRITE_BY_FILTER:
              return asOverwriteByFilter(overwriteExpr);
            case OVERWRITE_DYNAMIC:
              return asDynamicOverwrite();
            case UPSERT:
              return asUpsertWrite();
            default:
              throw new UnsupportedOperationException("unsupported write mode: " + writeMode);
          }
        }
      };
    } else {
      return new UnkeyedSparkBatchWrite(table.asUnkeyedTable(), info, catalog) {
        @Override
        public BatchWrite toBatch() {
          switch (writeMode) {
            case APPEND:
              return asBatchAppend();
            case OVERWRITE_BY_FILTER:
              return asOverwriteByFilter(overwriteExpr);
            case OVERWRITE_DYNAMIC:
              return asDynamicOverwrite();
            case UPSERT:
              return asUpsertWrite();
            default:
              throw new UnsupportedOperationException("unsupported write mode: " + writeMode);
          }
        }
      };
    }
  }
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



amoro-format-mixed/amoro-mixed-spark/v3.3/amoro-mixed-spark-3.3/src/main/java/org/apache/amoro/spark/writer/MixedFormatSparkWriteBuilder.java [92:130]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  public Write build() {
    if (table.isKeyedTable()) {
      return new KeyedSparkBatchWrite(table.asKeyedTable(), info, catalog) {
        @Override
        public BatchWrite toBatch() {
          switch (writeMode) {
            case APPEND:
              return asBatchAppend();
            case OVERWRITE_BY_FILTER:
              return asOverwriteByFilter(overwriteExpr);
            case OVERWRITE_DYNAMIC:
              return asDynamicOverwrite();
            case UPSERT:
              return asUpsertWrite();
            default:
              throw new UnsupportedOperationException("unsupported write mode: " + writeMode);
          }
        }
      };
    } else {
      return new UnkeyedSparkBatchWrite(table.asUnkeyedTable(), info, catalog) {
        @Override
        public BatchWrite toBatch() {
          switch (writeMode) {
            case APPEND:
              return asBatchAppend();
            case OVERWRITE_BY_FILTER:
              return asOverwriteByFilter(overwriteExpr);
            case OVERWRITE_DYNAMIC:
              return asDynamicOverwrite();
            case UPSERT:
              return asUpsertWrite();
            default:
              throw new UnsupportedOperationException("unsupported write mode: " + writeMode);
          }
        }
      };
    }
  }
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



