Author: tilman
Date: Thu Mar 13 14:27:24 2025
New Revision: 1924376

URL: http://svn.apache.org/viewvc?rev=1924376&view=rev
Log:
PDFBOX-5660: use String switch; throw exception for state that never happens

Modified:
    
pdfbox/branches/3.0/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java
    
pdfbox/branches/3.0/debugger/src/main/java/org/apache/pdfbox/debugger/ui/TreeViewMenu.java

Modified: 
pdfbox/branches/3.0/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java
URL: 
http://svn.apache.org/viewvc/pdfbox/branches/3.0/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java?rev=1924376&r1=1924375&r2=1924376&view=diff
==============================================================================
--- 
pdfbox/branches/3.0/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java
 (original)
+++ 
pdfbox/branches/3.0/debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java
 Thu Mar 13 14:27:24 2025
@@ -1493,30 +1493,32 @@ public class PDFDebugger extends JFrame
         statusPane.updateTreeStatus(treeStatus);
         
         String treeViewMode = 
TreeViewMenu.getInstance().getTreeViewSelection();
-        if (TreeViewMenu.VIEW_PAGES.equals(treeViewMode))
+        switch (treeViewMode)
         {
-            File file = new File(currentFilePath);
-            DocumentEntry documentEntry = new DocumentEntry(document, 
file.getName());
-            ZoomMenu.getInstance().resetZoom();
-            
RotationMenu.getInstance().setRotationSelection(RotationMenu.ROTATE_0_DEGREES);
-            
ImageTypeMenu.getInstance().setImageTypeSelection(ImageTypeMenu.IMAGETYPE_RGB);
-            RenderDestinationMenu.getInstance()
-                    
.setRenderDestinationSelection(RenderDestinationMenu.RENDER_DESTINATION_EXPORT);
-            tree.setModel(new PDFTreeModel(documentEntry));
-            // Root/Pages/Kids/[0] is not always the first page, so use the 
first row instead:
-            tree.setSelectionPath(tree.getPathForRow(1));
-        }
-        else if (TreeViewMenu.VIEW_STRUCTURE.equals(treeViewMode))
-        {
-            tree.setModel(new PDFTreeModel(document));
-            tree.setSelectionPath(treeStatus.getPathForString("Root"));
-            tree.setSelectionPath(tree.getPathForRow(1));
-        }
-        else if (TreeViewMenu.VIEW_CROSS_REF_TABLE.equals(treeViewMode))
-        {
-            tree.setModel(new PDFTreeModel(new XrefEntries(document)));
-            tree.setSelectionPath(treeStatus.getPathForString("CRT"));
-            tree.setSelectionPath(tree.getPathForRow(1));
+            case TreeViewMenu.VIEW_PAGES:
+                File file = new File(currentFilePath);
+                DocumentEntry documentEntry = new DocumentEntry(document, 
file.getName());
+                ZoomMenu.getInstance().resetZoom();
+                
RotationMenu.getInstance().setRotationSelection(RotationMenu.ROTATE_0_DEGREES);
+                
ImageTypeMenu.getInstance().setImageTypeSelection(ImageTypeMenu.IMAGETYPE_RGB);
+                RenderDestinationMenu.getInstance()
+                        
.setRenderDestinationSelection(RenderDestinationMenu.RENDER_DESTINATION_EXPORT);
+                tree.setModel(new PDFTreeModel(documentEntry));
+                // Root/Pages/Kids/[0] is not always the first page, so use 
the first row instead:
+                tree.setSelectionPath(tree.getPathForRow(1));
+                break;
+            case TreeViewMenu.VIEW_STRUCTURE:
+                tree.setModel(new PDFTreeModel(document));
+                tree.setSelectionPath(treeStatus.getPathForString("Root"));
+                tree.setSelectionPath(tree.getPathForRow(1));
+                break;
+            case TreeViewMenu.VIEW_CROSS_REF_TABLE:
+                tree.setModel(new PDFTreeModel(new XrefEntries(document)));
+                tree.setSelectionPath(treeStatus.getPathForString("CRT"));
+                tree.setSelectionPath(tree.getPathForRow(1));
+                break;
+            default:
+                break;
         }
     }
 

Modified: 
pdfbox/branches/3.0/debugger/src/main/java/org/apache/pdfbox/debugger/ui/TreeViewMenu.java
URL: 
http://svn.apache.org/viewvc/pdfbox/branches/3.0/debugger/src/main/java/org/apache/pdfbox/debugger/ui/TreeViewMenu.java?rev=1924376&r1=1924375&r2=1924376&view=diff
==============================================================================
--- 
pdfbox/branches/3.0/debugger/src/main/java/org/apache/pdfbox/debugger/ui/TreeViewMenu.java
 (original)
+++ 
pdfbox/branches/3.0/debugger/src/main/java/org/apache/pdfbox/debugger/ui/TreeViewMenu.java
 Thu Mar 13 14:27:24 2025
@@ -107,7 +107,7 @@ public final class TreeViewMenu extends
         {
             return VIEW_CROSS_REF_TABLE;
         }
-        return null;
+        throw new IllegalStateException("No tree view selection");
     }
 
     /**


Reply via email to