You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by cz...@apache.org on 2017/02/13 18:25:22 UTC

svn commit: r1782830 - in /felix/trunk/webconsole-plugins/packageadmin: ./ src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/

Author: cziegeler
Date: Mon Feb 13 18:25:21 2017
New Revision: 1782830

URL: http://svn.apache.org/viewvc?rev=1782830&view=rev
Log:
FELIX-5510 : Remove usage of org.json form web console plugins

Modified:
    felix/trunk/webconsole-plugins/packageadmin/changelog.txt
    felix/trunk/webconsole-plugins/packageadmin/pom.xml
    felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/Activator.java
    felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/ExportedPackageComparator.java
    felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/WebConsolePlugin.java
    felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/WebConsolePrinter.java

Modified: felix/trunk/webconsole-plugins/packageadmin/changelog.txt
URL: http://svn.apache.org/viewvc/felix/trunk/webconsole-plugins/packageadmin/changelog.txt?rev=1782830&r1=1782829&r2=1782830&view=diff
==============================================================================
--- felix/trunk/webconsole-plugins/packageadmin/changelog.txt (original)
+++ felix/trunk/webconsole-plugins/packageadmin/changelog.txt Mon Feb 13 18:25:21 2017
@@ -1,3 +1,9 @@
+Changes from 1.0.2 to 1.0.4
+-----------------------------
+** Improvement
+    * [FELIX-5510] - Remove usage of org.json form web console plugins
+
+
 Changes from 1.0.0 to 1.0.2
 -----------------------------
 ** Bug

Modified: felix/trunk/webconsole-plugins/packageadmin/pom.xml
URL: http://svn.apache.org/viewvc/felix/trunk/webconsole-plugins/packageadmin/pom.xml?rev=1782830&r1=1782829&r2=1782830&view=diff
==============================================================================
--- felix/trunk/webconsole-plugins/packageadmin/pom.xml (original)
+++ felix/trunk/webconsole-plugins/packageadmin/pom.xml Mon Feb 13 18:25:21 2017
@@ -23,7 +23,7 @@
     <parent>
         <groupId>org.apache.felix</groupId>
         <artifactId>felix-parent</artifactId>
-        <version>2</version>
+        <version>4</version>
         <relativePath>../../../pom/pom.xml</relativePath>
     </parent>
 
@@ -84,7 +84,8 @@
                             org.apache.felix.webconsole.plugins.packageadmin.*
                         </Private-Package>
                         <Embed-Dependency>
-                            org.apache.felix.utils;inline=org/apache/felix/utils/manifest/*
+                            org.apache.felix.utils;inline=org/apache/felix/utils/manifest/*,
+                            org.apache.felix.utils;inline=org/apache/felix/utils/json/JSONWriter*
                         </Embed-Dependency>
                         <Bundle-Activator>
                             org.apache.felix.webconsole.plugins.packageadmin.internal.Activator
@@ -126,7 +127,7 @@
         <dependency>
             <groupId>org.apache.felix</groupId>
             <artifactId>org.apache.felix.utils</artifactId>
-            <version>1.4.0</version>
+            <version>1.9.0</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
@@ -153,11 +154,5 @@
             <version>1.0.0</version>
             <scope>provided</scope>
         </dependency>
-        <dependency>
-            <groupId>org.json</groupId>
-            <artifactId>json</artifactId>
-            <version>20070829</version>
-            <scope>provided</scope>
-        </dependency>
     </dependencies>
 </project>

Modified: felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/Activator.java
URL: http://svn.apache.org/viewvc/felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/Activator.java?rev=1782830&r1=1782829&r2=1782830&view=diff
==============================================================================
--- felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/Activator.java (original)
+++ felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/Activator.java Mon Feb 13 18:25:21 2017
@@ -6,9 +6,9 @@
  * 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
@@ -41,7 +41,7 @@ public class Activator implements Bundle
 
     private BundleContext context;
     private SimpleWebConsolePlugin plugin;
-    private ServiceRegistration printerReg;
+    private ServiceRegistration<InventoryPrinter> printerReg;
 
     /**
      * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
@@ -54,13 +54,13 @@ public class Activator implements Bundle
         this.pkgAdminTracker.open();
 
         // register configuration printer
-        final Dictionary/*<String, Object>*/props = new Hashtable/*<String, Object>*/();
+        final Dictionary<String, Object> props = new Hashtable<String, Object>();
         props.put(InventoryPrinter.NAME, "duplicate_exports"); //$NON-NLS-1$
         props.put(InventoryPrinter.TITLE, "Duplicate Exports"); //$NON-NLS-1$
         props.put(InventoryPrinter.FORMAT, new String[] { Format.TEXT.toString() });
 
         printerReg = context.registerService(
-            InventoryPrinter.class.getName(),
+            InventoryPrinter.class,
             new WebConsolePrinter(context, pkgAdminTracker), props);
     }
 

