voonhous commented on code in PR #17825:
URL: https://github.com/apache/hudi/pull/17825#discussion_r3346404172


##########
hudi-common/src/main/java/org/apache/hudi/common/HoodieCleanStat.java:
##########
@@ -19,207 +19,45 @@
 package org.apache.hudi.common;
 
 import org.apache.hudi.common.model.HoodieCleaningPolicy;
-import org.apache.hudi.common.table.timeline.HoodieInstant;
 import org.apache.hudi.common.util.CollectionUtils;
-import org.apache.hudi.common.util.Option;
+
+import lombok.Builder;
+import lombok.Value;
 
 import java.io.Serializable;
 import java.util.List;
 
 /**
  * Collects stats about a single partition clean operation.
  */
+@Builder(setterPrefix = "with")
+@Value
 public class HoodieCleanStat implements Serializable {
 
   // Policy used
-  private final HoodieCleaningPolicy policy;
+  HoodieCleaningPolicy policy;
   // Partition path cleaned
-  private final String partitionPath;
+  String partitionPath;
   // The patterns that were generated for the delete operation
-  private final List<String> deletePathPatterns;
-  private final List<String> successDeleteFiles;
-  // Files that could not be deleted
-  private final List<String> failedDeleteFiles;
-  // Bootstrap Base Path patterns that were generated for the delete operation
-  private final List<String> deleteBootstrapBasePathPatterns;
-  private final List<String> successDeleteBootstrapBaseFiles;
+  @Builder.Default
+  List<String> deletePathPatterns = CollectionUtils.createImmutableList();
+  @Builder.Default
+  List<String> successDeleteFiles = CollectionUtils.createImmutableList();
   // Files that could not be deleted
-  private final List<String> failedDeleteBootstrapBaseFiles;
+  @Builder.Default
+  List<String> failedDeleteFiles = CollectionUtils.createImmutableList();
   // Earliest commit that was retained in this clean
-  private final String earliestCommitToRetain;
+  String earliestCommitToRetain;
   // Last completed commit timestamp before clean
-  private final String lastCompletedCommitTimestamp;
+  String lastCompletedCommitTimestamp;
+  // Bootstrap Base Path patterns that were generated for the delete operation
+  @Builder.Default
+  List<String> deleteBootstrapBasePathPatterns = 
CollectionUtils.createImmutableList();
+  @Builder.Default
+  List<String> successDeleteBootstrapBaseFiles = 
CollectionUtils.createImmutableList();
+  // Files that could not be deleted
+  @Builder.Default
+  List<String> failedDeleteBootstrapBaseFiles = 
CollectionUtils.createImmutableList();
   // set to true if partition is deleted
-  private final boolean isPartitionDeleted;
-
-  public HoodieCleanStat(HoodieCleaningPolicy policy, String partitionPath, 
List<String> deletePathPatterns,
-      List<String> successDeleteFiles, List<String> failedDeleteFiles, String 
earliestCommitToRetain,String lastCompletedCommitTimestamp) {
-    this(policy, partitionPath, deletePathPatterns, successDeleteFiles, 
failedDeleteFiles, earliestCommitToRetain,
-        lastCompletedCommitTimestamp, CollectionUtils.createImmutableList(), 
CollectionUtils.createImmutableList(),
-        CollectionUtils.createImmutableList(), false);
-  }
-
-  public HoodieCleanStat(HoodieCleaningPolicy policy, String partitionPath, 
List<String> deletePathPatterns,
-                         List<String> successDeleteFiles, List<String> 
failedDeleteFiles,
-                         String earliestCommitToRetain,String 
lastCompletedCommitTimestamp,
-                         List<String> deleteBootstrapBasePathPatterns,
-                         List<String> successDeleteBootstrapBaseFiles,
-                         List<String> failedDeleteBootstrapBaseFiles,
-                         boolean isPartitionDeleted) {
-    this.policy = policy;
-    this.partitionPath = partitionPath;
-    this.deletePathPatterns = deletePathPatterns;
-    this.successDeleteFiles = successDeleteFiles;
-    this.failedDeleteFiles = failedDeleteFiles;
-    this.earliestCommitToRetain = earliestCommitToRetain;
-    this.lastCompletedCommitTimestamp = lastCompletedCommitTimestamp;
-    this.deleteBootstrapBasePathPatterns = deleteBootstrapBasePathPatterns;
-    this.successDeleteBootstrapBaseFiles = successDeleteBootstrapBaseFiles;
-    this.failedDeleteBootstrapBaseFiles = failedDeleteBootstrapBaseFiles;
-    this.isPartitionDeleted = isPartitionDeleted;
-  }
-
-  public HoodieCleaningPolicy getPolicy() {
-    return policy;
-  }
-
-  public String getPartitionPath() {
-    return partitionPath;
-  }
-
-  public List<String> getDeletePathPatterns() {
-    return deletePathPatterns;
-  }
-
-  public List<String> getSuccessDeleteFiles() {
-    return successDeleteFiles;
-  }
-
-  public List<String> getFailedDeleteFiles() {
-    return failedDeleteFiles;
-  }
-
-  public List<String> getDeleteBootstrapBasePathPatterns() {
-    return deleteBootstrapBasePathPatterns;
-  }
-
-  public List<String> getSuccessDeleteBootstrapBaseFiles() {
-    return successDeleteBootstrapBaseFiles;
-  }
-
-  public List<String> getFailedDeleteBootstrapBaseFiles() {
-    return failedDeleteBootstrapBaseFiles;
-  }
-
-  public String getEarliestCommitToRetain() {
-    return earliestCommitToRetain;
-  }
-
-  public String getLastCompletedCommitTimestamp() {
-    return lastCompletedCommitTimestamp;
-  }
-
-  public boolean isPartitionDeleted() {
-    return isPartitionDeleted;
-  }
-
-  public static Builder newBuilder() {
-    return new Builder();
-  }
-
-  /**
-   * A builder used to build {@link HoodieCleanStat}.
-   */
-  public static class Builder {
-
-    private HoodieCleaningPolicy policy;
-    private List<String> deletePathPatterns;
-    private List<String> successDeleteFiles;
-    private List<String> failedDeleteFiles;
-    private String partitionPath;
-    private String earliestCommitToRetain;
-    private String lastCompletedCommitTimestamp;
-    private List<String> deleteBootstrapBasePathPatterns;
-    private List<String> successDeleteBootstrapBaseFiles;
-    private List<String> failedDeleteBootstrapBaseFiles;
-    private boolean isPartitionDeleted;
-
-    public Builder withPolicy(HoodieCleaningPolicy policy) {
-      this.policy = policy;
-      return this;
-    }
-
-    public Builder withDeletePathPattern(List<String> deletePathPatterns) {
-      this.deletePathPatterns = deletePathPatterns;
-      return this;
-    }
-
-    public Builder withSuccessfulDeletes(List<String> successDeleteFiles) {
-      this.successDeleteFiles = successDeleteFiles;
-      return this;
-    }
-
-    public Builder withFailedDeletes(List<String> failedDeleteFiles) {
-      this.failedDeleteFiles = failedDeleteFiles;
-      return this;
-    }
-
-    public Builder withDeleteBootstrapBasePathPatterns(List<String> 
deletePathPatterns) {
-      this.deleteBootstrapBasePathPatterns = deletePathPatterns;
-      return this;
-    }
-
-    public Builder withSuccessfulDeleteBootstrapBaseFiles(List<String> 
successDeleteFiles) {
-      this.successDeleteBootstrapBaseFiles = successDeleteFiles;
-      return this;
-    }
-
-    public Builder withFailedDeleteBootstrapBaseFiles(List<String> 
failedDeleteFiles) {
-      this.failedDeleteBootstrapBaseFiles = failedDeleteFiles;
-      return this;
-    }
-
-    public Builder withPartitionPath(String partitionPath) {
-      this.partitionPath = partitionPath;
-      return this;
-    }
-
-    public Builder withEarliestCommitRetained(Option<HoodieInstant> 
earliestCommitToRetain) {
-      this.earliestCommitToRetain =
-          (earliestCommitToRetain.isPresent()) ? 
earliestCommitToRetain.get().requestedTime() : "";
-      return this;
-    }
-
-    public Builder withLastCompletedCommitTimestamp(String 
lastCompletedCommitTimestamp) {
-      this.lastCompletedCommitTimestamp = lastCompletedCommitTimestamp;
-      return this;
-    }
-
-    public Builder isPartitionDeleted(boolean isPartitionDeleted) {
-      this.isPartitionDeleted = isPartitionDeleted;
-      return this;
-    }
-
-    public HoodieCleanStat build() {
-      return new HoodieCleanStat(policy, partitionPath, deletePathPatterns, 
successDeleteFiles, failedDeleteFiles,
-          earliestCommitToRetain, lastCompletedCommitTimestamp, 
deleteBootstrapBasePathPatterns,
-        successDeleteBootstrapBaseFiles, failedDeleteBootstrapBaseFiles, 
isPartitionDeleted);
-    }
-  }
-
-  @Override
-  public String toString() {
-    return "HoodieCleanStat{"
-        + "policy=" + policy
-        + ", partitionPath='" + partitionPath + '\''
-        + ", deletePathPatterns=" + deletePathPatterns
-        + ", successDeleteFiles=" + successDeleteFiles
-        + ", failedDeleteFiles=" + failedDeleteFiles
-        + ", earliestCommitToRetain='" + earliestCommitToRetain
-        + ", deleteBootstrapBasePathPatterns=" + 
deleteBootstrapBasePathPatterns
-        + ", successDeleteBootstrapBaseFiles=" + 
successDeleteBootstrapBaseFiles
-        + ", failedDeleteBootstrapBaseFiles=" + failedDeleteBootstrapBaseFiles
-        + ", isPartitionDeleted=" + isPartitionDeleted + '\''
-        + '}';
-  }
+  boolean isPartitionDeleted;

Review Comment:
   Done.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to