You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hop.apache.org by ha...@apache.org on 2021/12/17 11:05:52 UTC

[incubator-hop] branch master updated: Fixed 10 reliability issues pointed by Sonar (#1225)

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

hansva pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-hop.git


The following commit(s) were added to refs/heads/master by this push:
     new e342c93  Fixed 10 reliability issues pointed by Sonar (#1225)
e342c93 is described below

commit e342c93adbffc423db266d0b7d5e21de264a95d1
Author: Gabriel Dutra <gv...@gmail.com>
AuthorDate: Fri Dec 17 03:05:46 2021 -0800

    Fixed 10 reliability issues pointed by Sonar (#1225)
    
    * fixed sonar vulnerabities issues.
    
    * fixed sonar issues
---
 .../transforms/serverstatus/GetServerStatus.java   |  8 ++--
 .../apache/hop/pipeline/transforms/tika/Tika.java  | 25 +++--------
 .../hop/pipeline/transforms/tika/TikaOutput.java   | 22 +++++-----
 .../hop/ui/core/gui/GuiCompositeWidgets.java       | 50 ++++++++++++----------
 .../hop/ui/core/metadata/MetadataEditor.java       |  5 +++
 5 files changed, 51 insertions(+), 59 deletions(-)

diff --git a/plugins/transforms/serverstatus/src/main/java/org/apache/hop/pipeline/transforms/serverstatus/GetServerStatus.java b/plugins/transforms/serverstatus/src/main/java/org/apache/hop/pipeline/transforms/serverstatus/GetServerStatus.java
index 9fcd4f4..224ada8 100644
--- a/plugins/transforms/serverstatus/src/main/java/org/apache/hop/pipeline/transforms/serverstatus/GetServerStatus.java
+++ b/plugins/transforms/serverstatus/src/main/java/org/apache/hop/pipeline/transforms/serverstatus/GetServerStatus.java
@@ -73,8 +73,8 @@ public class GetServerStatus extends BaseTransform<GetServerStatusMeta, GetServe
     String errorMessage;
     String statusDescription = null;
     Double serverLoad = null;
-    Long memoryFree = null;
-    Long memoryTotal = null;
+    Double memoryFree = null;
+    Double memoryTotal = null;
     Long cpuCores = null;
     Long cpuProcessTime = null;
     String osName = null;
@@ -92,8 +92,8 @@ public class GetServerStatus extends BaseTransform<GetServerStatusMeta, GetServe
       HopServerStatus status = hopServer.getStatus(this);
       statusDescription = status.getStatusDescription();
       serverLoad = status.getLoadAvg();
-      memoryFree = Double.valueOf(status.getMemoryFree()).longValue();
-      memoryTotal = Double.valueOf(status.getMemoryTotal()).longValue();
+      memoryFree = status.getMemoryFree();
+      memoryTotal = status.getMemoryTotal();
       cpuCores = (long) status.getCpuCores();
       cpuProcessTime = status.getCpuProcessTime();
       osName = status.getOsName();
diff --git a/plugins/transforms/tika/src/main/java/org/apache/hop/pipeline/transforms/tika/Tika.java b/plugins/transforms/tika/src/main/java/org/apache/hop/pipeline/transforms/tika/Tika.java
index 790bd2f..72d62f8 100755
--- a/plugins/transforms/tika/src/main/java/org/apache/hop/pipeline/transforms/tika/Tika.java
+++ b/plugins/transforms/tika/src/main/java/org/apache/hop/pipeline/transforms/tika/Tika.java
@@ -286,8 +286,6 @@ public class Tika extends BaseTransform<TikaMeta, TikaData>
    */
   public String getTextFileContent(String vfsFilename, String encoding) throws HopException {
     InputStream inputStream = null;
-    InputStreamReader reader = null;
-
     String retval = null;
     try {
       // HACK: Check for local files, use a FileInputStream in that case
@@ -305,32 +303,21 @@ public class Tika extends BaseTransform<TikaMeta, TikaData>
       throw new HopException(
           BaseMessages.getString(PKG, "Tika.Error.GettingFileContent", vfsFilename, e.toString()),
           e);
-    } finally {
-      if (reader != null) {
-        try {
-          reader.close();
-        } catch (Exception e) {
-          throw new HopException("Error closing reader", e);
-        }
-      }
-      ;
+    }
       if (inputStream != null) {
         try {
           inputStream.close();
         } catch (Exception e) {
-          throw new HopException("Error closing stream", e);
+          log.logError("Error closing reader", e);
         }
       }
-      ;
-    }
-
     return retval;
   }
 
   private void handleMissingFiles() throws HopException {
     List<FileObject> nonExistantFiles = data.files.getNonExistantFiles();
 
-    if (nonExistantFiles.size() != 0) {
+    if (!nonExistantFiles.isEmpty()) {
       String message = FileInputList.getRequiredFilesDescription(nonExistantFiles);
       logError(
           BaseMessages.getString(PKG, "Tika.Log.RequiredFilesTitle"),
@@ -340,7 +327,7 @@ public class Tika extends BaseTransform<TikaMeta, TikaData>
     }
 
     List<FileObject> nonAccessibleFiles = data.files.getNonAccessibleFiles();
-    if (nonAccessibleFiles.size() != 0) {
+    if (!nonAccessibleFiles.isEmpty()) {
       String message = FileInputList.getRequiredFilesDescription(nonAccessibleFiles);
       logError(
           BaseMessages.getString(PKG, "Tika.Log.RequiredFilesTitle"),
@@ -356,9 +343,7 @@ public class Tika extends BaseTransform<TikaMeta, TikaData>
    * @return
    */
   private Object[] buildEmptyRow() {
-    Object[] rowData = RowDataUtil.allocateRowData(data.outputRowMeta.size());
-
-    return rowData;
+    return RowDataUtil.allocateRowData(data.outputRowMeta.size());
   }
 
   private Object[] getOneRow() throws HopException {
diff --git a/plugins/transforms/tika/src/main/java/org/apache/hop/pipeline/transforms/tika/TikaOutput.java b/plugins/transforms/tika/src/main/java/org/apache/hop/pipeline/transforms/tika/TikaOutput.java
index 0ace1e0..f6dac3d 100755
--- a/plugins/transforms/tika/src/main/java/org/apache/hop/pipeline/transforms/tika/TikaOutput.java
+++ b/plugins/transforms/tika/src/main/java/org/apache/hop/pipeline/transforms/tika/TikaOutput.java
@@ -51,6 +51,7 @@ import java.text.NumberFormat;
 import java.text.ParsePosition;
 import java.util.Arrays;
 import java.util.HashMap;
+import java.util.Map;
 
 public class TikaOutput {
 
@@ -205,17 +206,14 @@ public class TikaOutput {
   }
 
   @SuppressWarnings("serial")
-  public HashMap<String, OutputType> getFileOutputTypeCodes() {
-
-    return new HashMap<String, OutputType>() {
-      {
-        put("Plain text", getTEXT());
-        put("Main content", getTEXT_MAIN());
-        put("Xml", getXml());
-        put("HTML", getHTML());
-        put("JSON", getJSON());
-      }
-    };
+  public Map<String, OutputType> getFileOutputTypeCodes() {
+    Map<String, OutputType> outputTypeMap = new HashMap<>();
+    outputTypeMap.put("Plain text", getTEXT());
+    outputTypeMap.put("Main content", getTEXT_MAIN());
+    outputTypeMap.put("Xml", getXml());
+    outputTypeMap.put("HTML", getHTML());
+    outputTypeMap.put("JSON", getJSON());
+    return outputTypeMap;
   }
 
   private OutputType getTypeByName(String name) {
@@ -236,7 +234,7 @@ public class TikaOutput {
         input.close();
         out.flush();
       } catch (Exception e) {
-        throw new HopException("Error closing file", e);
+        log.logError("Error closing file", e);
       }
     }
   }
diff --git a/ui/src/main/java/org/apache/hop/ui/core/gui/GuiCompositeWidgets.java b/ui/src/main/java/org/apache/hop/ui/core/gui/GuiCompositeWidgets.java
index 4beaa89..fcec6d5 100644
--- a/ui/src/main/java/org/apache/hop/ui/core/gui/GuiCompositeWidgets.java
+++ b/ui/src/main/java/org/apache/hop/ui/core/gui/GuiCompositeWidgets.java
@@ -363,33 +363,37 @@ public class GuiCompositeWidgets {
         // Ask for a filename
         //
         ITypeFilename typeFilename = instantiateTypeFilename(guiElements);
-        actionControl.addListener(
-            SWT.Selection,
-            e -> {
-              String filename =
-                  BaseDialog.presentFileDialog(
-                      parent.getShell(),
-                      null,
-                      variables,
-                      typeFilename.getFilterExtensions(),
-                      typeFilename.getFilterNames(),
-                      true);
-              if (StringUtils.isNotEmpty(filename)) {
-                text.setText(filename);
-              }
-            });
+        if (actionControl != null) {
+          actionControl.addListener(
+              SWT.Selection,
+              e -> {
+                String filename =
+                    BaseDialog.presentFileDialog(
+                        parent.getShell(),
+                        null,
+                        variables,
+                        typeFilename.getFilterExtensions(),
+                        typeFilename.getFilterNames(),
+                        true);
+                if (StringUtils.isNotEmpty(filename)) {
+                  text.setText(filename);
+                }
+              });
+        }
         break;
       case FOLDER:
         // ask for a folder
         //
-        actionControl.addListener(
-            SWT.Selection,
-            e -> {
-              String folder = BaseDialog.presentDirectoryDialog(parent.getShell(), variables);
-              if (StringUtils.isNotEmpty(folder)) {
-                text.setText(folder);
-              }
-            });
+        if (actionControl != null) {
+          actionControl.addListener(
+              SWT.Selection,
+              e -> {
+                String folder = BaseDialog.presentDirectoryDialog(parent.getShell(), variables);
+                if (StringUtils.isNotEmpty(folder)) {
+                  text.setText(folder);
+                }
+              });
+        }
         break;
       default:
         break;
diff --git a/ui/src/main/java/org/apache/hop/ui/core/metadata/MetadataEditor.java b/ui/src/main/java/org/apache/hop/ui/core/metadata/MetadataEditor.java
index 3e87329..e7935aa 100644
--- a/ui/src/main/java/org/apache/hop/ui/core/metadata/MetadataEditor.java
+++ b/ui/src/main/java/org/apache/hop/ui/core/metadata/MetadataEditor.java
@@ -116,6 +116,11 @@ public abstract class MetadataEditor<T extends IHopMetadata> extends MetadataFil
     return Objects.equals(metadata, that.metadata);
   }
 
+  @Override
+  public int hashCode() {
+    return Objects.hash(hopGui, manager, metadata, title, toolTip, titleImage, image, isChanged, originalName);
+  }
+
   public Button[] createButtonsForButtonBar(final Composite parent) {
     return null;
   }