Modified: felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/ExportedPackageComparator.java
URL: http://svn.apache.org/viewvc/felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/ExportedPackageComparator.java?rev=1782830&r1=1782829&r2=1782830&view=diff
==============================================================================
--- felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/ExportedPackageComparator.java (original)
+++ felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/ExportedPackageComparator.java Mon Feb 13 18:25:21 2017
@@ -22,13 +22,11 @@ import java.util.Comparator;
 
 import org.osgi.service.packageadmin.ExportedPackage;
 
-final class ExportedPackageComparator implements Comparator/*<ExportedPackage>*/
+final class ExportedPackageComparator implements Comparator<ExportedPackage>
 {
 
-    public int compare(Object _o1, Object _o2)
+    public int compare(ExportedPackage o1, ExportedPackage o2)
     {
-        ExportedPackage o1 = (ExportedPackage) _o1;
-        ExportedPackage o2 = (ExportedPackage) _o2;
         if (o1 == o2)
         {
             return 0;

Modified: felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/WebConsolePlugin.java
URL: http://svn.apache.org/viewvc/felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/WebConsolePlugin.java?rev=1782830&r1=1782829&r2=1782830&view=diff
==============================================================================
--- felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/WebConsolePlugin.java (original)
+++ felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/WebConsolePlugin.java Mon Feb 13 18:25:21 2017
@@ -21,10 +21,14 @@ package org.apache.felix.webconsole.plug
 import java.io.IOException;
 import java.io.InputStream;
 import java.net.URL;
+import java.util.ArrayList;
+import java.util.Collection;
 import java.util.Comparator;
 import java.util.Enumeration;
+import java.util.HashMap;
 import java.util.Iterator;
 import java.util.LinkedHashSet;
+import java.util.List;
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.Set;
@@ -39,13 +43,11 @@ import javax.servlet.http.HttpServletReq
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.commons.io.IOUtils;
+import org.apache.felix.utils.json.JSONWriter;
 import org.apache.felix.utils.manifest.Clause;
 import org.apache.felix.utils.manifest.Parser;
 import org.apache.felix.webconsole.SimpleWebConsolePlugin;
 import org.apache.felix.webconsole.WebConsoleUtil;
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.Constants;
@@ -58,20 +60,23 @@ import org.osgi.service.packageadmin.Pac
  */
 class WebConsolePlugin extends SimpleWebConsolePlugin
 {
-
+    private static final long serialVersionUID = 1L;
     private static final String LABEL = "depfinder"; //$NON-NLS-1$
     private static final String TITLE = "%pluginTitle"; //$NON-NLS-1$
     private static final String CATEGORY = "OSGi"; //$NON-NLS-1$
     private static final String CSS[] = { "/" + LABEL + "/res/plugin.css" }; //$NON-NLS-1$ //$NON-NLS-2$
 
-    private static final Comparator/*<ExportedPackage>*/EXPORT_PACKAGE_COMPARATOR = new ExportedPackageComparator();
+    @SuppressWarnings("deprecation")
+    private static final Comparator<ExportedPackage> EXPORT_PACKAGE_COMPARATOR = new ExportedPackageComparator();
 
+    @SuppressWarnings("deprecation")
     private final PackageAdmin pa;
     private final BundleContext bc;
 
     // templates
     private final String TEMPLATE;
 
+    @SuppressWarnings("deprecation")
     WebConsolePlugin(BundleContext bc, Object pa)
     {
         super(LABEL, TITLE, CATEGORY, CSS);
@@ -84,6 +89,7 @@ class WebConsolePlugin extends SimpleWeb
     }
 
 
+    @Override
     public String getCategory()
     {
         return CATEGORY;
@@ -93,6 +99,7 @@ class WebConsolePlugin extends SimpleWeb
     /**
      * @see org.apache.felix.webconsole.AbstractWebConsolePlugin#renderContent(HttpServletRequest, HttpServletResponse)
      */
+    @Override
     protected final void renderContent(HttpServletRequest req,
         HttpServletResponse response) throws ServletException, IOException
     {
@@ -102,41 +109,39 @@ class WebConsolePlugin extends SimpleWeb
     /**
      * @see HttpServlet#doPost(HttpServletRequest, HttpServletResponse)
      */
+    @Override
     protected final void doPost(HttpServletRequest req, HttpServletResponse resp)
         throws ServletException, IOException
     {
         final Object json;
 
-        try
-        {
-            String action = req.getParameter("action"); //$NON-NLS-1$
-            if ("deps".equals(action)) { //$NON-NLS-1$
-                json = doFindDependencies(req, pa);
-            }
-            else if ("dups".equals(action)) { //$NON-NLS-1$
-                Map/*<String, Set<ExportedPackage>>*/packages = collectExportedPackages(
-                    pa, bc);
-                json = doFindDuplicates(packages);
-            }
-            else
-            {
-                throw new ServletException("Invalid action: " + action);
-            }
+        String action = req.getParameter("action"); //$NON-NLS-1$
+        if ("deps".equals(action)) { //$NON-NLS-1$
+            json = doFindDependencies(req, pa);
+        }
+        else if ("dups".equals(action)) { //$NON-NLS-1$
+            @SuppressWarnings("deprecation")
+            Map<String, Set<ExportedPackage>> packages = collectExportedPackages(
+                pa, bc);
+            json = doFindDuplicates(packages);
         }
-        catch (JSONException e)
+        else
         {
-            throw new ServletException(e);
+            throw new ServletException("Invalid action: " + action);
         }
 
         WebConsoleUtil.setNoCache(resp);
         resp.setContentType("application/json; utf-8"); //$NON-NLS-1$
-        resp.getWriter().println(json);
+        JSONWriter writer = new JSONWriter(resp.getWriter());
+        writer.value(json);
+        writer.flush();
     }
 
-    static final Map/*<String, Set<ExportedPackage>>*/collectExportedPackages(
+    @SuppressWarnings("deprecation")
+    static final Map<String, Set<ExportedPackage>> collectExportedPackages(
         final PackageAdmin pa, final BundleContext bundleContext)
     {
-        Map/*<String, Set<ExportedPackage>>*/exports = new TreeMap/*<String, Set<ExportedPackage>>*/();
+        Map<String, Set<ExportedPackage>> exports = new TreeMap<String, Set<ExportedPackage>>();
 
         Bundle[] bundles = bundleContext.getBundles();
         for (int i = 0; bundles != null && i < bundles.length; i++)
@@ -146,10 +151,10 @@ class WebConsolePlugin extends SimpleWeb
             for (int j = 0; bundleExports != null && j < bundleExports.length; j++)
             {
                 final ExportedPackage exportedPackage = bundleExports[j];
-                Set/*<ExportedPackage>*/exportSet = (Set) exports.get(exportedPackage.getName());
+                Set<ExportedPackage> exportSet = exports.get(exportedPackage.getName());
                 if (exportSet == null)
                 {
-                    exportSet = new TreeSet/*<ExportedPackage>*/(
+                    exportSet = new TreeSet<ExportedPackage>(
                         EXPORT_PACKAGE_COMPARATOR);
                     exports.put(exportedPackage.getName(), exportSet);
                 }
@@ -160,31 +165,41 @@ class WebConsolePlugin extends SimpleWeb
         return exports;
     }
 
-    private static final JSONObject doFindDependencies(HttpServletRequest req,
-        PackageAdmin pa) throws JSONException
+    @SuppressWarnings("deprecation")
+    private static final Map<String, Object> doFindDependencies(HttpServletRequest req,
+        PackageAdmin pa)
     {
-        final JSONObject json = new JSONObject();
+        final Map<String, Object> json = new HashMap<String, Object>();
 
         final String findField = req.getParameter("plugin.find"); //$NON-NLS-1$
         if (findField != null)
         {
-            Set/*<String>*/packageNames = getPackageNames(findField);
-            Set/*<Bundle>*/exportingBundles = new LinkedHashSet/*<Bundle>*/();
+            Set<String> packageNames = getPackageNames(findField);
+            Set<Bundle> exportingBundles = new LinkedHashSet<Bundle>();
 
-            for (Iterator/*<String>*/i = packageNames.iterator(); i.hasNext();)
+            for (Iterator<String> i = packageNames.iterator(); i.hasNext();)
             {
-                String name = (String) i.next();
-                json.append("packages", getPackageInfo(name, pa, exportingBundles)); //$NON-NLS-1$
+                String name = i.next();
+                @SuppressWarnings("unchecked")
+                List<Object> pl = (List<Object>)json.get("packages"); //$NON-NLS-1$
+                if ( pl == null )
+                {
+                    pl = new ArrayList<Object>();
+                    json.put("packages", pl);
+                }
+                pl.add( getPackageInfo(name, pa, exportingBundles));
             }
 
-            final JSONObject mavenJson = new JSONObject();
+            final Map<String, Object> mavenJson = new HashMap<String, Object>();
             json.put("maven", mavenJson); //$NON-NLS-1$
-            for (Iterator/*<Bundle>*/i = exportingBundles.iterator(); i.hasNext();)
+            for (Iterator<Bundle> i = exportingBundles.iterator(); i.hasNext();)
             {
-                Bundle bundle = (Bundle) i.next();
-                mavenJson.putOpt(//
-                    String.valueOf(bundle.getBundleId()), //
-                    getMavenInfo(bundle));
+                Bundle bundle = i.next();
+                final Object value = getMavenInfo(bundle);
+                if ( value != null )
+                {
+                    mavenJson.put(String.valueOf(bundle.getBundleId()), value);
+                }
             }
         }
 
@@ -192,48 +207,55 @@ class WebConsolePlugin extends SimpleWeb
 
     }
 
-    private static final JSONArray doFindDuplicates(
-        final Map/*<String, Set<ExportedPackage>>*/exports) throws JSONException
+    @SuppressWarnings("deprecation")
+    private static final Collection<Object> doFindDuplicates(
+        final Map<String, Set<ExportedPackage>> exports)
     {
-        final JSONArray ret = new JSONArray();
-        for (Iterator entryIter = exports.entrySet().iterator(); entryIter.hasNext();)
+        final List<Object> ret = new ArrayList<Object>();
+        for (Iterator<Entry<String, Set<ExportedPackage>>> entryIter = exports.entrySet().iterator(); entryIter.hasNext();)
         {
-            Entry/*<String, Set<ExportedPackage>>*/exportEntry = (Entry) entryIter.next();
-            Set/*<ExportedPackage>*/exportSet = (Set) exportEntry.getValue();
+            Entry<String, Set<ExportedPackage>> exportEntry = entryIter.next();
+            Set<ExportedPackage> exportSet = exportEntry.getValue();
             if (exportSet.size() > 1)
             {
-                final JSONObject container = new JSONObject();
-                ret.put(container);
-                for (Iterator packageIter = exportSet.iterator(); packageIter.hasNext();)
+                final Map<String, Object> container = new HashMap<String, Object>();
+                ret.add(container);
+                for (Iterator<ExportedPackage> packageIter = exportSet.iterator(); packageIter.hasNext();)
                 {
-                    ExportedPackage exportedPackage = (ExportedPackage) packageIter.next();
-                    final JSONObject json = toJSON(exportedPackage);
-                    container//
-                    .put("name", exportedPackage.getName()) //$NON-NLS-1$
-                    .append("entries", json); //$NON-NLS-1$
+                    ExportedPackage exportedPackage = packageIter.next();
+                    final Map<String, Object> json = toJSON(exportedPackage);
+                    container.put("name", exportedPackage.getName()); //$NON-NLS-1$
+                    @SuppressWarnings("unchecked")
+                    List<Object> imps = (List<Object>) container.get("entries"); //$NON-NLS-1$
+                    if ( imps == null )
+                    {
+                        imps = new ArrayList<Object>();
+                        container.put("entries", imps); //$NON-NLS-1$
+                    }
+                    imps.add(json);
                 }
             }
         }
         return ret;
     }
 
-    private static final JSONObject toJSON(Bundle bundle, JSONObject json)
-        throws JSONException
+    private static final void toJSON(Bundle bundle, Map<String, Object> json)
     {
         json.put("bid", bundle.getBundleId()); //$NON-NLS-1$
-        json.putOpt("bsn", bundle.getSymbolicName()); //$NON-NLS-1$
-        return json;
+        if ( bundle.getSymbolicName() != null )
+        {
+            json.put("bsn", bundle.getSymbolicName()); //$NON-NLS-1$
+        }
     }
 
-    private static final JSONObject toJSON(final String pkgName, final Bundle[] importers, final JSONObject json)
-        throws JSONException
+    private static final void toJSON(final String pkgName, final Bundle[] importers, final Map<String, Object> json)
     {
         for (int i = 0; i < importers.length; i++)
         {
             Bundle bundle = importers[i];
-            final JSONObject usingJson = new JSONObject();
+            final Map<String, Object> usingJson = new HashMap<String, Object>();
             toJSON(bundle, usingJson);
-            final String ip = (String) bundle.getHeaders().get(Constants.IMPORT_PACKAGE);
+            final String ip = bundle.getHeaders().get(Constants.IMPORT_PACKAGE);
             final Clause[] clauses = Parser.parseHeader(ip);
             for (int j = 0; j < clauses.length; j++)
             {
@@ -244,43 +266,58 @@ class WebConsolePlugin extends SimpleWeb
                     break;
                 }
             }
-            json.append("importers", usingJson); //$NON-NLS-1$
+            @SuppressWarnings("unchecked")
+            List<Object> imps = (List<Object>) json.get("importers"); //$NON-NLS-1$
+            if ( imps == null )
+            {
+                imps = new ArrayList<Object>();
+                json.put("importers", imps); //$NON-NLS-1$
+            }
+            imps.add(usingJson);
         }
-        return json;
     }
 
-    private static final JSONObject toJSON(final ExportedPackage pkg)
-        throws JSONException
+    @SuppressWarnings("deprecation")
+    private static final Map<String, Object> toJSON(final ExportedPackage pkg)
     {
-        final JSONObject ret = new JSONObject();
+        final Map<String, Object> ret = new HashMap<String, Object>();
         ret.put("version", pkg.getVersion()); //$NON-NLS-1$
         toJSON(pkg.getExportingBundle(), ret);
         toJSON(pkg.getName(), pkg.getImportingBundles(), ret);
         return ret;
     }
 
-    private static final JSONObject getPackageInfo(String packageName, PackageAdmin pa,
-        Set/*<Bundle>*/exportingBundles) throws JSONException
+    @SuppressWarnings("deprecation")
+    private static final Map<String, Object> getPackageInfo(String packageName, PackageAdmin pa,
+        Set<Bundle> exportingBundles)
     {
-        final JSONObject ret = new JSONObject();
+        final Map<String, Object> ret = new HashMap<String, Object>();
         final ExportedPackage[] exports = pa.getExportedPackages(packageName);
         for (int i = 0; exports != null && i < exports.length; i++)
         {
             final ExportedPackage x = exports[i];
-            ret.append("exporters", toJSON(x)); //$NON-NLS-1$
+            @SuppressWarnings("unchecked")
+            List<Object> el = (List<Object>)ret.get("exporters"); //$NON-NLS-1$
+            if ( el == null )
+            {
+                el = new ArrayList<Object>();
+                ret.put("exporters", el); //$NON-NLS-1$
+            }
+            el.add(toJSON(x));
             exportingBundles.add(x.getExportingBundle());
         }
-        return ret.put("name", packageName); //$NON-NLS-1$
+        ret.put("name", packageName); //$NON-NLS-1$
+        return ret;
     }
 
-    private static final JSONObject getMavenInfo(Bundle bundle)
+    private static final Map<Object, Object> getMavenInfo(Bundle bundle)
     {
-        JSONObject ret = null;
+        Map<Object, Object> ret = null;
 
-        Enumeration entries = bundle.findEntries("META-INF/maven", "pom.properties", true); //$NON-NLS-1$ //$NON-NLS-2$
+        Enumeration<URL> entries = bundle.findEntries("META-INF/maven", "pom.properties", true); //$NON-NLS-1$ //$NON-NLS-2$
         if (entries != null)
         {
-            URL u = (URL) entries.nextElement();
+            URL u = entries.nextElement();
             java.util.Properties props = new java.util.Properties();
             InputStream is = null;
             try
@@ -288,7 +325,7 @@ class WebConsolePlugin extends SimpleWeb
                 is = u.openStream();
                 props.load(u.openStream());
 
-                ret = new JSONObject(props);
+                ret = new HashMap<Object, Object>(props);
             }
             catch (IOException e)
             {
@@ -302,10 +339,10 @@ class WebConsolePlugin extends SimpleWeb
         return ret;
     }
 
-    static final Set/*<String>*/getPackageNames(String findField)
+    static final Set<String> getPackageNames(String findField)
     {
         StringTokenizer tok = new StringTokenizer(findField, " \t\n\f\r"); //$NON-NLS-1$
-        SortedSet/*<String>*/result = new TreeSet/*<String>*/();
+        SortedSet<String> result = new TreeSet<String>();
         while (tok.hasMoreTokens())
         {
             String part = tok.nextToken().trim();

Modified: felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/WebConsolePrinter.java
URL: http://svn.apache.org/viewvc/felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/WebConsolePrinter.java?rev=1782830&r1=1782829&r2=1782830&view=diff
==============================================================================
--- felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/WebConsolePrinter.java (original)
+++ felix/trunk/webconsole-plugins/packageadmin/src/main/java/org/apache/felix/webconsole/plugins/packageadmin/internal/WebConsolePrinter.java Mon Feb 13 18:25:21 2017
@@ -50,7 +50,8 @@ class WebConsolePrinter implements Inven
      * @see org.apache.felix.inventory.InventoryPrinter#print(
      *  java.io.PrintWriter, org.apache.felix.inventory.Format, boolean)
      */
-    public void print(PrintWriter pw, Format format, boolean isZip) 
+    @SuppressWarnings("deprecation")
+    public void print(PrintWriter pw, Format format, boolean isZip)
     {
         final PackageAdmin pa = (PackageAdmin) tracker.getService();
         if (pa == null)
@@ -61,7 +62,7 @@ class WebConsolePrinter implements Inven
 
         try
         {
-            Map/*<String, Set<ExportedPackage>>*/exports = WebConsolePlugin.collectExportedPackages(
+            Map<String, Set<ExportedPackage>> exports = WebConsolePlugin.collectExportedPackages(
                 pa, bc);
 
             pw.print("Status: PackageAdmin service reports ");
@@ -77,25 +78,26 @@ class WebConsolePrinter implements Inven
         }
     }
 
+    @SuppressWarnings("deprecation")
     private void dumpDuplicatesAsTxt(final PrintWriter pw,
-        final Map/*<String, Set<ExportedPackage>>*/exports)
+        final Map<String, Set<ExportedPackage>> exports)
     {
         pw.println("Duplicate Exported Packages");
         pw.println("---------------------------");
-        final List/*<String[]>*/lines = new ArrayList/*<String[]>*/();
+        final List<String[]> lines = new ArrayList<String[]>();
         lines.add(new String[] { "Package", "Exports", "Imports" });
 
-        for (Iterator/*<Entry<String, Set<ExportedPackage>>>*/entriesIter = exports.entrySet().iterator(); entriesIter.hasNext();)
+        for (Iterator<Entry<String, Set<ExportedPackage>>> entriesIter = exports.entrySet().iterator(); entriesIter.hasNext();)
         {
-            Entry/*<String, Set<ExportedPackage>>*/exportEntry = (Entry) entriesIter.next();
+            Entry<String, Set<ExportedPackage>> exportEntry = entriesIter.next();
 
-            final Set/*<ExportedPackage>*/exportSet = (Set) exportEntry.getValue();
+            final Set<ExportedPackage> exportSet = exportEntry.getValue();
             if (exportSet.size() > 1)
             {
-                String firstCol = (String) exportEntry.getKey();
-                for (Iterator packageIter = exportSet.iterator(); packageIter.hasNext();)
+                String firstCol = exportEntry.getKey();
+                for (Iterator<ExportedPackage> packageIter = exportSet.iterator(); packageIter.hasNext();)
                 {
-                    ExportedPackage exportedPackage = (ExportedPackage) packageIter.next();
+                    ExportedPackage exportedPackage = packageIter.next();
                     final Bundle[] importers = exportedPackage.getImportingBundles();
                     final String secondCol = "version=" + exportedPackage.getVersion()
                         + ", Bundle " + exportedPackage.getExportingBundle();
@@ -129,7 +131,7 @@ class WebConsolePrinter implements Inven
         int maxFirst = 0, maxSecond = 0;
         for (int i = 0; i < lines.size(); i++)
         {
-            final String[] entry = (String[]) lines.get(i);
+            final String[] entry = lines.get(i);
             if (entry[0].length() > maxFirst)
             {
                 maxFirst = entry[0].length();
@@ -143,7 +145,7 @@ class WebConsolePrinter implements Inven
         maxSecond += 2;
         for (int i = 0; i < lines.size(); i++)
         {
-            final String[] entry = (String[]) lines.get(i);
+            final String[] entry = lines.get(i);
             padText(pw, entry[0], maxFirst);
             padText(pw, entry[1], maxSecond);
             pw.println(entry[2]);