Author: peter_firmstone
Date: Fri Dec 13 23:09:00 2013
New Revision: 1550849

URL: http://svn.apache.org/r1550849
Log:
Attempting to fix test failures on Windows Server 2008 R2 Jdk1.7.0_21, using 
Jenkins as test environment.

Modified:
    
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/share/BaseQATest.java
    
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/share/LookupServices.java
    
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/spec/discoverymanager/DiscardUnreachable.java
    
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/spec/locatordiscovery/DiscardUnreachable.java
    
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/spec/lookupdiscovery/DiscardUnreachable.java

Modified: 
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/share/BaseQATest.java
URL: 
http://svn.apache.org/viewvc/river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/share/BaseQATest.java?rev=1550849&r1=1550848&r2=1550849&view=diff
==============================================================================
--- 
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/share/BaseQATest.java
 (original)
+++ 
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/share/BaseQATest.java
 Fri Dec 13 23:09:00 2013
@@ -282,8 +282,8 @@ abstract public class BaseQATest extends
         private final Map<LookupLocator,String[]> discoveredMap = new 
HashMap<LookupLocator,String[]>(11);
         private final Map<LookupLocator,String[]> discardedMap  = new 
HashMap<LookupLocator,String[]>(11);
 
-        private final Map expectedDiscoveredMap = new HashMap(11);
-        private final Map expectedDiscardedMap  = new HashMap(11);
+        private final Map<LookupLocator,String[]> expectedDiscoveredMap = new 
HashMap<LookupLocator,String[]>(11);
+        private final Map<LookupLocator,String[]> expectedDiscardedMap  = new 
HashMap<LookupLocator,String[]>(11);
         
         Set<Map.Entry<LookupLocator,String[]>> getDiscovered(){
             synchronized(this){
@@ -390,21 +390,24 @@ abstract public class BaseQATest extends
 
         /** Use this method to set the contents of both the discoveredMap
          *  and the expectedDiscardedMap to a specific set of values.
+         * @param locGroupsList list containing LocatorGroupsPair to be set.
          */
-        public void setDiscardEventInfo(List locGroupsList) {
+        public void setDiscardEventInfo(List<LocatorGroupsPair> locGroupsList) 
{
             synchronized(this) {
                 discoveredMap.clear();
                 discardedMap.clear();
-                for(int i=0;i<locGroupsList.size();i++) {
-                    LocatorGroupsPair pair =
-                                      (LocatorGroupsPair)locGroupsList.get(i);
-                    /* Have to set discoveredMap so that discarded() method
-                     * will place discarded lookup in the discardedMap when
-                     * the discarded event arrives.
-                     */
-                    discoveredMap.put(pair.getLocator(), pair.getGroups());
-                    expectedDiscardedMap.put(pair.getLocator(), 
pair.getGroups());
-                }//end loop
+                synchronized (locGroupsList){
+                    int l = locGroupsList.size();
+                    for(int i=0;i<l;i++) {
+                        LocatorGroupsPair pair = locGroupsList.get(i);
+                        /* Have to set discoveredMap so that discarded() method
+                         * will place discarded lookup in the discardedMap when
+                         * the discarded event arrives.
+                         */
+                        discoveredMap.put(pair.getLocator(), pair.getGroups());
+                        expectedDiscardedMap.put(pair.getLocator(), 
pair.getGroups());
+                    }//end loop
+                }
                 this.notifyAll();
             }//end sync(this)
         }//end clearDiscardEventInfo
@@ -415,7 +418,7 @@ abstract public class BaseQATest extends
          *  current and/or expected state of the fields of this class related
          *  to the discovered/discarded event state of this listener.
          */
-        public void setLookupsToDiscover(List locGroupsList) {
+        public void setLookupsToDiscover(List<LocatorGroupsPair> 
locGroupsList) {
             setLookupsToDiscover(locGroupsList, 
                                  
toLocatorArray(getLookupServices().getAllLookupsToStart()),
                                  
toGroupsArray(getLookupServices().getAllLookupsToStart()));
@@ -461,18 +464,21 @@ abstract public class BaseQATest extends
                  * that contains information related to the lookup services
                  * that are expected to be discovered.
                  */
-                for(int i=0;i<locGroupsList.size();i++) {
-                    LocatorGroupsPair pair =
-                                      (LocatorGroupsPair)locGroupsList.get(i);
-                    LookupLocator curLoc    = pair.getLocator();
-                    String[]      curGroups = pair.getGroups();
-                    if(    discoverByLocators(curLoc,locatorsToDiscover)
-                        || discoverAll
-                        || discoverByGroups(curGroups,groupsToDiscover) )
-                    {
-                        expectedDiscoveredMap.put(curLoc,curGroups);
-                    }//endif
-                }//end loop
+                synchronized (locGroupsList){
+                    int l = locGroupsList.size();
+                    for(int i=0;i<l;i++) {
+                        LocatorGroupsPair pair =
+                                          
(LocatorGroupsPair)locGroupsList.get(i);
+                        LookupLocator curLoc    = pair.getLocator();
+                        String[]      curGroups = pair.getGroups();
+                        if(    discoverByLocators(curLoc,locatorsToDiscover)
+                            || discoverAll
+                            || discoverByGroups(curGroups,groupsToDiscover) )
+                        {
+                            expectedDiscoveredMap.put(curLoc,curGroups);
+                        }//endif
+                    }//end loop
+                }
                 /* The input ArrayList contains (locator,groups) pairs that
                  * represent the locator and current member groups of lookup
                  * services that have been started. The referenced lookup
@@ -1174,12 +1180,15 @@ abstract public class BaseQATest extends
      *  containing instances of <code>LocatorGroupsPair</code>.
      */
     public static LookupLocator[] toLocatorArray(List list) {
-        LookupLocator[] locArray = new LookupLocator[list.size()];
-        for(int i=0;i<list.size();i++) {
-            LocatorGroupsPair pair = (LocatorGroupsPair)list.get(i);
-            locArray[i] = pair.getLocator();
-        }//end loop
-        return locArray;
+        synchronized (list){
+            int l = list.size();
+            LookupLocator[] locArray = new LookupLocator[l];
+            for(int i=0;i<l;i++) {
+                LocatorGroupsPair pair = (LocatorGroupsPair)list.get(i);
+                locArray[i] = pair.getLocator();
+            }//end loop
+            return locArray;
+        }
     }//end toLocatorArray
 
     /** Returns an array of group names in which each element of the
@@ -1262,11 +1271,14 @@ abstract public class BaseQATest extends
      *  was not found.
      */
     public static String[] getGroups(LookupLocator loc, List list) {
-        for(int i=0;i<list.size();i++) {
-            LocatorGroupsPair pair = (LocatorGroupsPair)list.get(i);
-            if(loc.equals(pair.getLocator())) return pair.getGroups();
-        }//end loop
-        return null; 
+        synchronized (list){
+            int l = list.size();
+            for(int i=0;i<l;i++) {
+                LocatorGroupsPair pair = (LocatorGroupsPair)list.get(i);
+                if(loc.equals(pair.getLocator())) return pair.getGroups();
+            }//end loop
+            return null; 
+        }
     }//end getGroups
 
     /** For each lookup service corresponding to a (locator,groups) pair
@@ -1289,13 +1301,16 @@ abstract public class BaseQATest extends
          * groups to discover, then we do not want to discover all of the
          * lookups
          */
-        for(int i=0;i<list.size();i++) {
-            LocatorGroupsPair pair = (LocatorGroupsPair)list.get(i);
-            String[] curMemberGroups = pair.getGroups();
-            if( !discoverByGroups(curMemberGroups,groupsToDiscover) ) {
-                return false;
-            }//endif
-        }//end loop
+        synchronized (list){
+            int l = list.size();
+            for(int i=0;i<l;i++) {
+                LocatorGroupsPair pair = (LocatorGroupsPair)list.get(i);
+                String[] curMemberGroups = pair.getGroups();
+                if( !discoverByGroups(curMemberGroups,groupsToDiscover) ) {
+                    return false;
+                }//endif
+            }//end loop
+        }
         return true;
     }//end discoverAllLookups
 
@@ -1538,7 +1553,7 @@ abstract public class BaseQATest extends
                       (discoveredClone == null 
                        || !locGroupsMapsEqual(discoveredMap, discoveredClone)))
                {
-                   discoveredClone = (Map) ((HashMap)discoveredMap).clone();
+                   discoveredClone = new HashMap(discoveredMap);
 
                     logger.log(Level.FINE,
                                       "   discoveredMap.size == "
@@ -1696,7 +1711,7 @@ abstract public class BaseQATest extends
                       (discardedClone == null 
                        || !locGroupsMapsEqual(discardedMap, discardedClone)))
                {
-                   discardedClone = (Map) ((HashMap)discardedMap).clone();
+                   discardedClone = new HashMap(discardedMap);
 
                     logger.log(Level.FINE,
                                       "   discardedMap.size == "
@@ -2135,7 +2150,7 @@ abstract public class BaseQATest extends
      *  correctly (a discarded event should not be expected for a lookup
      *  service that couldn't be discarded).
      */
-    protected ArrayList pingAndDiscard(ServiceRegistrar[] proxies,
+    protected List pingAndDiscard(ServiceRegistrar[] proxies,
                                        DiscoveryManagement dm,
                                        LookupListener listener)
     {

Modified: 
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/share/LookupServices.java
URL: 
http://svn.apache.org/viewvc/river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/share/LookupServices.java?rev=1550849&r1=1550848&r2=1550849&view=diff
==============================================================================
--- 
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/share/LookupServices.java
 (original)
+++ 
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/share/LookupServices.java
 Fri Dec 13 23:09:00 2013
@@ -447,10 +447,10 @@ public class LookupServices {
             /* Skip over remote lookups and lookups already started to the
              * indices of the additional local lookups
              */
-            int n0 = nRemoteLookupServices + nAddRemoteLookupServices
-                                           + lookupsStarted.size();
-            int n1 = n0 + nAddLookupServices;
             synchronized (lock){
+                int n0 = nRemoteLookupServices + nAddRemoteLookupServices
+                                               + lookupsStarted.size();
+                int n1 = n0 + nAddLookupServices;
                 for(int i=n0;i<n1;i++) {
                     int j = i-n0;
                     LocatorGroupsPair pair = addLookupsToStart.get(j);
@@ -960,7 +960,7 @@ public class LookupServices {
      * @return List containing LocatorGroupsPair
      */
    public List<LocatorGroupsPair> replaceMemberGroups(boolean alternate) {
-        List<LocatorGroupsPair> locGroupsList = new 
ArrayList<LocatorGroupsPair>(genMap.size());
+        List<LocatorGroupsPair> locGroupsList = new 
LinkedList<LocatorGroupsPair>();
         Iterator iter = genMap.keySet().iterator();
         for(int i=0;iter.hasNext();i++) {
             /* Replace the member groups of the current lookup service */
@@ -1009,7 +1009,7 @@ public class LookupServices {
    public List<LocatorGroupsPair> replaceMemberGroups(int nReplacements,
                                            String[] newGroups)
    {
-        List<LocatorGroupsPair> locGroupsList = new 
ArrayList<LocatorGroupsPair>(genMap.size());
+        List<LocatorGroupsPair> locGroupsList = new 
LinkedList<LocatorGroupsPair>();
         Iterator iter = genMap.keySet().iterator();
         for(int i=0;iter.hasNext();i++) {
             Object generator = iter.next();
@@ -1189,7 +1189,7 @@ public class LookupServices {
                                  boolean alternate,
                                  int discardType)
     {
-        if(genMap.size() > 0) {
+        if(!genMap.isEmpty()) {
             logger.log(Level.FINE, "replacing member groups for each lookup 
service ...");
            Iterator iter = genMap.keySet().iterator();
 
@@ -1826,10 +1826,12 @@ public class LookupServices {
   
     /** Returns the proxy to each lookup service started (already prepared)*/
     protected ServiceRegistrar[] getLookupProxies() {
-        ServiceRegistrar[] proxies = new ServiceRegistrar[genMap.size()];
-       Iterator iter = genMap.keySet().iterator();
-        for(int i=0;iter.hasNext();i++) {
-            Object curObj = iter.next();
+        Set proxySet = genMap.keySet();
+        Object [] proxyArray = proxySet.toArray();
+        int l = proxyArray.length;
+        ServiceRegistrar[] proxies = new ServiceRegistrar[l];
+        for(int i=0;i<l;i++) {
+            Object curObj = proxyArray[i];
             if(curObj instanceof DiscoveryProtocolSimulator) {
                 proxies[i]
                       = ((DiscoveryProtocolSimulator)curObj).getLookupProxy();
@@ -1910,14 +1912,15 @@ public class LookupServices {
      *  correctly (a discarded event should not be expected for a lookup
      *  service that couldn't be discarded).
      */
-    protected ArrayList pingAndDiscard(ServiceRegistrar[] proxies,
+    protected List pingAndDiscard(ServiceRegistrar[] proxies,
                                        DiscoveryManagement dm,
                                        LookupListener listener)
     {
-        ArrayList proxiesToDiscard      = new ArrayList(1);
-        ArrayList locGroupsNotDiscarded = new ArrayList(1);
+        List proxiesToDiscard      = new LinkedList();
+        List locGroupsNotDiscarded = new LinkedList();
         /* Determine proxies to discard and proxies that cannot be discarded */
-        for(int i=0;i<proxies.length;i++) {
+        int l = proxies.length;
+        for(int i=0;i<l;i++) {
             LocatorGroupsPair curPair
                       = (LocatorGroupsPair)regsToLocGroupsMap.get(proxies[i]);
             try {

Modified: 
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/spec/discoverymanager/DiscardUnreachable.java
URL: 
http://svn.apache.org/viewvc/river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/spec/discoverymanager/DiscardUnreachable.java?rev=1550849&r1=1550848&r2=1550849&view=diff
==============================================================================
--- 
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/spec/discoverymanager/DiscardUnreachable.java
 (original)
+++ 
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/spec/discoverymanager/DiscardUnreachable.java
 Fri Dec 13 23:09:00 2013
@@ -25,6 +25,7 @@ import net.jini.core.lookup.ServiceRegis
 import java.util.ArrayList;
 import java.util.logging.Level;
 import com.sun.jini.qa.harness.QAConfig;
+import java.util.List;
 
 /**
  * With respect to the <code>discard</code> method, this class verifies
@@ -89,7 +90,7 @@ public class DiscardUnreachable extends 
             logger.log(Level.FINE, "discarding un-reachable lookup services 
...");
 
             /* This will cause discarded events to be sent */
-            ArrayList locGroupsNotDiscarded = pingAndDiscard(proxies,
+            List locGroupsNotDiscarded = pingAndDiscard(proxies,
                                                              discoveryMgr,
                                                              mainListener);
             /* Set the expected discard event info */

Modified: 
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/spec/locatordiscovery/DiscardUnreachable.java
URL: 
http://svn.apache.org/viewvc/river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/spec/locatordiscovery/DiscardUnreachable.java?rev=1550849&r1=1550848&r2=1550849&view=diff
==============================================================================
--- 
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/spec/locatordiscovery/DiscardUnreachable.java
 (original)
+++ 
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/spec/locatordiscovery/DiscardUnreachable.java
 Fri Dec 13 23:09:00 2013
@@ -27,6 +27,7 @@ import com.sun.jini.test.share.Discovery
 import net.jini.core.lookup.ServiceRegistrar;
 
 import java.util.ArrayList;
+import java.util.List;
 
 /**
  * With respect to the <code>discard</code> method, this class verifies
@@ -92,7 +93,7 @@ public class DiscardUnreachable extends 
             DiscoveryServiceUtil.delayMS(7000);//wait for shutdown complete
             logger.log(Level.FINE, "discarding un-reachable lookup services 
...");
             /* This will cause discarded events to be sent */
-            ArrayList locGroupsNotDiscarded = pingAndDiscard
+            List locGroupsNotDiscarded = pingAndDiscard
                                                          (proxies,
                                                           locatorDiscovery,
                                                           mainListener);

Modified: 
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/spec/lookupdiscovery/DiscardUnreachable.java
URL: 
http://svn.apache.org/viewvc/river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/spec/lookupdiscovery/DiscardUnreachable.java?rev=1550849&r1=1550848&r2=1550849&view=diff
==============================================================================
--- 
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/spec/lookupdiscovery/DiscardUnreachable.java
 (original)
+++ 
river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/spec/lookupdiscovery/DiscardUnreachable.java
 Fri Dec 13 23:09:00 2013
@@ -27,6 +27,7 @@ import com.sun.jini.test.share.Discovery
 import net.jini.core.lookup.ServiceRegistrar;
 
 import java.util.ArrayList;
+import java.util.List;
 
 /**
  * With respect to the <code>discard</code> method, this class verifies
@@ -98,7 +99,7 @@ public class DiscardUnreachable extends 
             logger.log(Level.FINE,
                          "discarding un-reachable lookup services ...");
             /* This will cause discarded events to be sent */
-            ArrayList locGroupsNotDiscarded = pingAndDiscard
+            List locGroupsNotDiscarded = pingAndDiscard
                                                          (proxies,
                                                           lookupDiscovery,
                                                           mainListener);


Reply via email to