[ 
https://issues.apache.org/jira/browse/GOBBLIN-1673?focusedWorklogId=807616&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-807616
 ]

ASF GitHub Bot logged work on GOBBLIN-1673:
-------------------------------------------

                Author: ASF GitHub Bot
            Created on: 09/Sep/22 23:19
            Start Date: 09/Sep/22 23:19
    Worklog Time Spent: 10m 
      Work Description: homatthew commented on code in PR #3539:
URL: https://github.com/apache/gobblin/pull/3539#discussion_r967536113


##########
gobblin-runtime/src/main/java/org/apache/gobblin/runtime/messaging/data/DynamicWorkUnitSerde.java:
##########
@@ -0,0 +1,112 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.gobblin.runtime.messaging.data;
+
+import com.google.common.base.Charsets;
+import com.google.common.base.Preconditions;
+import com.google.gson.Gson;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import java.nio.charset.Charset;
+import lombok.NonNull;
+
+/**
+ * Library for serializing / deserializing {@link DynamicWorkUnitMessage}. 
This solution maintains implementation
+ * specific fields not specified in the interface and is dependent on {@link 
Gson} to do the serialization / deserialization
+ */
+public final class DynamicWorkUnitSerde {
+  private static final Gson GSON = new Gson();
+  private static final String PROPS_PREFIX = "DynamicWorkUnit.Props";
+  private static final String MESSAGE_IMPLEMENTATION = PROPS_PREFIX + 
".MessageImplementationClass";
+  private static final Charset DEFAULT_CHAR_ENCODING = Charsets.UTF_8;
+
+  private DynamicWorkUnitSerde() {
+    throw new RuntimeException("Cannot instantiate utils class");

Review Comment:
   Fair enough. I'll follow the pattern in 
http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/file/be44bff34df4/src/share/classes/java/util/Arrays.java#l81
 and 
https://github.com/apache/commons-collections/blob/master/src/main/java/org/apache/commons/collections4/CollectionUtils.java#L221-L224
   
   This is addressed in the latest iteration





Issue Time Tracking
-------------------

            Worklog Id:     (was: 807616)
    Remaining Estimate: 69h  (was: 69h 10m)
            Time Spent: 3h  (was: 2h 50m)

> [Helix Dynamic Workunit] Message Schema for splitting workuntis
> ---------------------------------------------------------------
>
>                 Key: GOBBLIN-1673
>                 URL: https://issues.apache.org/jira/browse/GOBBLIN-1673
>             Project: Apache Gobblin
>          Issue Type: New Feature
>          Components: gobblin-helix
>            Reporter: Matthew Ho
>            Assignee: Abhishek Tiwari
>            Priority: Major
>   Original Estimate: 72h
>          Time Spent: 3h
>  Remaining Estimate: 69h
>
> For the Helix Dynamic Workunits, task runners will produce messages 
> indicating the current workunit health and the application master will 
> consume these messages.
> A message will be sent from the task runner to the AM when the task runner 
> experiences lag during ingestion. This ticket is the schema proposal for this 
> message.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to