You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jspwiki.apache.org by ju...@apache.org on 2018/11/02 23:59:29 UTC

[jspwiki] branch master updated (a8e07a0 -> dfb8b45)

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

juanpablo pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/jspwiki.git.


    from a8e07a0  2.11.0-M1-git-06: fix JSPs using methods removed on 2.11.0-M1-git-05
     new 28cd3d9  use generics when possible
     new 3dc5e99  remove warnings from org.apache.jspwiki.workflow package
     new 727cc48  remove warnings from org.apache.jspwiki.rss package
     new 0b51f0b  remove dead store
     new 0964e87  use try with resources
     new 1c3afb7  remove warnings from tests on org.apache.jspwiki.workflow package
     new 3b332f6  remove unused SuppresWarnings, use generics
     new 06a9021  use try with resources
     new f36ad8f  use try with resources
     new 4c86d76  fix build path on eclipse + bogus call on Workflow.jsp
     new 1f5ef18  more use of generics, reorganize imports and removal of unused @SuppressWarnings
     new c6a6b88  remove always-true condition and unused variable
     new 3d04448  log exception instead of using printStackTrace, use UTF-8 constant
     new 11d0dd4  use ConcurrentHashMap instead of plain HashMap
     new e3f137e  added Jenkinsfile
     new 3019846  backwards-incompatible change: WikiEngine#getRecentChanges() now returns a Set instead of a Collection
     new dfb8b45  2.11.0-M1-git-07

The 17 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 ChangeLog                                          |  8 +++
 Jenkinsfile                                        | 61 ++++++++++++++++++++++
 .../src/main/java/org/apache/wiki/PageManager.java | 16 +++---
 .../java/org/apache/wiki/ReferenceManager.java     | 32 +++---------
 .../src/main/java/org/apache/wiki/Release.java     |  2 +-
 .../src/main/java/org/apache/wiki/WikiContext.java | 11 +---
 .../src/main/java/org/apache/wiki/WikiEngine.java  | 18 +++----
 .../wiki/auth/user/AbstractUserDatabase.java       |  6 +--
 .../org/apache/wiki/event/WikiEventManager.java    | 13 ++++-
 .../org/apache/wiki/event/WikiSecurityEvent.java   |  4 +-
 .../java/org/apache/wiki/event/WorkflowEvent.java  | 21 +++-----
 .../org/apache/wiki/modules/ModuleManager.java     |  4 +-
 .../apache/wiki/plugin/AbstractReferralPlugin.java | 10 ++--
 .../org/apache/wiki/plugin/WeblogEntryPlugin.java  |  6 +--
 .../java/org/apache/wiki/plugin/WeblogPlugin.java  |  1 -
 .../org/apache/wiki/render/CleanTextRenderer.java  |  4 +-
 .../org/apache/wiki/rpc/atom/AtomAPIServlet.java   |  6 +--
 .../main/java/org/apache/wiki/rss/AtomFeed.java    | 10 ++--
 .../main/java/org/apache/wiki/rss/RSS20Feed.java   |  4 +-
 .../java/org/apache/wiki/rss/RSSGenerator.java     | 27 +++++-----
 .../apache/wiki/search/LuceneSearchProvider.java   |  8 +--
 .../java/org/apache/wiki/ui/EditorManager.java     |  2 +-
 .../java/org/apache/wiki/ui/TemplateManager.java   | 21 ++++----
 .../apache/wiki/ui/admin/WikiFormAdminBean.java    |  2 +-
 .../wiki/ui/admin/beans/SearchManagerBean.java     |  1 -
 .../java/org/apache/wiki/util/PropertyReader.java  | 58 ++++++++++----------
 .../main/java/org/apache/wiki/util/Serializer.java | 31 ++++-------
 .../org/apache/wiki/workflow/AbstractStep.java     | 13 +++--
 .../java/org/apache/wiki/workflow/Decision.java    |  2 +-
 .../org/apache/wiki/workflow/DecisionQueue.java    |  7 ++-
 .../main/java/org/apache/wiki/workflow/Step.java   |  4 +-
 .../java/org/apache/wiki/workflow/Workflow.java    | 10 +++-
 .../org/apache/wiki/workflow/WorkflowBuilder.java  |  4 +-
 .../org/apache/wiki/workflow/WorkflowManager.java  | 16 +++---
 .../org/apache/wiki/xmlrpc/MetaWeblogHandler.java  |  3 +-
 .../apache/wiki/workflow/ApprovalWorkflowTest.java |  6 +--
 .../apache/wiki/workflow/DecisionQueueTest.java    |  4 +-
 .../apache/wiki/workflow/SimpleDecisionTest.java   |  6 +--
 .../java/org/apache/wiki/workflow/TaskTest.java    |  4 +-
 jspwiki-war/pom.xml                                | 12 +++++
 jspwiki-war/src/main/webapp/Workflow.jsp           | 12 ++---
 jspwiki-war/src/main/webapp/rss.jsp                |  6 +--
 .../src/main/webapp/templates/210/AJAXSearch.jsp   |  8 +--
 43 files changed, 272 insertions(+), 232 deletions(-)
 create mode 100644 Jenkinsfile


[jspwiki] 08/17: use try with resources

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 06a9021991117c97993ec621f3106d82e3f8191d
Author: juanpablo <ju...@apache.org>
AuthorDate: Fri Nov 2 22:03:40 2018 +0100

    use try with resources
---
 .../main/java/org/apache/wiki/util/Serializer.java | 31 +++++++---------------
 1 file changed, 10 insertions(+), 21 deletions(-)

diff --git a/jspwiki-main/src/main/java/org/apache/wiki/util/Serializer.java b/jspwiki-main/src/main/java/org/apache/wiki/util/Serializer.java
index 65840e4..3f4a7db 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/util/Serializer.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/util/Serializer.java
@@ -25,10 +25,11 @@ import java.io.InputStream;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
 import java.io.Serializable;
+import java.nio.charset.StandardCharsets;
+import java.util.Base64;
 import java.util.HashMap;
 import java.util.Map;
 
-import org.apache.commons.codec.binary.Base64;
 
 /**
  *  Provides static helper functions for serializing different objects.
@@ -56,28 +57,17 @@ public final class Serializer
      * @throws IOException if the contents cannot be parsed for any reason
      */
     @SuppressWarnings("unchecked")
