This is an automated email from the ASF dual-hosted git repository.

adoroszlai pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ozone.git


The following commit(s) were added to refs/heads/master by this push:
     new dfb564b7702 HDDS-13938. Extract builderFromProtobuf methods (#9303)
dfb564b7702 is described below

commit dfb564b77022efd27f0529007a77aa143ee468f0
Author: GUAN-HAO HUANG <[email protected]>
AuthorDate: Mon Nov 17 00:00:19 2025 +0800

    HDDS-13938. Extract builderFromProtobuf methods (#9303)
---
 .../hadoop/ozone/om/helpers/OmBucketArgs.java      | 16 +++++++---
 .../hadoop/ozone/om/helpers/OmBucketInfo.java      | 37 +++++++++++++++++-----
 .../hadoop/ozone/om/helpers/OmDirectoryInfo.java   | 17 +++++++---
 .../apache/hadoop/ozone/om/helpers/OmKeyInfo.java  |  9 ++++--
 .../ozone/om/helpers/OmMultipartKeyInfo.java       | 19 ++++++++---
 .../hadoop/ozone/om/helpers/OmVolumeArgs.java      |  9 ++++--
 .../hadoop/ozone/om/helpers/RepeatedOmKeyInfo.java |  8 +++--
 .../hadoop/ozone/om/helpers/SnapshotInfo.java      | 18 ++++++++---
 .../hadoop/ozone/om/helpers/OmPrefixInfo.java      | 17 +++++++---
 9 files changed, 114 insertions(+), 36 deletions(-)

diff --git 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmBucketArgs.java
 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmBucketArgs.java
index f0c0c2deea6..356d9a3fcd8 100644
--- 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmBucketArgs.java
+++ 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmBucketArgs.java
@@ -335,10 +335,10 @@ public BucketArgs getProtobuf() {
   }
 
   /**
-   * Parses BucketInfo protobuf and creates OmBucketArgs.
-   * @return instance of OmBucketArgs
+   * Parses BucketInfo protobuf and creates OmBucketArgs Builder.
+   * @return Builder instance
    */
-  public static OmBucketArgs getFromProtobuf(BucketArgs bucketArgs) {
+  public static Builder builderFromProtobuf(BucketArgs bucketArgs) {
     final OmBucketArgs.Builder builder = newBuilder()
         .setVolumeName(bucketArgs.getVolumeName())
         .setBucketName(bucketArgs.getBucketName())
@@ -372,6 +372,14 @@ public static OmBucketArgs getFromProtobuf(BucketArgs 
bucketArgs) {
           OMPBHelper.convert(bucketArgs.getBekInfo()));
     }
 
-    return builder.build();
+    return builder;
+  }
+
+  /**
+   * Parses BucketInfo protobuf and creates OmBucketArgs.
+   * @return instance of OmBucketArgs
+   */
+  public static OmBucketArgs getFromProtobuf(BucketArgs bucketArgs) {
+    return builderFromProtobuf(bucketArgs).build();
   }
 }
diff --git 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmBucketInfo.java
 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmBucketInfo.java
index b10dcbb2822..c8c1a038139 100644
--- 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmBucketInfo.java
+++ 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmBucketInfo.java
@@ -653,20 +653,21 @@ public BucketInfo getProtobuf() {
   }
 
   /**
-   * Parses BucketInfo protobuf and creates OmBucketInfo.
+   * Parses BucketInfo protobuf and creates OmBucketInfo Builder.
    * @param bucketInfo
-   * @return instance of OmBucketInfo
+   * @return Builder instance
    */
-  public static OmBucketInfo getFromProtobuf(BucketInfo bucketInfo) {
-    return getFromProtobuf(bucketInfo, null);
+  public static Builder builderFromProtobuf(BucketInfo bucketInfo) {
+    return builderFromProtobuf(bucketInfo, null);
   }
 
   /**
-   * Parses BucketInfo protobuf and creates OmBucketInfo.
+   * Parses BucketInfo protobuf and creates OmBucketInfo Builder.
    * @param bucketInfo
-   * @return instance of OmBucketInfo
+   * @param buckLayout
+   * @return Builder instance
    */
-  public static OmBucketInfo getFromProtobuf(BucketInfo bucketInfo,
+  public static Builder builderFromProtobuf(BucketInfo bucketInfo,
       BucketLayout buckLayout) {
     Builder obib = OmBucketInfo.newBuilder()
         .setVolumeName(bucketInfo.getVolumeName())
@@ -717,7 +718,27 @@ public static OmBucketInfo getFromProtobuf(BucketInfo 
bucketInfo,
     if (bucketInfo.hasOwner()) {
       obib.setOwner(bucketInfo.getOwner());
     }
-    return obib.build();
+    return obib;
+  }
+
+  /**
+   * Parses BucketInfo protobuf and creates OmBucketInfo.
+   * @param bucketInfo
+   * @return instance of OmBucketInfo
+   */
+  public static OmBucketInfo getFromProtobuf(BucketInfo bucketInfo) {
+    return builderFromProtobuf(bucketInfo).build();
+  }
+
+  /**
+   * Parses BucketInfo protobuf and creates OmBucketInfo.
+   * @param bucketInfo
+   * @param buckLayout
+   * @return instance of OmBucketInfo
+   */
+  public static OmBucketInfo getFromProtobuf(BucketInfo bucketInfo,
+      BucketLayout buckLayout) {
+    return builderFromProtobuf(bucketInfo, buckLayout).build();
   }
 
   @Override
diff --git 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmDirectoryInfo.java
 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmDirectoryInfo.java
index fcd5f4a7600..c0fc58f3537 100644
--- 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmDirectoryInfo.java
+++ 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmDirectoryInfo.java
@@ -209,11 +209,11 @@ public DirectoryInfo getProtobuf() {
   }
 
   /**
-   * Parses DirectoryInfo protobuf and creates OmPrefixInfo.
+   * Parses DirectoryInfo protobuf and creates OmDirectoryInfo Builder.
    * @param dirInfo
-   * @return instance of OmDirectoryInfo
+   * @return Builder instance
    */
-  public static OmDirectoryInfo getFromProtobuf(DirectoryInfo dirInfo) {
+  public static Builder builderFromProtobuf(DirectoryInfo dirInfo) {
     OmDirectoryInfo.Builder opib = OmDirectoryInfo.newBuilder()
             .setName(dirInfo.getName())
             .setCreationTime(dirInfo.getCreationTime())
@@ -235,7 +235,16 @@ public static OmDirectoryInfo 
getFromProtobuf(DirectoryInfo dirInfo) {
     if (dirInfo.hasOwnerName()) {
       opib.setOwner(dirInfo.getOwnerName());
     }
-    return opib.build();
+    return opib;
+  }
+
+  /**
+   * Parses DirectoryInfo protobuf and creates OmDirectoryInfo.
+   * @param dirInfo
+   * @return instance of OmDirectoryInfo
+   */
+  public static OmDirectoryInfo getFromProtobuf(DirectoryInfo dirInfo) {
+    return builderFromProtobuf(dirInfo).build();
   }
 
   @Override
diff --git 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmKeyInfo.java
 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmKeyInfo.java
index 0cc2a8ff4b9..232f0c82fe4 100644
--- 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmKeyInfo.java
+++ 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmKeyInfo.java
@@ -805,7 +805,7 @@ private KeyInfo getProtobuf(boolean ignorePipeline, String 
fullKeyName,
     return kb.build();
   }
 
-  public static OmKeyInfo getFromProtobuf(KeyInfo keyInfo) {
+  public static Builder builderFromProtobuf(KeyInfo keyInfo) {
     if (keyInfo == null) {
       return null;
     }
@@ -858,7 +858,12 @@ public static OmKeyInfo getFromProtobuf(KeyInfo keyInfo) {
     }
     // not persisted to DB. FileName will be filtered out from keyName
     builder.setFileName(OzoneFSUtils.getFileName(keyInfo.getKeyName()));
-    return builder.build();
+    return builder;
+  }
+
+  public static OmKeyInfo getFromProtobuf(KeyInfo keyInfo) {
+    Builder builder = builderFromProtobuf(keyInfo);
+    return builder == null ? null : builder.build();
   }
 
   @Override
diff --git 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmMultipartKeyInfo.java
 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmMultipartKeyInfo.java
index 30bd2864759..7bdf31485cb 100644
--- 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmMultipartKeyInfo.java
+++ 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmMultipartKeyInfo.java
@@ -288,11 +288,11 @@ public OmMultipartKeyInfo build() {
   }
 
   /**
-   * Construct OmMultipartInfo from MultipartKeyInfo proto object.
+   * Construct OmMultipartInfo Builder from MultipartKeyInfo proto object.
    * @param multipartKeyInfo
-   * @return OmMultipartKeyInfo
+   * @return Builder instance
    */
-  public static OmMultipartKeyInfo getFromProto(
+  public static Builder builderFromProto(
       MultipartKeyInfo multipartKeyInfo) {
     final SortedMap<Integer, PartKeyInfo> list = new TreeMap<>();
     multipartKeyInfo.getPartKeyInfoListList().forEach(partKeyInfo ->
@@ -311,8 +311,17 @@ public static OmMultipartKeyInfo getFromProto(
         .setPartKeyInfoList(list)
         .setObjectID(multipartKeyInfo.getObjectID())
         .setUpdateID(multipartKeyInfo.getUpdateID())
-        .setParentID(multipartKeyInfo.getParentID())
-        .build();
+        .setParentID(multipartKeyInfo.getParentID());
+  }
+
+  /**
+   * Construct OmMultipartInfo from MultipartKeyInfo proto object.
+   * @param multipartKeyInfo
+   * @return OmMultipartKeyInfo
+   */
+  public static OmMultipartKeyInfo getFromProto(
+      MultipartKeyInfo multipartKeyInfo) {
+    return builderFromProto(multipartKeyInfo).build();
   }
 
   /**
diff --git 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmVolumeArgs.java
 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmVolumeArgs.java
index 435543d8717..bb5086d4521 100644
--- 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmVolumeArgs.java
+++ 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmVolumeArgs.java
@@ -403,7 +403,7 @@ public VolumeInfo getProtobuf() {
         .build();
   }
 
-  public static OmVolumeArgs getFromProtobuf(VolumeInfo volInfo) {
+  public static Builder builderFromProtobuf(VolumeInfo volInfo) {
     return new Builder(OzoneAclUtil.fromProtobuf(volInfo.getVolumeAclsList()))
         .setAdminName(volInfo.getAdminName())
         .setOwnerName(volInfo.getOwnerName())
@@ -416,8 +416,11 @@ public static OmVolumeArgs getFromProtobuf(VolumeInfo 
volInfo) {
         .setModificationTime(volInfo.getModificationTime())
         .setObjectID(volInfo.getObjectID())
         .setUpdateID(volInfo.getUpdateID())
-        .setRefCount(volInfo.getRefCount())
-        .build();
+        .setRefCount(volInfo.getRefCount());
+  }
+
+  public static OmVolumeArgs getFromProtobuf(VolumeInfo volInfo) {
+    return builderFromProtobuf(volInfo).build();
   }
 
   @Override
diff --git 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/RepeatedOmKeyInfo.java
 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/RepeatedOmKeyInfo.java
index 90e38d8b878..0f10832114e 100644
--- 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/RepeatedOmKeyInfo.java
+++ 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/RepeatedOmKeyInfo.java
@@ -109,7 +109,7 @@ public List<OmKeyInfo> cloneOmKeyInfoList() {
     return new ArrayList<>(omKeyInfoList);
   }
 
-  public static RepeatedOmKeyInfo getFromProto(RepeatedKeyInfo 
repeatedKeyInfo) {
+  public static Builder builderFromProto(RepeatedKeyInfo repeatedKeyInfo) {
     List<OmKeyInfo> list = new ArrayList<>();
     for (KeyInfo k : repeatedKeyInfo.getKeyInfoList()) {
       list.add(OmKeyInfo.getFromProtobuf(k));
@@ -118,7 +118,11 @@ public static RepeatedOmKeyInfo 
getFromProto(RepeatedKeyInfo repeatedKeyInfo) {
     if (repeatedKeyInfo.hasBucketId()) {
       builder.setBucketId(repeatedKeyInfo.getBucketId());
     }
-    return builder.build();
+    return builder;
+  }
+
+  public static RepeatedOmKeyInfo getFromProto(RepeatedKeyInfo 
repeatedKeyInfo) {
+    return builderFromProto(repeatedKeyInfo).build();
   }
 
   /**
diff --git 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/SnapshotInfo.java
 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/SnapshotInfo.java
index a26422cd81f..2e899aeca6e 100644
--- 
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/SnapshotInfo.java
+++ 
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/SnapshotInfo.java
@@ -447,11 +447,11 @@ public OzoneManagerProtocolProtos.SnapshotInfo 
getProtobuf() {
   }
 
   /**
-   * Parses SnapshotInfo protobuf and creates SnapshotInfo.
+   * Parses SnapshotInfo protobuf and creates SnapshotInfo Builder.
    * @param snapshotInfoProto protobuf
-   * @return instance of SnapshotInfo
+   * @return Builder instance
    */
-  public static SnapshotInfo getFromProtobuf(
+  public static Builder builderFromProtobuf(
       OzoneManagerProtocolProtos.SnapshotInfo snapshotInfoProto) {
 
     SnapshotInfo.Builder osib = SnapshotInfo.newBuilder()
@@ -527,7 +527,17 @@ public static SnapshotInfo getFromProtobuf(
     osib.setSnapshotPath(snapshotInfoProto.getSnapshotPath())
         .setDbTxSequenceNumber(snapshotInfoProto.getDbTxSequenceNumber());
 
-    return osib.build();
+    return osib;
+  }
+
+  /**
+   * Parses SnapshotInfo protobuf and creates SnapshotInfo.
+   * @param snapshotInfoProto protobuf
+   * @return instance of SnapshotInfo
+   */
+  public static SnapshotInfo getFromProtobuf(
+      OzoneManagerProtocolProtos.SnapshotInfo snapshotInfoProto) {
+    return builderFromProtobuf(snapshotInfoProto).build();
   }
 
   @Override
diff --git 
a/hadoop-ozone/interface-storage/src/main/java/org/apache/hadoop/ozone/om/helpers/OmPrefixInfo.java
 
b/hadoop-ozone/interface-storage/src/main/java/org/apache/hadoop/ozone/om/helpers/OmPrefixInfo.java
index 1644100f8fb..fe046bac0aa 100644
--- 
a/hadoop-ozone/interface-storage/src/main/java/org/apache/hadoop/ozone/om/helpers/OmPrefixInfo.java
+++ 
b/hadoop-ozone/interface-storage/src/main/java/org/apache/hadoop/ozone/om/helpers/OmPrefixInfo.java
@@ -174,11 +174,11 @@ public PersistedPrefixInfo getProtobuf() {
   }
 
   /**
-   * Parses PrefixInfo protobuf and creates OmPrefixInfo.
+   * Parses PrefixInfo protobuf and creates OmPrefixInfo Builder.
    * @param prefixInfo
-   * @return instance of OmPrefixInfo
+   * @return Builder instance
    */
-  public static OmPrefixInfo getFromProtobuf(PersistedPrefixInfo prefixInfo) {
+  public static Builder builderFromProtobuf(PersistedPrefixInfo prefixInfo) {
     OmPrefixInfo.Builder opib = OmPrefixInfo.newBuilder()
         .setName(prefixInfo.getName());
     if (prefixInfo.getMetadataList() != null) {
@@ -196,7 +196,16 @@ public static OmPrefixInfo 
getFromProtobuf(PersistedPrefixInfo prefixInfo) {
     if (prefixInfo.hasUpdateID()) {
       opib.setUpdateID(prefixInfo.getUpdateID());
     }
-    return opib.build();
+    return opib;
+  }
+
+  /**
+   * Parses PrefixInfo protobuf and creates OmPrefixInfo.
+   * @param prefixInfo
+   * @return instance of OmPrefixInfo
+   */
+  public static OmPrefixInfo getFromProtobuf(PersistedPrefixInfo prefixInfo) {
+    return builderFromProtobuf(prefixInfo).build();
   }
 
   @Override


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to