-    public static Map<String,? extends Serializable> deserializeFromBase64( String rawString ) throws IOException
-    {
+    public static Map< String, ? extends Serializable > deserializeFromBase64( String rawString ) throws IOException {
         // Decode from Base64-encoded String to byte array
-        byte[] decodedBytes = Base64.decodeBase64( rawString.getBytes("UTF-8") );
+        byte[] decodedBytes = Base64.getDecoder().decode( rawString.getBytes( StandardCharsets.UTF_8 ) );
         
         // Deserialize from the input stream to the Map
         InputStream bytesIn = new ByteArrayInputStream( decodedBytes );
-        ObjectInputStream in = new ObjectInputStream( bytesIn );
-        HashMap<String,Serializable> attributes;
-        try
-        {
-            attributes = (HashMap<String,Serializable>)in.readObject();
-        }
-        catch ( ClassNotFoundException e )
-        {
+        try( ObjectInputStream in = new ObjectInputStream( bytesIn ) ) {
+            return ( HashMap< String, Serializable > )in.readObject();
+        } catch ( ClassNotFoundException e ) {
             throw new IOException( "Could not deserialiaze user profile attributes. Reason: " + e.getMessage() );
         }
-        finally
-        {
-            in.close();
-        }
-        return attributes;
     }
 
     /**
@@ -87,10 +77,9 @@ public final class Serializer
      * @return a String representing the serialized form of the Map
      * @throws IOException If serialization cannot be done
      */
-    public static String serializeToBase64( Map<String,Serializable> map ) throws IOException
-    {
+    public static String serializeToBase64( Map< String, Serializable > map ) throws IOException {
         // Load the Map contents into a defensive HashMap
-        HashMap<String,Serializable> serialMap = new HashMap<String,Serializable>();
+        Map< String, Serializable > serialMap = new HashMap<>();
         serialMap.putAll( map );
         
         // Serialize the Map to an output stream
@@ -100,7 +89,7 @@ public final class Serializer
         out.close();
         
         // Transform to Base64-encoded String
-        byte[] result = Base64.encodeBase64( bytesOut.toByteArray() );
+        byte[] result = Base64.getEncoder().encode( bytesOut.toByteArray() );
         return new String( result ) ;
     }
 


[jspwiki] 16/17: backwards-incompatible change: WikiEngine#getRecentChanges() now returns a Set instead of a Collection

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 3019846d03396ad196ee0819b08248aad2a5acda
Author: juanpablo <ju...@apache.org>
AuthorDate: Sat Nov 3 00:55:56 2018 +0100

    backwards-incompatible change: WikiEngine#getRecentChanges() now returns a Set instead of a Collection
---
 .../src/main/java/org/apache/wiki/WikiEngine.java      | 18 +++++++-----------
 1 file changed, 7 insertions(+), 11 deletions(-)

diff --git a/jspwiki-main/src/main/java/org/apache/wiki/WikiEngine.java b/jspwiki-main/src/main/java/org/apache/wiki/WikiEngine.java
index 8f76517..3ac5559 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/WikiEngine.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/WikiEngine.java
@@ -35,6 +35,7 @@ import java.util.List;
 import java.util.Locale;
 import java.util.Map;
 import java.util.Properties;
+import java.util.Set;
 import java.util.TimeZone;
 import java.util.TreeSet;
 
@@ -710,15 +711,14 @@ public class WikiEngine
     {
         try
         {
-            ArrayList<WikiPage> pages = new ArrayList<WikiPage>();
+            ArrayList<WikiPage> pages = new ArrayList<>();
             pages.addAll( m_pageManager.getAllPages() );
             pages.addAll( m_attachmentManager.getAllAttachments() );
 
             // Build a new manager with default key lists.
             if( m_referenceManager == null )
             {
-                m_referenceManager =
-                    (ReferenceManager) ClassUtil.getMappedObject(ReferenceManager.class.getName(), this );
+                m_referenceManager = (ReferenceManager) ClassUtil.getMappedObject(ReferenceManager.class.getName(), this );
                 m_referenceManager.initialize( pages );
             }
 
@@ -1803,22 +1803,18 @@ public class WikiEngine
      *  order of last change (i.e. first object is the most
      *  recently changed).  This method also includes attachments.
      *
-     *  @return Collection of WikiPage objects.  In reality, the returned
-     *          collection is a Set, but due to API compatibility reasons,
-     *          we're not changing the signature soon...
+     *  @return Set of WikiPage objects.
      */
 
-    // FIXME: Should really get a Date object and do proper comparisons.
-    //        This is terribly wasteful.
-    @SuppressWarnings("unchecked")
-    public Collection getRecentChanges()
+    // FIXME: Should really get a Date object and do proper comparisons. This is terribly wasteful.
+    public Set< WikiPage > getRecentChanges()
     {
         try
         {
             Collection<WikiPage>   pages = m_pageManager.getAllPages();
             Collection<Attachment>  atts = m_attachmentManager.getAllAttachments();
 
-            TreeSet<WikiPage> sortedPages = new TreeSet<WikiPage>( new PageTimeComparator() );
+            TreeSet<WikiPage> sortedPages = new TreeSet<>( new PageTimeComparator() );
 
             sortedPages.addAll( pages );
             sortedPages.addAll( atts );


[jspwiki] 12/17: remove always-true condition and unused variable

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit c6a6b88735e16bf80e8b84e130fda443ce826a12
Author: juanpablo <ju...@apache.org>
AuthorDate: Sat Nov 3 00:51:59 2018 +0100

    remove always-true condition and unused variable
---
 jspwiki-main/src/main/java/org/apache/wiki/WikiContext.java | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/jspwiki-main/src/main/java/org/apache/wiki/WikiContext.java b/jspwiki-main/src/main/java/org/apache/wiki/WikiContext.java
index b916e92..455f70e 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/WikiContext.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/WikiContext.java
@@ -349,9 +349,7 @@ public class WikiContext
     public String getRedirectURL()
     {
         String pagename = m_page.getName();
-        String redirURL = null;
-
-        redirURL = m_engine.getCommandResolver().getSpecialPageReference( pagename );
+        String redirURL = m_engine.getCommandResolver().getSpecialPageReference( pagename );
 
         if( redirURL == null )
         {
@@ -750,22 +748,17 @@ public class WikiContext
         if ( WikiCommand.INSTALL.equals( m_command ) )
         {
             // See if admin users exists
-            boolean adminExists = false;
             try
             {
                 UserManager userMgr = m_engine.getUserManager();
                 UserDatabase userDb = userMgr.getUserDatabase();
                 userDb.findByLoginName( Installer.ADMIN_ID );
-                adminExists = true;
             }
             catch ( NoSuchPrincipalException e )
             {
                 return DUMMY_PERMISSION;
             }
-            if ( adminExists )
-            {
-                return new AllPermission( m_engine.getApplicationName() );
-            }
+            return new AllPermission( m_engine.getApplicationName() );
         }
 
         // TODO: we should really break the contract so that this


[jspwiki] 01/17: use generics when possible

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 28cd3d9a5b7d19386e2ed7c1e3661902dcb6ea95
Author: juanpablo <ju...@apache.org>
AuthorDate: Fri Nov 2 21:54:30 2018 +0100

    use generics when possible
---
 jspwiki-war/src/main/webapp/Workflow.jsp                 | 14 +++++++-------
 jspwiki-war/src/main/webapp/rss.jsp                      |  6 +++---
 jspwiki-war/src/main/webapp/templates/210/AJAXSearch.jsp |  8 ++++----
 3 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/jspwiki-war/src/main/webapp/Workflow.jsp b/jspwiki-war/src/main/webapp/Workflow.jsp
index fbf70f3..9f33f12 100644
--- a/jspwiki-war/src/main/webapp/Workflow.jsp
+++ b/jspwiki-war/src/main/webapp/Workflow.jsp
@@ -36,7 +36,7 @@
 %>
 
 <%
-    WikiEngine wiki = WikiEngine.getInstance( getServletConfig() );
+    WikiEngine wiki = WikiEngine.getInstance( request.getServletConfig() );
     // Create wiki context and check for authorization
     WikiContext wikiContext = wiki.createContext( request, WikiContext.WORKFLOW );
     if(!wiki.getAuthorizationManager().hasAccess( wikiContext, response )) return;
@@ -56,10 +56,10 @@
           String outcomeKey = request.getParameter("outcome");
           Outcome outcome = Outcome.forName( outcomeKey );
           // Iterate through our actor decisions and see if we can find an ID match
-          Collection decisions = dq.getActorDecisions(wikiSession);
-          for (Iterator it = decisions.iterator(); it.hasNext();)
+          Collection< Decision > decisions = dq.getActorDecisions(wikiSession);
+          for (Iterator< Decision > it = decisions.iterator(); it.hasNext();)
           {
-            Decision d = (Decision)it.next();
+            Decision d = it.next();
             if (d.getId() == id)
             {
               // Cool, we found it. Now make the decision.
@@ -83,10 +83,10 @@
           // Extract parameters for decision ID & decision outcome
           int id = Integer.parseInt( request.getParameter( "id" ) );
           // Iterate through our owner decisions and see if we can find an ID match
-          Collection workflows = wiki.getWorkflowManager().getOwnerWorkflows(wikiSession);
-          for (Iterator it = workflows.iterator(); it.hasNext();)
+          Collection< Workflow > workflows = wiki.getWorkflowManager().getOwnerWorkflows(wikiSession);
+          for (Iterator< Workflow > it = workflows.iterator(); it.hasNext();)
           {
-            Workflow w = (Workflow)it.next();
+            Workflow w = it.next();
             if (w.getId() == id)
             {
               // Cool, we found it. Now kill the workflow.
diff --git a/jspwiki-war/src/main/webapp/rss.jsp b/jspwiki-war/src/main/webapp/rss.jsp
index 9912b3c..3f55b54 100644
--- a/jspwiki-war/src/main/webapp/rss.jsp
+++ b/jspwiki-war/src/main/webapp/rss.jsp
@@ -96,7 +96,7 @@
     //
     //  Now, list items.
     //
-    List changed;
+    List< WikiPage > changed;
     
     if( mode.equals("blog") )
     {
@@ -117,9 +117,9 @@
     boolean hasChanged = false;
     Date    latest     = new Date(0);
 
-    for( Iterator i = changed.iterator(); i.hasNext(); )
+    for( Iterator< WikiPage > i = changed.iterator(); i.hasNext(); )
     {
-        WikiPage p = (WikiPage) i.next();
+        WikiPage p = i.next();
 
         if( !HttpUtil.checkFor304( request, p.getName(), p.getLastModified() ) ) hasChanged = true;
         if( p.getLastModified().after( latest ) ) latest = p.getLastModified();
diff --git a/jspwiki-war/src/main/webapp/templates/210/AJAXSearch.jsp b/jspwiki-war/src/main/webapp/templates/210/AJAXSearch.jsp
index 2e42cf5..2f5831e 100644
--- a/jspwiki-war/src/main/webapp/templates/210/AJAXSearch.jsp
+++ b/jspwiki-war/src/main/webapp/templates/210/AJAXSearch.jsp
@@ -56,16 +56,16 @@
   {
     try
     {
-      Collection list = wiki.getSearchManager().findPages( query, wikiContext );
+      Collection< SearchResult > list = wiki.getSearchManager().findPages( query, wikiContext );
 
       //  Filter down to only those that we actually have a permission to view
       AuthorizationManager mgr = wiki.getAuthorizationManager();
 
-      ArrayList items = new ArrayList();
+      ArrayList< SearchResult > items = new ArrayList<>();
 
-      for( Iterator i = list.iterator(); i.hasNext(); )
+      for( Iterator< SearchResult > i = list.iterator(); i.hasNext(); )
       {
-        SearchResult r = (SearchResult)i.next();
+        SearchResult r = i.next();
 
         WikiPage p = r.getPage();
 


[jspwiki] 13/17: log exception instead of using printStackTrace, use UTF-8 constant

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 3d0444833a4473fb55d86f88f4dafad5645596f9
Author: juanpablo <ju...@apache.org>
AuthorDate: Sat Nov 3 00:52:48 2018 +0100

    log exception instead of using printStackTrace, use UTF-8 constant
---
 .../main/java/org/apache/wiki/auth/user/AbstractUserDatabase.java   | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/jspwiki-main/src/main/java/org/apache/wiki/auth/user/AbstractUserDatabase.java b/jspwiki-main/src/main/java/org/apache/wiki/auth/user/AbstractUserDatabase.java
index aada83b..fbdf620 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/auth/user/AbstractUserDatabase.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/auth/user/AbstractUserDatabase.java
@@ -19,6 +19,7 @@
 package org.apache.wiki.auth.user;
 
 import java.io.UnsupportedEncodingException;
+import java.nio.charset.StandardCharsets;
 import java.security.MessageDigest;
 import java.security.NoSuchAlgorithmException;
 import java.security.Principal;
@@ -232,7 +233,7 @@ public abstract class AbstractUserDatabase implements UserDatabase
             if ( newPasswordFormat )
             {
                 hashedPassword = getHash( password );
-                return CryptoUtil.verifySaltedPassword( password.getBytes("UTF-8"), storedPassword );
+                return CryptoUtil.verifySaltedPassword( password.getBytes( StandardCharsets.UTF_8 ), storedPassword );
             }
 
             // If old format, verify using the old SHA verification algorithm
@@ -265,8 +266,7 @@ public abstract class AbstractUserDatabase implements UserDatabase
         }
         catch( WikiSecurityException e )
         {
-            log.error( "Could not upgrade SHA password to SSHA because profile could not be saved. Reason: " + e.getMessage() );
-            e.printStackTrace();
+            log.error( "Could not upgrade SHA password to SSHA because profile could not be saved. Reason: " + e.getMessage(), e );
         }
         return false;
     }


[jspwiki] 17/17: 2.11.0-M1-git-07

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit dfb8b4521f6162517f321e92eb757d1797d89324
Author: juanpablo <ju...@apache.org>
AuthorDate: Sat Nov 3 00:58:51 2018 +0100

    2.11.0-M1-git-07
---
 ChangeLog                                               | 8 ++++++++
 jspwiki-main/src/main/java/org/apache/wiki/Release.java | 2 +-
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index 36ddbc9..64a6663 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2018-11-02  Juan Pablo Santos (juanpablo AT apache DOT org)
+
+       * 2.11.0-M1-git-07: removed a bunch of warnings throughout the code
+	   
+	   * added a Jenkinsfile
+	   
+	   * small backwards-incompatible change: WikiEngine#getRecentChanges() now returns a Set instead of a Collection
+
 2018-10-30  Juan Pablo Santos (juanpablo AT apache DOT org)
 
        * 2.11.0-M1-git-06: fix JSPs using methods removed on 2.11.0-M1-git-05
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/Release.java b/jspwiki-main/src/main/java/org/apache/wiki/Release.java
index 98cc9ae..c2bf99e 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/Release.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/Release.java
@@ -72,7 +72,7 @@ public final class Release {
      *  <p>
      *  If the build identifier is empty, it is not added.
      */
-    public static final String     BUILD         = "6";
+    public static final String     BUILD         = "7";
 
     /**
      *  This is the generic version string you should use when printing out the version.  It is of


[jspwiki] 03/17: remove warnings from org.apache.jspwiki.rss package

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 727cc48a8794bbe7ca9f9921bd388839a0854d22
Author: juanpablo <ju...@apache.org>
AuthorDate: Fri Nov 2 21:55:42 2018 +0100

    remove warnings from org.apache.jspwiki.rss package
---
 .../main/java/org/apache/wiki/rss/AtomFeed.java    | 10 ++++----
 .../main/java/org/apache/wiki/rss/RSS20Feed.java   |  4 ++--
 .../java/org/apache/wiki/rss/RSSGenerator.java     | 27 ++++++++++------------
 3 files changed, 19 insertions(+), 22 deletions(-)

diff --git a/jspwiki-main/src/main/java/org/apache/wiki/rss/AtomFeed.java b/jspwiki-main/src/main/java/org/apache/wiki/rss/AtomFeed.java
index 72b6866..919582e 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/rss/AtomFeed.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/rss/AtomFeed.java
@@ -79,7 +79,7 @@ public class AtomFeed extends Feed
         return e.getURL(); // FIXME: Not really a feed id!
     }
 
-    private Collection getItems()
+    private Collection<Element> getItems()
     {
         ArrayList<Element> list = new ArrayList<Element>();
 
@@ -89,9 +89,9 @@ public class AtomFeed extends Feed
         if( m_wikiContext.getHttpRequest() != null )
             servletContext = m_wikiContext.getHttpRequest().getSession().getServletContext();
 
-        for( Iterator i = m_entries.iterator(); i.hasNext(); )
+        for( Iterator< Entry > i = m_entries.iterator(); i.hasNext(); )
         {
-            Entry e = (Entry)i.next();
+            Entry e = i.next();
 
             WikiPage p = e.getPage();
 
@@ -160,9 +160,9 @@ public class AtomFeed extends Feed
 
         Date lastModified = new Date(0L);
 
-        for( Iterator i = m_entries.iterator(); i.hasNext(); )
+        for( Iterator< Entry > i = m_entries.iterator(); i.hasNext(); )
         {
-            Entry e = (Entry)i.next();
+            Entry e = i.next();
 
             if( e.getPage().getLastModified().after(lastModified) )
                 lastModified = e.getPage().getLastModified();
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/rss/RSS20Feed.java b/jspwiki-main/src/main/java/org/apache/wiki/rss/RSS20Feed.java
index f6f66ee..b3b09f5 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/rss/RSS20Feed.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/rss/RSS20Feed.java
@@ -53,9 +53,9 @@ public class RSS20Feed extends Feed
         super( context );
     }
 
-    private List getItems()
+    private List<Element> getItems()
     {
-        ArrayList<Element> list = new ArrayList<Element>();
+        ArrayList<Element> list = new ArrayList<>();
         SimpleDateFormat fmt = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss 'GMT'");
 
         WikiEngine engine = m_wikiContext.getEngine();
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/rss/RSSGenerator.java b/jspwiki-main/src/main/java/org/apache/wiki/rss/RSSGenerator.java
index 33bba9d..6bfcdd4 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/rss/RSSGenerator.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/rss/RSSGenerator.java
@@ -18,11 +18,11 @@
  */
 package org.apache.wiki.rss;
 
-import java.util.Collection;
 import java.util.Collections;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Properties;
+import java.util.Set;
 
 import org.apache.log4j.Logger;
 import org.apache.wiki.WikiContext;
@@ -318,7 +318,7 @@ public class RSSGenerator
      * @throws ProviderException If the underlying provider failed.
      * @throws IllegalArgumentException If an illegal mode is given.
      */
-    public String generateFeed( WikiContext wikiContext, List changed, String mode, String type )
+    public String generateFeed( WikiContext wikiContext, List< WikiPage > changed, String mode, String type )
         throws ProviderException, IllegalArgumentException
     {
         Feed feed = null;
@@ -395,20 +395,19 @@ public class RSSGenerator
         feed.setChannelLanguage( m_channelLanguage );
         feed.setChannelDescription( m_channelDescription );
 
-        Collection changed = m_engine.getRecentChanges();
+        Set< WikiPage > changed = m_engine.getRecentChanges();
 
         WikiSession session = WikiSession.guestSession( m_engine );
         int items = 0;
-        for( Iterator i = changed.iterator(); i.hasNext() && items < 15; items++ )
+        for( Iterator< WikiPage > i = changed.iterator(); i.hasNext() && items < 15; items++ )
         {
-            WikiPage page = (WikiPage) i.next();
+            WikiPage page = i.next();
 
             //
             //  Check if the anonymous user has view access to this page.
             //
 
-            if( !m_engine.getAuthorizationManager().checkPermission(session,
-                                                                    new PagePermission(page,PagePermission.VIEW_ACTION) ) )
+            if( !m_engine.getAuthorizationManager().checkPermission(session, new PagePermission(page,PagePermission.VIEW_ACTION) ) )
             {
                 // No permission, skip to the next one.
                 continue;
@@ -454,8 +453,7 @@ public class RSSGenerator
      * @param feed A Feed object to fill.
      * @return the RSS representation of the wiki context
      */
-    @SuppressWarnings("unchecked")
-    protected String generateWikiPageRSS( WikiContext wikiContext, List changed, Feed feed )
+    protected String generateWikiPageRSS( WikiContext wikiContext, List< WikiPage > changed, Feed feed )
     {
         feed.setChannelTitle( m_engine.getApplicationName()+": "+wikiContext.getPage().getName() );
         feed.setFeedURL( wikiContext.getViewURL( wikiContext.getPage().getName() ) );
@@ -476,9 +474,9 @@ public class RSSGenerator
         Collections.sort( changed, new PageTimeComparator() );
 
         int items = 0;
-        for( Iterator i = changed.iterator(); i.hasNext() && items < 15; items++ )
+        for( Iterator< WikiPage > i = changed.iterator(); i.hasNext() && items < 15; items++ )
         {
-            WikiPage page = (WikiPage) i.next();
+            WikiPage page = i.next();
 
             Entry e = new Entry();
 
@@ -528,8 +526,7 @@ public class RSSGenerator
      *  @return A String of valid RSS or Atom.
      *  @throws ProviderException If reading of pages was not possible.
      */
-    @SuppressWarnings("unchecked")
-    protected String generateBlogRSS( WikiContext wikiContext, List changed, Feed feed )
+    protected String generateBlogRSS( WikiContext wikiContext, List< WikiPage > changed, Feed feed )
         throws ProviderException
     {
         if( log.isDebugEnabled() ) log.debug("Generating RSS for blog, size="+changed.size());
@@ -560,9 +557,9 @@ public class RSSGenerator
         Collections.sort( changed, new PageTimeComparator() );
 
         int items = 0;
-        for( Iterator i = changed.iterator(); i.hasNext() && items < 15; items++ )
+        for( Iterator< WikiPage > i = changed.iterator(); i.hasNext() && items < 15; items++ )
         {
-            WikiPage page = (WikiPage) i.next();
+            WikiPage page = i.next();
 
             Entry e = new Entry();
 


[jspwiki] 04/17: remove dead store

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 0b51f0b050effc9e7d7fee5122e38ea1dfc43510
Author: juanpablo <ju...@apache.org>
AuthorDate: Fri Nov 2 21:56:15 2018 +0100

    remove dead store
---
 jspwiki-main/src/main/java/org/apache/wiki/PageManager.java | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/jspwiki-main/src/main/java/org/apache/wiki/PageManager.java b/jspwiki-main/src/main/java/org/apache/wiki/PageManager.java
index 0482bc0..62f0ea0 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/PageManager.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/PageManager.java
@@ -312,8 +312,6 @@ public class PageManager extends ModuleManager implements WikiEventListener {
      * @return null, if page could not be locked.
      */
     public PageLock lockPage(WikiPage page, String user) {
-        PageLock lock = null;
-
         if (m_reaper == null) {
             //
             //  Start the lock reaper lazily.  We don't want to start it in
@@ -326,7 +324,7 @@ public class PageManager extends ModuleManager implements WikiEventListener {
         }
 
         fireEvent(WikiPageEvent.PAGE_LOCK, page.getName()); // prior to or after actual lock?
-        lock = m_pageLocks.get(page.getName());
+        PageLock lock = m_pageLocks.get(page.getName());
 
         if (lock == null) {
             //


[jspwiki] 06/17: remove warnings from tests on org.apache.jspwiki.workflow package

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 1c3afb74b944e692853432d3b41d5fe2a90f9473
Author: juanpablo <ju...@apache.org>
AuthorDate: Fri Nov 2 21:59:08 2018 +0100

    remove warnings from tests on org.apache.jspwiki.workflow package
---
 .../test/java/org/apache/wiki/workflow/ApprovalWorkflowTest.java    | 6 +++---
 .../src/test/java/org/apache/wiki/workflow/DecisionQueueTest.java   | 4 ++--
 .../src/test/java/org/apache/wiki/workflow/SimpleDecisionTest.java  | 6 +++---
 jspwiki-main/src/test/java/org/apache/wiki/workflow/TaskTest.java   | 4 ++--
 4 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/jspwiki-main/src/test/java/org/apache/wiki/workflow/ApprovalWorkflowTest.java b/jspwiki-main/src/test/java/org/apache/wiki/workflow/ApprovalWorkflowTest.java
index 3acbbb1..6179c4f 100644
--- a/jspwiki-main/src/test/java/org/apache/wiki/workflow/ApprovalWorkflowTest.java
+++ b/jspwiki-main/src/test/java/org/apache/wiki/workflow/ApprovalWorkflowTest.java
@@ -106,7 +106,7 @@ public class ApprovalWorkflowTest
         Assertions.assertNotNull( w.getAttribute( "task.preSaveWikiPage") );
         Assertions.assertEquals( new WikiPrincipal( Users.JANNE ), decision.getActor() );
         Assertions.assertEquals( decisionKey, decision.getMessageKey() );
-        List decisionFacts = ((Decision)decision).getFacts();
+        List< Fact > decisionFacts = ((Decision)decision).getFacts();
         Assertions.assertEquals( 3, decisionFacts.size() );
         Assertions.assertEquals( facts[0], decisionFacts.get(0) );
         Assertions.assertEquals( facts[1], decisionFacts.get(1) );
@@ -199,7 +199,7 @@ public class ApprovalWorkflowTest
         Assertions.assertFalse( m_engine.pageExists(pageName));
 
         // Second, GroupPrincipal Admin should see a Decision in its queue
-        Collection decisions = m_dq.getActorDecisions( m_engine.adminSession() );
+        Collection< Decision > decisions = m_dq.getActorDecisions( m_engine.adminSession() );
         Assertions.assertEquals(1, decisions.size());
 
         // Now, approve the decision and it should go away, and page should appear.
@@ -232,7 +232,7 @@ public class ApprovalWorkflowTest
         Assertions.assertFalse( m_engine.pageExists(pageName));
 
         // ...and there should be a Decision in GroupPrincipal Admin's queue
-        Collection decisions = m_dq.getActorDecisions( m_engine.adminSession() );
+        Collection< Decision > decisions = m_dq.getActorDecisions( m_engine.adminSession() );
         Assertions.assertEquals(1, decisions.size());
 
         // Now, DENY the decision and the page should still not exist...
diff --git a/jspwiki-main/src/test/java/org/apache/wiki/workflow/DecisionQueueTest.java b/jspwiki-main/src/test/java/org/apache/wiki/workflow/DecisionQueueTest.java
index cf5d8da..a19241b 100644
--- a/jspwiki-main/src/test/java/org/apache/wiki/workflow/DecisionQueueTest.java
+++ b/jspwiki-main/src/test/java/org/apache/wiki/workflow/DecisionQueueTest.java
@@ -152,7 +152,7 @@ public class DecisionQueueTest
     @Test
     public void testActorDecisions()
     {
-        Collection decisions = m_queue.getActorDecisions(adminSession);
+        Collection< Decision > decisions = m_queue.getActorDecisions(adminSession);
         Assertions.assertEquals(1, decisions.size());
 
         decisions = m_queue.getActorDecisions(janneSession);
@@ -184,7 +184,7 @@ public class DecisionQueueTest
         Assertions.assertEquals(decision, w.getCurrentStep());
 
         // Verify that it's also in Janne's DecisionQueue
-        Collection decisions = m_queue.getActorDecisions(janneSession);
+        Collection< Decision > decisions = m_queue.getActorDecisions(janneSession);
         Assertions.assertEquals(1, decisions.size());
         Decision d = (Decision)decisions.iterator().next();
         Assertions.assertEquals(decision, d);
diff --git a/jspwiki-main/src/test/java/org/apache/wiki/workflow/SimpleDecisionTest.java b/jspwiki-main/src/test/java/org/apache/wiki/workflow/SimpleDecisionTest.java
index d7c3c1b..a2c11b5 100644
--- a/jspwiki-main/src/test/java/org/apache/wiki/workflow/SimpleDecisionTest.java
+++ b/jspwiki-main/src/test/java/org/apache/wiki/workflow/SimpleDecisionTest.java
@@ -52,7 +52,7 @@ public class SimpleDecisionTest
         m_decision.addFact(f3);
 
         // The facts should be available, and returned in order
-        List facts = m_decision.getFacts();
+        List< Fact > facts = m_decision.getFacts();
         Assertions.assertEquals(f1, facts.get(0));
         Assertions.assertEquals(f2, facts.get(1));
         Assertions.assertEquals(f3, facts.get(2));
@@ -109,7 +109,7 @@ public class SimpleDecisionTest
         m_decision.addError("Error deciding something.");
         m_decision.addError("Error deciding something else.");
 
-        List errors = m_decision.getErrors();
+        List< String > errors = m_decision.getErrors();
         Assertions.assertEquals(2, errors.size());
         Assertions.assertEquals("Error deciding something.", errors.get(0));
         Assertions.assertEquals("Error deciding something else.", errors.get(1));
@@ -118,7 +118,7 @@ public class SimpleDecisionTest
     @Test
     public void testAvailableOutcomes()
     {
-        Collection outcomes = m_decision.getAvailableOutcomes();
+        Collection< Outcome > outcomes = m_decision.getAvailableOutcomes();
         Assertions.assertTrue(outcomes.contains(Outcome.DECISION_APPROVE));
         Assertions.assertTrue(outcomes.contains(Outcome.DECISION_DENY));
         Assertions.assertFalse(outcomes.contains(Outcome.DECISION_HOLD));
diff --git a/jspwiki-main/src/test/java/org/apache/wiki/workflow/TaskTest.java b/jspwiki-main/src/test/java/org/apache/wiki/workflow/TaskTest.java
index bfd70c4..0eebdb1 100644
--- a/jspwiki-main/src/test/java/org/apache/wiki/workflow/TaskTest.java
+++ b/jspwiki-main/src/test/java/org/apache/wiki/workflow/TaskTest.java
@@ -110,7 +110,7 @@ public class TaskTest
         m_task.addError("Error deciding something.");
         m_task.addError("Error deciding something else.");
 
-        List errors = m_task.getErrors();
+        List< String > errors = m_task.getErrors();
         Assertions.assertEquals(2, errors.size());
         Assertions.assertEquals("Error deciding something.", errors.get(0));
         Assertions.assertEquals("Error deciding something else.", errors.get(1));
@@ -119,7 +119,7 @@ public class TaskTest
     @Test
     public void testAvailableOutcomes()
     {
-        Collection outcomes = m_task.getAvailableOutcomes();
+        Collection< Outcome > outcomes = m_task.getAvailableOutcomes();
         Assertions.assertFalse(outcomes.contains(Outcome.DECISION_APPROVE));
         Assertions.assertFalse(outcomes.contains(Outcome.DECISION_DENY));
         Assertions.assertFalse(outcomes.contains(Outcome.DECISION_HOLD));


[jspwiki] 09/17: use try with resources

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit f36ad8f85985686bde64c2c5c850a52fb2dbf0b3
Author: juanpablo <ju...@apache.org>
AuthorDate: Fri Nov 2 22:04:07 2018 +0100

    use try with resources
---
 .../java/org/apache/wiki/util/PropertyReader.java  | 58 +++++++++++-----------
 1 file changed, 28 insertions(+), 30 deletions(-)

diff --git a/jspwiki-main/src/main/java/org/apache/wiki/util/PropertyReader.java b/jspwiki-main/src/main/java/org/apache/wiki/util/PropertyReader.java
index 5b5ed05..81cdfb5 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/util/PropertyReader.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/util/PropertyReader.java
@@ -20,6 +20,7 @@ package org.apache.wiki.util;
 
 import java.io.File;
 import java.io.FileInputStream;
+import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.io.InputStream;
 import java.util.Enumeration;
@@ -34,7 +35,6 @@ import org.apache.commons.io.IOUtils;
 import org.apache.commons.lang.StringUtils;
 import org.apache.commons.lang.Validate;
 import org.apache.log4j.Logger;
-import org.apache.wiki.Release;
 
 
 /**
@@ -114,22 +114,8 @@ public final class PropertyReader {
      */
     public static Properties loadWebAppProps( ServletContext context ) {
         String propertyFile = getInitParameter( context, PARAM_CUSTOMCONFIG );
-        InputStream propertyStream = null;
-
-        try {
-            //
-            //  Figure out where our properties lie.
-            //
-            if( propertyFile == null ) {
-                LOG.info( "No " + PARAM_CUSTOMCONFIG + " defined for this context, " +
-                             "looking for custom properties file with default name of: " + CUSTOM_JSPWIKI_CONFIG );
-                //  Use the custom property file at the default location
-                propertyStream =  locateClassPathResource(context, CUSTOM_JSPWIKI_CONFIG);
-            } else {
-                LOG.info(PARAM_CUSTOMCONFIG + " defined, using " + propertyFile + " as the custom properties file.");
-                propertyStream = new FileInputStream( new File(propertyFile) );
-            }
 
+        try( InputStream propertyStream = loadCustomPropertiesFile(context, propertyFile) ) {
             Properties props = getDefaultProperties();
             if( propertyStream == null ) {
                 LOG.info("No custom property file found, relying on JSPWiki defaults.");
@@ -148,15 +134,33 @@ public final class PropertyReader {
 
             return props;
         } catch( Exception e ) {
-            LOG.error( Release.APPNAME + ": Unable to load and setup properties from jspwiki.properties. " +
-                         e.getMessage() );
-        } finally {
-        	IOUtils.closeQuietly( propertyStream );
+            LOG.error( "JSPWiki: Unable to load and setup properties from jspwiki.properties. " + e.getMessage() );
         }
 
         return null;
     }
 
+    /**
+     * Figure out where our properties lie.
+     * 
+     * @param context
+     * @param propertyFile
+     * @return
+     * @throws FileNotFoundException
+     */
+	static InputStream loadCustomPropertiesFile(ServletContext context, String propertyFile) throws FileNotFoundException {
+		InputStream propertyStream;
+		if( propertyFile == null ) {
+		    LOG.info( "No " + PARAM_CUSTOMCONFIG + " defined for this context, looking for custom properties file with default name of: " + CUSTOM_JSPWIKI_CONFIG );
+		    //  Use the custom property file at the default location
+		    propertyStream =  locateClassPathResource(context, CUSTOM_JSPWIKI_CONFIG);
+		} else {
+		    LOG.info( PARAM_CUSTOMCONFIG + " defined, using " + propertyFile + " as the custom properties file." );
+		    propertyStream = new FileInputStream( new File(propertyFile) );
+		}
+		return propertyStream;
+	}
+
 
     /**
      *  Returns the property set as a Properties object.
@@ -236,7 +240,6 @@ public final class PropertyReader {
         // get into cascade...
         int depth = 0;
         boolean more = true;
-        InputStream propertyStream = null;
         while( more ) {
             depth++;
             String propertyFile = getInitParameter( context, PARAM_CUSTOMCONFIG_CASCADEPREFIX + depth );
@@ -246,18 +249,13 @@ public final class PropertyReader {
                 break;
             }
 
-            try {
+            try( InputStream propertyStream = new FileInputStream( new File( propertyFile ) ) ) {
                 LOG.info( " Reading additional properties from " + propertyFile + " and merge to cascade." );
                 Properties additionalProps = new Properties();
-                propertyStream = new FileInputStream( new File( propertyFile ) );
-                additionalProps.load(propertyStream);
-                defaultProperties.putAll(additionalProps);
+                additionalProps.load( propertyStream );
+                defaultProperties.putAll( additionalProps );
             } catch( Exception e ) {
-                LOG.error( " " + Release.APPNAME +
-                             ": Unable to load and setup properties from " + propertyFile + "." +
-                             e.getMessage() );
-            } finally {
-            	IOUtils.closeQuietly( propertyStream );
+                LOG.error( "JSPWiki: Unable to load and setup properties from " + propertyFile + "." + e.getMessage() );
             }
         }
 


[jspwiki] 02/17: remove warnings from org.apache.jspwiki.workflow package

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 3dc5e992524aa69479daa15ef788b0da35c59d44
Author: juanpablo <ju...@apache.org>
AuthorDate: Fri Nov 2 21:55:11 2018 +0100

    remove warnings from org.apache.jspwiki.workflow package
---
 .../main/java/org/apache/wiki/workflow/AbstractStep.java |  4 ++--
 .../src/main/java/org/apache/wiki/workflow/Decision.java |  2 +-
 .../java/org/apache/wiki/workflow/DecisionQueue.java     |  7 +++----
 .../src/main/java/org/apache/wiki/workflow/Step.java     |  4 ++--
 .../src/main/java/org/apache/wiki/workflow/Workflow.java |  2 +-
 .../java/org/apache/wiki/workflow/WorkflowManager.java   | 16 +++++++---------
 6 files changed, 16 insertions(+), 19 deletions(-)

diff --git a/jspwiki-main/src/main/java/org/apache/wiki/workflow/AbstractStep.java b/jspwiki-main/src/main/java/org/apache/wiki/workflow/AbstractStep.java
index cbd75ef..3de438f 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/workflow/AbstractStep.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/workflow/AbstractStep.java
@@ -110,7 +110,7 @@ public abstract class AbstractStep implements Step
     /**
      * {@inheritDoc}
      */
-    public final Collection getAvailableOutcomes()
+    public final Collection< Outcome > getAvailableOutcomes()
     {
         Set<Outcome> outcomes = m_successors.keySet();
         return Collections.unmodifiableCollection( outcomes );
@@ -119,7 +119,7 @@ public abstract class AbstractStep implements Step
     /**
      * {@inheritDoc}
      */
-    public final List getErrors()
+    public final List< String > getErrors()
     {
         return Collections.unmodifiableList( m_errors );
     }
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/workflow/Decision.java b/jspwiki-main/src/main/java/org/apache/wiki/workflow/Decision.java
index c7cfd0b..003be8d 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/workflow/Decision.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/workflow/Decision.java
@@ -187,7 +187,7 @@ public abstract class Decision extends AbstractStep
      * 
      * @return the list of Facts
      */
-    public final List getFacts()
+    public final List< Fact > getFacts()
     {
         return Collections.unmodifiableList( m_facts );
     }
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/workflow/DecisionQueue.java b/jspwiki-main/src/main/java/org/apache/wiki/workflow/DecisionQueue.java
index 5790273..135ce56 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/workflow/DecisionQueue.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/workflow/DecisionQueue.java
@@ -67,8 +67,7 @@ public class DecisionQueue implements Serializable
      * order of submission. If no Decisions are pending, this method returns a
      * zero-length array.
      *
-     * @return the pending decisions TODO: explore whether this method could be
-     *         made protected
+     * @return the pending decisions 
      */
     protected Decision[] decisions()
     {
@@ -95,9 +94,9 @@ public class DecisionQueue implements Serializable
      *            the wiki session
      * @return the collection of Decisions, which may be empty
      */
-    public Collection getActorDecisions(WikiSession session)
+    public Collection<Decision> getActorDecisions(WikiSession session)
     {
-        ArrayList<Decision> decisions = new ArrayList<Decision>();
+        ArrayList<Decision> decisions = new ArrayList<>();
         if ( session.isAuthenticated() )
         {
             Principal[] principals = session.getPrincipals();
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/workflow/Step.java b/jspwiki-main/src/main/java/org/apache/wiki/workflow/Step.java
index 9539ed4..4a98248 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/workflow/Step.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/workflow/Step.java
@@ -85,7 +85,7 @@ public interface Step extends Serializable
      * 
      * @return the set of outcomes
      */
-    Collection getAvailableOutcomes();
+    Collection< Outcome > getAvailableOutcomes();
 
     /**
      * Returns a List of error strings generated by this Step. If this Step
@@ -93,7 +93,7 @@ public interface Step extends Serializable
      * 
      * @return the errors
      */
-    List getErrors();
+    List< String > getErrors();
 
     /**
      * <p>
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/workflow/Workflow.java b/jspwiki-main/src/main/java/org/apache/wiki/workflow/Workflow.java
index d752642..0884dee 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/workflow/Workflow.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/workflow/Workflow.java
@@ -504,7 +504,7 @@ public class Workflow implements Serializable
      * @return an array of Steps representing those that have executed, or are
      *         currently executing
      */
-    public final List getHistory()
+    public final List< Step > getHistory()
     {
         return Collections.unmodifiableList( m_history );
     }
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/workflow/WorkflowManager.java b/jspwiki-main/src/main/java/org/apache/wiki/workflow/WorkflowManager.java
index 677fe15..a0f4f6e 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/workflow/WorkflowManager.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/workflow/WorkflowManager.java
@@ -65,9 +65,9 @@ public class WorkflowManager implements WikiEventListener {
     public WorkflowManager()
     {
         m_next = 1;
-        m_workflows = new HashSet<Workflow>();
-        m_approvers = new HashMap<String, Principal>();
-        m_completed = new ArrayList<Workflow>();
+        m_workflows = new HashSet<>();
+        m_approvers = new HashMap<>();
+        m_completed = new ArrayList<>();
     }
 
     /**
@@ -91,8 +91,7 @@ public class WorkflowManager implements WikiEventListener {
      *
      * @return the current workflows
      */
-    public Collection getWorkflows()
-    {
+    public Collection< Workflow > getWorkflows() {
         return new HashSet<Workflow>( m_workflows );
     }
 
@@ -100,9 +99,8 @@ public class WorkflowManager implements WikiEventListener {
      * Returns a collection of finished workflows; that is, those that have aborted or completed.
      * @return the finished workflows
      */
-    public List getCompletedWorkflows()
-    {
-        return new ArrayList<Workflow>( m_completed );
+    public List< Workflow > getCompletedWorkflows() {
+        return new ArrayList< Workflow >( m_completed );
     }
 
     private WikiEngine m_engine = null;
@@ -247,7 +245,7 @@ public class WorkflowManager implements WikiEventListener {
      * @param session the wiki session
      * @return the collection workflows the wiki session owns, which may be empty
      */
-    public Collection getOwnerWorkflows( WikiSession session )
+    public Collection< Workflow > getOwnerWorkflows( WikiSession session )
     {
         List<Workflow> workflows = new ArrayList<Workflow>();
         if ( session.isAuthenticated() )


[jspwiki] 05/17: use try with resources

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 0964e8752a4f8cda4fd16fb0b9040b3a12ac5ba1
Author: juanpablo <ju...@apache.org>
AuthorDate: Fri Nov 2 21:56:49 2018 +0100

    use try with resources
---
 .../java/org/apache/wiki/ReferenceManager.java     | 32 ++++------------------
 1 file changed, 6 insertions(+), 26 deletions(-)

diff --git a/jspwiki-main/src/main/java/org/apache/wiki/ReferenceManager.java b/jspwiki-main/src/main/java/org/apache/wiki/ReferenceManager.java
index 12be34e..f12b698 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/ReferenceManager.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/ReferenceManager.java
@@ -321,18 +321,14 @@ public class ReferenceManager
         throws IOException,
                ClassNotFoundException
     {
-        ObjectInputStream in = null;
         long saved = 0L;
 
-        try
+        File f = new File( m_engine.getWorkDir(), SERIALIZATION_FILE );
+        try( ObjectInputStream in = new ObjectInputStream( new BufferedInputStream(new FileInputStream(f)) ) )
         {
             StopWatch sw = new StopWatch();
             sw.start();
 
-            File f = new File( m_engine.getWorkDir(), SERIALIZATION_FILE );
-
-            in = new ObjectInputStream( new BufferedInputStream(new FileInputStream(f)) );
-
             long ver     = in.readLong();
 
             if( ver != serialVersionUID )
@@ -352,10 +348,6 @@ public class ReferenceManager
             sw.stop();
             log.debug("Read serialized data successfully in "+sw);
         }
-        finally
-        {
-            if( in != null ) in.close();
-        }
 
         return saved;
     }
@@ -365,17 +357,11 @@ public class ReferenceManager
      */
     private synchronized void serializeToDisk()
     {
-        ObjectOutputStream out = null;
-
-        try
-        {
+        File f = new File( m_engine.getWorkDir(), SERIALIZATION_FILE );
+        try( ObjectOutputStream out = new ObjectOutputStream( new BufferedOutputStream( new FileOutputStream( f ) ) ) ) {
             StopWatch sw = new StopWatch();
             sw.start();
 
-            File f = new File( m_engine.getWorkDir(), SERIALIZATION_FILE );
-
-            out = new ObjectOutputStream( new BufferedOutputStream(new FileOutputStream(f)) );
-
             out.writeLong( serialVersionUID );
             out.writeLong( System.currentTimeMillis() ); // Timestamp
             out.writeObject( m_refersTo );
@@ -387,15 +373,9 @@ public class ReferenceManager
 
             log.debug("serialization done - took "+sw);
         }
-        catch( IOException e )
+        catch( IOException ioe )
         {
-            log.error("Unable to serialize!");
-
-            try
-            {
-                if( out != null ) out.close();
-            }
-            catch( IOException ex ) {}
+            log.error("Unable to serialize!", ioe);
         }
     }
 


[jspwiki] 11/17: more use of generics, reorganize imports and removal of unused @SuppressWarnings

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 1f5ef18c116aef7b5fa9798a07e68adda63b3a38
Author: juanpablo <ju...@apache.org>
AuthorDate: Sat Nov 3 00:50:40 2018 +0100

    more use of generics, reorganize imports and removal of unused @SuppressWarnings
---
 .../src/main/java/org/apache/wiki/PageManager.java  | 12 ++++++------
 .../org/apache/wiki/event/WikiEventManager.java     | 13 +++++++++++--
 .../org/apache/wiki/event/WikiSecurityEvent.java    |  4 ++--
 .../java/org/apache/wiki/event/WorkflowEvent.java   | 21 +++++++--------------
 .../java/org/apache/wiki/modules/ModuleManager.java |  4 ++--
 .../apache/wiki/plugin/AbstractReferralPlugin.java  | 10 +++++-----
 .../org/apache/wiki/plugin/WeblogEntryPlugin.java   |  6 +++---
 .../org/apache/wiki/rpc/atom/AtomAPIServlet.java    |  6 +++---
 .../apache/wiki/search/LuceneSearchProvider.java    |  8 ++++----
 .../main/java/org/apache/wiki/ui/EditorManager.java |  2 +-
 .../java/org/apache/wiki/ui/TemplateManager.java    | 21 ++++++++++-----------
 .../org/apache/wiki/ui/admin/WikiFormAdminBean.java |  2 +-
 .../wiki/ui/admin/beans/SearchManagerBean.java      |  1 -
 .../java/org/apache/wiki/workflow/AbstractStep.java |  9 ++++++++-
 .../java/org/apache/wiki/workflow/Workflow.java     |  8 +++++++-
 15 files changed, 70 insertions(+), 57 deletions(-)

diff --git a/jspwiki-main/src/main/java/org/apache/wiki/PageManager.java b/jspwiki-main/src/main/java/org/apache/wiki/PageManager.java
index 62f0ea0..87d3c9a 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/PageManager.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/PageManager.java
@@ -150,7 +150,7 @@ public class PageManager extends ModuleManager implements WikiEventListener {
 
     private WikiPageProvider m_provider;
 
-    protected ConcurrentHashMap<String, PageLock> m_pageLocks = new ConcurrentHashMap<String, PageLock>();
+    protected ConcurrentHashMap<String, PageLock> m_pageLocks = new ConcurrentHashMap<>();
 
     private WikiEngine m_engine;
 
@@ -225,7 +225,7 @@ public class PageManager extends ModuleManager implements WikiEventListener {
      * @return A Collection of WikiPage objects.
      * @throws ProviderException If the backend has problems.
      */
-    public Collection getAllPages() throws ProviderException {
+    public Collection< WikiPage > getAllPages() throws ProviderException {
         return m_provider.getAllPages();
     }
 
@@ -692,7 +692,7 @@ public class PageManager extends ModuleManager implements WikiEventListener {
      */
     @Override
     public Collection< WikiModuleInfo > modules() {
-        return null;
+        return new ArrayList<>();
     }
 
     /**
@@ -730,9 +730,9 @@ public class PageManager extends ModuleManager implements WikiEventListener {
             // Examine each page ACL
             try {
                 int pagesChanged = 0;
-                Collection pages = getAllPages();
-                for (Iterator it = pages.iterator(); it.hasNext(); ) {
-                    WikiPage page = (WikiPage) it.next();
+                Collection< WikiPage > pages = getAllPages();
+                for (Iterator< WikiPage > it = pages.iterator(); it.hasNext(); ) {
+                    WikiPage page = it.next();
                     boolean aclChanged = changeAcl(page, oldPrincipals, newPrincipal);
                     if (aclChanged) {
                         // If the Acl needed changing, change it now
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/event/WikiEventManager.java b/jspwiki-main/src/main/java/org/apache/wiki/event/WikiEventManager.java
index 751b634..fb0c5ad 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/event/WikiEventManager.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/event/WikiEventManager.java
@@ -20,7 +20,16 @@
 package org.apache.wiki.event;
 
 import java.lang.ref.WeakReference;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.ConcurrentModificationException;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeSet;
+import java.util.Vector;
 
 import org.apache.log4j.Logger;
 
@@ -470,7 +479,7 @@ public final class WikiEventManager
         {
             synchronized( m_listenerList )
             {
-                TreeSet<WikiEventListener> set = new TreeSet<WikiEventListener>( new WikiEventListenerComparator() );
+                TreeSet<WikiEventListener> set = new TreeSet<>( new WikiEventListenerComparator() );
 
                 for( Iterator i = m_listenerList.iterator(); i.hasNext(); )
                 {
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/event/WikiSecurityEvent.java b/jspwiki-main/src/main/java/org/apache/wiki/event/WikiSecurityEvent.java
index dd67531..e498327 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/event/WikiSecurityEvent.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/event/WikiSecurityEvent.java
@@ -234,7 +234,7 @@ public final class WikiSecurityEvent extends WikiEvent
             case LOGIN_CREDENTIAL_EXPIRED:  return "LOGIN_ACCOUNT_EXPIRED";
             case LOGIN_FAILED:              return "LOGIN_FAILED";
             case LOGOUT:                    return "LOGOUT";
-            case PRINCIPAL_ADD:                    return "PRINCIPAL_ADD";
+            case PRINCIPAL_ADD:             return "PRINCIPAL_ADD";
             case SESSION_EXPIRED:           return "SESSION_EXPIRED";
             case GROUP_ADD:                 return "GROUP_ADD";
             case GROUP_REMOVE:              return "GROUP_REMOVE";
@@ -261,7 +261,7 @@ public final class WikiSecurityEvent extends WikiEvent
             case LOGIN_CREDENTIAL_EXPIRED:  return "login failed: credential expired";
             case LOGIN_FAILED:              return "login failed";
             case LOGOUT:                    return "user logged out";
-            case PRINCIPAL_ADD:                   return "new principal added";
+            case PRINCIPAL_ADD:             return "new principal added";
             case SESSION_EXPIRED:           return "session expired";
             case GROUP_ADD:                 return "new group added";
             case GROUP_REMOVE:              return "group removed";
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/event/WorkflowEvent.java b/jspwiki-main/src/main/java/org/apache/wiki/event/WorkflowEvent.java
index fc7a710..5f2c552 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/event/WorkflowEvent.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/event/WorkflowEvent.java
@@ -97,20 +97,13 @@ public final class WorkflowEvent extends WikiEvent {
      */
     public String eventName( int type ) {
         switch( type ) {
-            case CREATED:
-                return "CREATED";
-            case ABORTED:
-                return "ABORTED";
-            case COMPLETED:
-                return "COMPLETED";
-            case RUNNING:
-                return "RUNNING";
-            case STARTED:
-                return "STARTED";
-            case WAITING:
-                return "WAITING";
-            default:
-                return super.eventName();
+            case CREATED:   return "CREATED";
+            case ABORTED:   return "ABORTED";
+            case COMPLETED: return "COMPLETED";
+            case RUNNING:   return "RUNNING";
+            case STARTED:   return "STARTED";
+            case WAITING:   return "WAITING";
+            default:        return super.eventName();
         }
     }
 
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/modules/ModuleManager.java b/jspwiki-main/src/main/java/org/apache/wiki/modules/ModuleManager.java
index 35a59e4..e0e5b82 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/modules/ModuleManager.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/modules/ModuleManager.java
@@ -79,10 +79,10 @@ public abstract class ModuleManager
      *
      * @return A Collection of WikiModuleInfo instances.
      */
-    public abstract Collection modules();
+    public abstract Collection< WikiModuleInfo > modules();
 
     protected < T extends WikiModuleInfo > Collection< WikiModuleInfo > modules( Iterator< T > iterator ) {
-        Set< WikiModuleInfo > ls = new TreeSet< WikiModuleInfo >();
+        Set< WikiModuleInfo > ls = new TreeSet<>();
 
         for( Iterator< T > i = iterator; i.hasNext(); ) {
             WikiModuleInfo wmi = i.next();
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/plugin/AbstractReferralPlugin.java b/jspwiki-main/src/main/java/org/apache/wiki/plugin/AbstractReferralPlugin.java
index ed5e8f3..2c530be 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/plugin/AbstractReferralPlugin.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/plugin/AbstractReferralPlugin.java
@@ -259,7 +259,7 @@ public abstract class AbstractReferralPlugin implements WikiPlugin
      */
     protected Collection filterCollection( Collection c )
     {
-        ArrayList<Object> result = new ArrayList<Object>();
+        ArrayList<Object> result = new ArrayList<>();
 
         PatternMatcher pm = new Perl5Matcher();
 
@@ -366,22 +366,22 @@ public abstract class AbstractReferralPlugin implements WikiPlugin
      *  @param numItems How many items to show.
      *  @return The WikiText
      */
-    protected String wikitizeCollection( Collection links, String separator, int numItems )
+    protected String wikitizeCollection( Collection< String > links, String separator, int numItems )
     {
         if( links == null || links.isEmpty() )
             return "";
 
         StringBuilder output = new StringBuilder();
 
-        Iterator it     = links.iterator();
-        int      count  = 0;
+        Iterator< String > it = links.iterator();
+        int count = 0;
 
         //
         //  The output will be B Item[1] A S B Item[2] A S B Item[3] A
         //
         while( it.hasNext() && ( (count < numItems) || ( numItems == ALL_ITEMS ) ) )
         {
-            String value = (String)it.next();
+            String value = it.next();
 
             if( count > 0 )
             {
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/plugin/WeblogEntryPlugin.java b/jspwiki-main/src/main/java/org/apache/wiki/plugin/WeblogEntryPlugin.java
index ce403da..a18bb2d 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/plugin/WeblogEntryPlugin.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/plugin/WeblogEntryPlugin.java
@@ -124,13 +124,13 @@ public class WeblogEntryPlugin implements WikiPlugin {
                               String baseName,
                               String date)
             throws ProviderException {
-        Collection everyone = mgr.getAllPages();
+        Collection< WikiPage > everyone = mgr.getAllPages();
         int max = 0;
 
         String startString = WeblogPlugin.makeEntryPage(baseName, date, "");
 
-        for (Iterator i = everyone.iterator(); i.hasNext(); ) {
-            WikiPage p = (WikiPage) i.next();
+        for (Iterator< WikiPage > i = everyone.iterator(); i.hasNext(); ) {
+            WikiPage p = i.next();
 
             if (p.getName().startsWith(startString)) {
                 try {
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/rpc/atom/AtomAPIServlet.java b/jspwiki-main/src/main/java/org/apache/wiki/rpc/atom/AtomAPIServlet.java
index 145d090..049a551 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/rpc/atom/AtomAPIServlet.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/rpc/atom/AtomAPIServlet.java
@@ -262,15 +262,15 @@ public class AtomAPIServlet extends HttpServlet
         throws ProviderException,
                IOException
     {
-        Collection pages = m_engine.getPageManager().getAllPages();
+        Collection< WikiPage > pages = m_engine.getPageManager().getAllPages();
 
         Feed feed = SyndicationFactory.newSyndicationFeed();
         feed.setTitle("List of blogs at this site");
         feed.setModified( new Date() );
 
-        for( Iterator i = pages.iterator(); i.hasNext(); )
+        for( Iterator< WikiPage > i = pages.iterator(); i.hasNext(); )
         {
-            WikiPage p = (WikiPage) i.next();
+            WikiPage p = i.next();
 
             //
             //  List only weblogs
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/search/LuceneSearchProvider.java b/jspwiki-main/src/main/java/org/apache/wiki/search/LuceneSearchProvider.java
index 1902930..cf3cc20 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/search/LuceneSearchProvider.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/search/LuceneSearchProvider.java
@@ -99,7 +99,7 @@ public class LuceneSearchProvider implements SearchProvider {
     // Lucene properties.
 
     /** Which analyzer to use.  Default is StandardAnalyzer. */
-    public static final String PROP_LUCENE_ANALYZER    = "jspwiki.lucene.analyzer";
+    public static final String PROP_LUCENE_ANALYZER      = "jspwiki.lucene.analyzer";
 
     private static final String PROP_LUCENE_INDEXDELAY   = "jspwiki.lucene.indexdelay";
     private static final String PROP_LUCENE_INITIALDELAY = "jspwiki.lucene.initialdelay";
@@ -227,11 +227,11 @@ public class LuceneSearchProvider implements SearchProvider {
                 try
                 {
                     writer = getIndexWriter( luceneDir );
-                    Collection allPages = m_engine.getPageManager().getAllPages();
+                    Collection< WikiPage > allPages = m_engine.getPageManager().getAllPages();
 
-                    for( Iterator iterator = allPages.iterator(); iterator.hasNext(); )
+                    for( Iterator< WikiPage > iterator = allPages.iterator(); iterator.hasNext(); )
                     {
-                        WikiPage page = (WikiPage) iterator.next();
+                        WikiPage page = iterator.next();
                         
                         try
                         {
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/ui/EditorManager.java b/jspwiki-main/src/main/java/org/apache/wiki/ui/EditorManager.java
index 7236471..ed5895f 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/ui/EditorManager.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/ui/EditorManager.java
@@ -283,7 +283,7 @@ public class EditorManager extends ModuleManager {
      *  {@inheritDoc}
      */
     @Override
-    public Collection modules() {
+    public Collection< WikiModuleInfo > modules() {
         return modules( m_editors.values().iterator() );
     }
 
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/ui/TemplateManager.java b/jspwiki-main/src/main/java/org/apache/wiki/ui/TemplateManager.java
index 03ccdd4..96dce0e 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/ui/TemplateManager.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/ui/TemplateManager.java
@@ -398,15 +398,14 @@ public class TemplateManager extends ModuleManager {
      *   @return Set of Strings with the skin names.
      *   @since 2.3.26
      */
-    @SuppressWarnings("unchecked")
-    public Set listSkins( PageContext pageContext, String template )
+    public Set< String > listSkins( PageContext pageContext, String template )
     {
         String place = makeFullJSPName( template, SKIN_DIRECTORY );
 
         ServletContext sContext = pageContext.getServletContext();
 
         Set<String> skinSet = sContext.getResourcePaths( place );
-        TreeSet<String> resultSet = new TreeSet<String>();
+        TreeSet<String> resultSet = new TreeSet<>();
 
         if( log.isDebugEnabled() ) log.debug( "Listings skins from "+place );
 
@@ -442,9 +441,9 @@ public class TemplateManager extends ModuleManager {
      * @return map of installed Languages
      * @since 2.7.x
      */
-    public Map listLanguages(PageContext pageContext)
+    public Map< String, String > listLanguages(PageContext pageContext)
     {
-        Map< String, String > resultMap = new LinkedHashMap< String, String >();
+        Map< String, String > resultMap = new LinkedHashMap<>();
         String clientLanguage = ((HttpServletRequest) pageContext.getRequest()).getLocale().toString();
 
         List< String > entries = ClassUtil.classpathEntriesUnder( DIRECTORY );
@@ -482,8 +481,8 @@ public class TemplateManager extends ModuleManager {
     {
         WikiContext context = WikiContext.findContext( pageContext );
         Properties props = m_engine.getWikiProperties();
-        ArrayList<String> tfArr = new ArrayList<String>(40);
-        LinkedHashMap<String,String> resultMap = new LinkedHashMap<String,String>();
+        ArrayList<String> tfArr = new ArrayList<>(40);
+        LinkedHashMap<String,String> resultMap = new LinkedHashMap<>();
 
         /* filter timeformat properties */
         for (Enumeration e = props.propertyNames(); e.hasMoreElements();)
@@ -562,9 +561,9 @@ public class TemplateManager extends ModuleManager {
      * @return map of TimeZones
      * @since 2.7.x
      */
-    public Map listTimeZones(PageContext pageContext)
+    public Map< String, String > listTimeZones(PageContext pageContext)
     {
-        LinkedHashMap<String,String> resultMap = new LinkedHashMap<String,String>();
+        Map<String,String> resultMap = new LinkedHashMap<>();
 
         String[][] tzs = { { "GMT-12", "Enitwetok, Kwajalien" },
                           { "GMT-11", "Nome, Midway Island, Samoa" },
@@ -840,9 +839,9 @@ public class TemplateManager extends ModuleManager {
      *  @return {@inheritDoc}
      */
     @Override
-    public Collection modules()
+    public Collection< WikiModuleInfo > modules()
     {
-        return new ArrayList<WikiModuleInfo>();
+        return new ArrayList<>();
     }
 
     /**
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/ui/admin/WikiFormAdminBean.java b/jspwiki-main/src/main/java/org/apache/wiki/ui/admin/WikiFormAdminBean.java
index ed7b4b0..dd11b18 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/ui/admin/WikiFormAdminBean.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/ui/admin/WikiFormAdminBean.java
@@ -37,7 +37,7 @@ public abstract class WikiFormAdminBean
 {
     public abstract String getForm( WikiContext context );
     
-    public abstract void handleResponse( WikiContext context, Map params );
+    public abstract void handleResponse( WikiContext context, Map< ?, ? > params );
 
     public String doGet(WikiContext context)
     {
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/ui/admin/beans/SearchManagerBean.java b/jspwiki-main/src/main/java/org/apache/wiki/ui/admin/beans/SearchManagerBean.java
index 8f0bc5b..99ad0f9 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/ui/admin/beans/SearchManagerBean.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/ui/admin/beans/SearchManagerBean.java
@@ -89,7 +89,6 @@ public class SearchManagerBean extends SimpleAdminBean
                     setName("Reindexer started");
                 }
 
-                @SuppressWarnings("unchecked")
                 public void backgroundTask() throws Exception
                 {
                     Collection<WikiPage> allPages = m_engine.getPageManager().getAllPages();
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/workflow/AbstractStep.java b/jspwiki-main/src/main/java/org/apache/wiki/workflow/AbstractStep.java
index 3de438f..3624653 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/workflow/AbstractStep.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/workflow/AbstractStep.java
@@ -20,7 +20,14 @@ package org.apache.wiki.workflow;
 
 import java.io.Serializable;
 import java.security.Principal;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Date;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 import org.apache.wiki.api.exceptions.WikiException;
 
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/workflow/Workflow.java b/jspwiki-main/src/main/java/org/apache/wiki/workflow/Workflow.java
index 0884dee..80aa960 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/workflow/Workflow.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/workflow/Workflow.java
@@ -20,7 +20,13 @@ package org.apache.wiki.workflow;
 
 import java.io.Serializable;
 import java.security.Principal;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
 
 import org.apache.wiki.api.exceptions.WikiException;
 import org.apache.wiki.event.WikiEventListener;


[jspwiki] 10/17: fix build path on eclipse + bogus call on Workflow.jsp

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 4c86d763cf191959c0df444d99d26523fa694548
Author: juanpablo <ju...@apache.org>
AuthorDate: Fri Nov 2 22:54:57 2018 +0100

    fix build path on eclipse + bogus call on Workflow.jsp
---
 jspwiki-war/pom.xml                      | 12 ++++++++++++
 jspwiki-war/src/main/webapp/Workflow.jsp |  2 +-
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/jspwiki-war/pom.xml b/jspwiki-war/pom.xml
index 941264d..e5b0893 100644
--- a/jspwiki-war/pom.xml
+++ b/jspwiki-war/pom.xml
@@ -42,6 +42,18 @@
       <artifactId>jspwiki-markdown</artifactId>
       <version>${project.version}</version>
     </dependency>
+
+    <dependency>
+      <groupId>javax.servlet</groupId>
+      <artifactId>javax.servlet-api</artifactId>
+      <scope>provided</scope>
+    </dependency>
+
+    <dependency>
+      <groupId>javax.servlet.jsp</groupId>
+      <artifactId>javax.servlet.jsp-api</artifactId>
+      <scope>provided</scope>
+    </dependency>
   </dependencies>
 
   <build>
diff --git a/jspwiki-war/src/main/webapp/Workflow.jsp b/jspwiki-war/src/main/webapp/Workflow.jsp
index 9f33f12..1abf46e 100644
--- a/jspwiki-war/src/main/webapp/Workflow.jsp
+++ b/jspwiki-war/src/main/webapp/Workflow.jsp
@@ -36,7 +36,7 @@
 %>
 
 <%
-    WikiEngine wiki = WikiEngine.getInstance( request.getServletConfig() );
+    WikiEngine wiki = WikiEngine.getInstance( getServletConfig() );
     // Create wiki context and check for authorization
     WikiContext wikiContext = wiki.createContext( request, WikiContext.WORKFLOW );
     if(!wiki.getAuthorizationManager().hasAccess( wikiContext, response )) return;


[jspwiki] 14/17: use ConcurrentHashMap instead of plain HashMap

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 11d0dd43820bac930586aa17c76701cf27e8eb17
Author: juanpablo <ju...@apache.org>
AuthorDate: Sat Nov 3 00:53:46 2018 +0100

    use ConcurrentHashMap instead of plain HashMap
---
 .../src/main/java/org/apache/wiki/workflow/WorkflowBuilder.java       | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/jspwiki-main/src/main/java/org/apache/wiki/workflow/WorkflowBuilder.java b/jspwiki-main/src/main/java/org/apache/wiki/workflow/WorkflowBuilder.java
index 5b1c37e..b8167e6 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/workflow/WorkflowBuilder.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/workflow/WorkflowBuilder.java
@@ -19,8 +19,8 @@
 package org.apache.wiki.workflow;
 
 import java.security.Principal;
-import java.util.HashMap;
 import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
 
 import org.apache.wiki.WikiEngine;
 import org.apache.wiki.api.exceptions.WikiException;
@@ -30,7 +30,7 @@ import org.apache.wiki.api.exceptions.WikiException;
  */
 public final class WorkflowBuilder
 {
-    private static final Map<WikiEngine, WorkflowBuilder> BUILDERS = new HashMap<WikiEngine, WorkflowBuilder>();
+    private static final Map<WikiEngine, WorkflowBuilder> BUILDERS = new ConcurrentHashMap<>();
     private final WikiEngine m_engine;
 
     /**


[jspwiki] 15/17: added Jenkinsfile

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit e3f137ebd4a544b89f24ce5d2bee517bba9ca42d
Author: juanpablo <ju...@apache.org>
AuthorDate: Sat Nov 3 00:54:10 2018 +0100

    added Jenkinsfile
---
 Jenkinsfile | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 61 insertions(+)

diff --git a/Jenkinsfile b/Jenkinsfile
new file mode 100644
index 0000000..f7d510e
--- /dev/null
+++ b/Jenkinsfile
@@ -0,0 +1,61 @@
+/*
+ * 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.
+ */
+
+try {
+    def repo = 'https://github.com/apache/jspwiki'
+    
+    node( 'ubuntu' ) {
+        def JAVA_JDK_8=tool name: 'JDK 1.8 (latest)', type: 'hudson.model.JDK'
+        echo "Will use Java $JAVA_JDK_8"
+        
+        def MAVEN_3_LATEST=tool name: 'Maven 3 (latest)', type: 'hudson.tasks.Maven$MavenInstallation'
+        echo "Will use Maven $MAVEN_3_LATEST"
+        
+        stage( 'checkout' ) {
+            cleanWs()
+            git repo
+        }
+
+        stage( 'build' ) {
+            withEnv( [ "Path+JDK=$JAVA_JDK_8/bin", "Path+MAVEN=$MAVEN_3_LATEST/bin", "JAVA_HOME=$JAVA_JDK_8" ] ) {
+			    withSonarQubeEnv( 'ASF Sonar Analysis' ) {
+			        echo "Will use SonarQube instance at $SONAR_HOST_URL"
+                    sh "mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent package $SONAR_MAVEN_GOAL"
+				}
+            }
+        }
+        
+    }
+    
+    currentBuild.result = 'SUCCESS'
+    
+} catch( Exception err ) {
+    currentBuild.result = 'FAILURE'
+	echo err.message
+} finally {
+    node( 'ubuntu' ) {
+        if( currentBuild.result == null ) {
+            currentBuild.result = 'ABORTED'
+        }
+        emailext body: "See ${env.BUILD_URL}",
+                 replyTo: 'dev@jspwiki.apache.org', 
+                 to: 'commits@apache.org',
+                 subject: "[${env.JOB_NAME}] build ${env.BUILD_DISPLAY_NAME} - ${currentBuild.result}"
+    }
+}
\ No newline at end of file


[jspwiki] 07/17: remove unused SuppresWarnings, use generics

Posted by ju...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 3b332f6516dbdb940517a069d1ed645823d69018
Author: juanpablo <ju...@apache.org>
AuthorDate: Fri Nov 2 22:03:16 2018 +0100

    remove unused SuppresWarnings, use generics
---
 jspwiki-main/src/main/java/org/apache/wiki/plugin/WeblogPlugin.java   | 1 -
 .../src/main/java/org/apache/wiki/render/CleanTextRenderer.java       | 4 ++--
 .../src/main/java/org/apache/wiki/xmlrpc/MetaWeblogHandler.java       | 3 +--
 3 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/jspwiki-main/src/main/java/org/apache/wiki/plugin/WeblogPlugin.java b/jspwiki-main/src/main/java/org/apache/wiki/plugin/WeblogPlugin.java
index f6c9931..8334db0 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/plugin/WeblogPlugin.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/plugin/WeblogPlugin.java
@@ -159,7 +159,6 @@ public class WeblogPlugin
     /**
      *  {@inheritDoc}
      */
-    @SuppressWarnings("unchecked")
     public String execute( WikiContext context, Map<String, String> params )
         throws PluginException
     {
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/render/CleanTextRenderer.java b/jspwiki-main/src/main/java/org/apache/wiki/render/CleanTextRenderer.java
index fedff17..8c4b39b 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/render/CleanTextRenderer.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/render/CleanTextRenderer.java
@@ -64,9 +64,9 @@ public class CleanTextRenderer
         {
             XPath xp = XPath.newInstance( ALL_TEXT_NODES );
 
-            List nodes = xp.selectNodes(m_document.getDocument());
+            List< ? > nodes = xp.selectNodes(m_document.getDocument());
 
-            for( Iterator i = nodes.iterator(); i.hasNext(); )
+            for( Iterator< ? > i = nodes.iterator(); i.hasNext(); )
             {
                 Object el = i.next();
 
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/xmlrpc/MetaWeblogHandler.java b/jspwiki-main/src/main/java/org/apache/wiki/xmlrpc/MetaWeblogHandler.java
index 7b287b9..1781e20 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/xmlrpc/MetaWeblogHandler.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/xmlrpc/MetaWeblogHandler.java
@@ -191,14 +191,13 @@ public class MetaWeblogHandler
     // FIXME: The implementation is suboptimal, as it
     //        goes through all of the blog entries.
 
-    @SuppressWarnings("unchecked")
     public Hashtable getRecentPosts( String blogid,
                                      String username,
                                      String password,
                                      int numberOfPosts)
         throws XmlRpcException
     {
-        Hashtable<String, Hashtable<String, Object>> result = new Hashtable<String, Hashtable<String, Object>>();
+        Hashtable<String, Hashtable<String, Object>> result = new Hashtable<>();
 
         log.info( "metaWeblog.getRecentPosts() called");