Author: degenaro
Date: Thu Jun  9 14:09:29 2016
New Revision: 1747553

URL: http://svn.apache.org/viewvc?rev=1747553&view=rev
Log:
UIMA-3361 DUCC Web Server (WS) Machines page improvements

Modified:
    
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/DuccMachinesData.java
    
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineInfo.java
    
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/WebServerComponent.java
    
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java
    
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java
    
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java
    
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/nodeviz/NodeViz.java

Modified: 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/DuccMachinesData.java
URL: 
http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/DuccMachinesData.java?rev=1747553&r1=1747552&r2=1747553&view=diff
==============================================================================
--- 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/DuccMachinesData.java
 (original)
+++ 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/DuccMachinesData.java
 Thu Jun  9 14:09:29 2016
@@ -19,6 +19,7 @@
 package org.apache.uima.ducc.ws;
 
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
@@ -89,17 +90,18 @@ public class DuccMachinesData {
                return isSwapping.containsKey(ip);
        }
        
-       public ConcurrentSkipListMap<MachineInfo,NodeId> getMachines() {
+       public Map<MachineInfo,NodeId> getMachines() {
                return getSortedMachines();
        }
        
-       public ConcurrentSkipListMap<MachineInfo,NodeId> getSortedMachines() {
-               ConcurrentSkipListMap<MachineInfo,NodeId> retVal = 
sortedMachines;
+       public Map<MachineInfo,NodeId> getSortedMachines() {
+               Map<MachineInfo,NodeId> retVal = new 
TreeMap<MachineInfo,NodeId>();
+               retVal.putAll(sortedMachines);
                return retVal;
        }
        
        private long down_fudge = 10;
-       private long DOWN_AFTER_SECONDS = 
WebServerComponent.updateIntervalSeconds + down_fudge;
+       private long DOWN_AFTER_SECONDS = 
WebServerComponent.updateIntervalSecondsNormal + down_fudge;
        private long SECONDS_PER_MILLI = 1000;
        
        private long getAgentMillisMIA() {
@@ -339,8 +341,7 @@ public class DuccMachinesData {
         * 
         * Put new or updated node metrics into map of Agent node metric reports
         */
-       public boolean put(DatedNodeMetricsUpdateDuccEvent duccEvent) {
-               boolean retVal = true;
+       public void put(DatedNodeMetricsUpdateDuccEvent duccEvent) {
                String location = "put";
                MachineSummaryInfo msi = new MachineSummaryInfo();
                NodeMetricsUpdateDuccEvent nodeMetrics = 
duccEvent.getNodeMetricsUpdateDuccEvent();
@@ -352,10 +353,6 @@ public class DuccMachinesData {
                }
                String machineName = 
nodeMetrics.getNodeIdentity().getName().trim();
                NodeId nodeId = new NodeId(machineName);
-               // determine if this is new machine (true) or already known 
machine (false)
-               if(ipToNameMap.containsKey(ip)) {
-                       retVal = false;
-               }
                ipToNameMap.put(ip,nodeId);
                nameToIpMap.put(nodeId,ip);
                // mem: total
@@ -370,7 +367,7 @@ public class DuccMachinesData {
                long lvalMemFree = (long) ((1.0*nodeMemFree)/(1024*1024)+0.0);  
// do NOT round up!
                msi.memFree = lvalMemFree;
                String memFree = ""+lvalMemFree/*+memUnits*/;
-               // swap: in-usewell
+               // swap: in-use
                double dvalSwapTotal = 
nodeMetrics.getNodeMemory().getSwapTotal();
                long lvalSwapTotal = (long) (dvalSwapTotal/(1024*1024)+0.5);
                double dvalSwapFree = nodeMetrics.getNodeMemory().getSwapFree();
@@ -425,7 +422,6 @@ public class DuccMachinesData {
                putMachine(current);
                updateTotals(nodeId,msi);
                setPublished();
-               return retVal;
        }
        
        public List<String> getPids(Ip ip, UserId user) {
@@ -594,7 +590,7 @@ public class DuccMachinesData {
        private void updateMachineFactsListAgent() {
                MachineFactsList factsList = new MachineFactsList();
                long quantum = getQuantum();
-               ConcurrentSkipListMap<MachineInfo,NodeId> sortedMachines = 
getSortedMachines();
+               Map<MachineInfo,NodeId> sortedMachines = getSortedMachines();
                Iterator<MachineInfo> iterator;
                iterator = sortedMachines.keySet().iterator();
                while(iterator.hasNext()) {
@@ -632,16 +628,18 @@ public class DuccMachinesData {
                // The returnable
                MachineFactsList mfl = new MachineFactsList();
                // Working map used to generate the returnable
-               ConcurrentSkipListMap<MachineInfo,NodeId> dbSortedMachines = 
new ConcurrentSkipListMap<MachineInfo,NodeId>();
+               Map<MachineInfo,NodeId> dbSortedMachines = new 
TreeMap<MachineInfo,NodeId>();
                // Get map from DB courtesy of RM
                DbQuery dbQuery = DbQuery.getInstance();
-               Map<String, IDbMachine> dbMapMachines = 
dbQuery.getMapMachines();
+               // Working list of known machines, by long name
+               Map<String, IDbMachine> dbMapMachinesLong = 
dbQuery.getMapMachines();
                // Working list of known machines, by short name
-               List<String> knownShortNames = new ArrayList<String>();
-               // Update working map and list of short name from DB
-               for(Entry<String, IDbMachine> entry : dbMapMachines.entrySet()) 
{
+               Map<String, IDbMachine> dbMapMachinesShort = new 
HashMap<String, IDbMachine>();
+               // Update working map and map of short names
+               for(Entry<String, IDbMachine> entry : 
dbMapMachinesLong.entrySet()) {
                        String name = entry.getKey();
                        NodeId nodeId = new NodeId(name);
+                       
dbMapMachinesShort.put(nodeId.getShortName(),entry.getValue());
                        MachineInfo mi = unsortedMachines.get(nodeId);
                        IDbMachine dbMachine = entry.getValue();
                        if(mi != null) {
@@ -651,19 +649,27 @@ public class DuccMachinesData {
                                mi.setMemTotal(""+total);
                                mi.setMemFree(""+free);
                                dbSortedMachines.put(mi, nodeId);
-                               String shortName = nodeId.getShortName();
-                               knownShortNames.add(shortName);
                        }
                }
                // Initialize returnable with "defined" machines
                ArrayList<String> duccNodes = DuccNodes.getInstance().get();
+               Map<String,String> sortedDuccNodes = new 
TreeMap<String,String>();
                for(String name : duccNodes) {
-                       NodeId nodeId = new NodeId(name);;
-                       String shortName = nodeId.getShortName();
-                       // skip defined machine if it already appears in DB
-                       if(knownShortNames.contains(shortName)) {
+                       NodeId nodeId = new NodeId(name);
+                       
sortedDuccNodes.put(nodeId.getShortName(),nodeId.getLongName());
+               }
+               // Process defined nodes, unless already present from DB
+               for(Entry<String, String> entry : sortedDuccNodes.entrySet()) {
+                       String shortName = entry.getKey();
+                       String longName = entry.getValue();
+                       // Skip defined machine if it already appears in DB
+                       if(dbMapMachinesShort.containsKey(shortName)) {
                                continue;
                        }
+                       if(dbMapMachinesLong.containsKey(longName)) {
+                               continue;
+                       }
+                       // Add defined machine
                        String status = "defined";
                        String statusReason = "";
                        String ip = "";
@@ -676,7 +682,7 @@ public class DuccMachinesData {
                        boolean cGroups = false;
                        List<String> aliens = new ArrayList<String>();
                        String heartbeat = "";
-                       MachineFacts facts = new 
MachineFacts(status,statusReason,ip,name,memTotal,memFree,swapInuse,swapDelta,swapFree,cpu,cGroups,aliens,heartbeat);
+                       MachineFacts facts = new 
MachineFacts(status,statusReason,ip,longName,memTotal,memFree,swapInuse,swapDelta,swapFree,cpu,cGroups,aliens,heartbeat);
                        mfl.add(facts);
                }
                // Augment returnable with data from Agents & RM (from DB)

Modified: 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineInfo.java
URL: 
http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineInfo.java?rev=1747553&r1=1747552&r2=1747553&view=diff
==============================================================================
--- 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineInfo.java
 (original)
+++ 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineInfo.java
 Thu Jun  9 14:09:29 2016
@@ -416,148 +416,106 @@ public class MachineInfo implements Comp
                String retVal = getElapsed();
                return retVal;
        }       
+
+       // @return true if the short names match
+       
+       @Override
+       public boolean equals(Object object) {
+               boolean retVal = false;
+               if(object != null) {
+                       if(object instanceof NodeId) {
+                               MachineInfo that = (MachineInfo) object;
+                               retVal = (this.hashCode() == that.hashCode());
+                       }
+               }
+               return retVal;
+       }
+               
+       // @return use short name as hashCode
        
+       @Override
+       public int hashCode()
+       {
+               return this.nodeid.getShortName().hashCode();
+       }
        
-       public int compareTo(MachineInfo machine) {
+       private int compareString(String s1, String s2) {
                int retVal = 0;
-               MachineInfo m1 = this;
-               MachineInfo m2 = machine;
-               String s1 = m1.name;
-               String s2 = m2.name;
                if(s1 != null) {
                        if(s2 != null) {
-                               if(s1.trim().equals(s2.trim()))
-                                       return retVal;
+                               retVal = s1.compareTo(s2);
                        }
                }
-               retVal = compareStatus(m1, m2);
-               if(retVal != 0) {
-                       return retVal;
-               }
-               retVal = compareSwapInuse(m1, m2);
-               if(retVal != 0) {
-                       return retVal;
-               }
-               retVal = compareSwapDelta(m1, m2);
-               if(retVal != 0) {
-                       return retVal;
-               }
-               retVal = compareAlienPids(m1, m2);
-               if(retVal != 0) {
-                       return retVal;
-               }
-               /*
-               retVal = compareHeartbeat(m1, m2);
-               if(retVal != 0) {
-                       return retVal;
-               }
-               */
-               retVal = compareIp(m1, m2);
-               if(retVal != 0) {
-                       return retVal;
+               return retVal;
+       }
+       
+       private int compareToMachineName(MachineInfo that) {
+               int retVal = 0;
+               if(this.nodeid != null) {
+                       if(that.nodeid != null) {
+                               retVal = 
compareString(this.nodeid.getShortName(), that.nodeid.getShortName());
+                       }
                }
-               retVal = compareName(m1, m2);
                return retVal;
        }
        
-       /**
-        * @param m1
-        * @param m2
-        * @return 0 if m1 == m2, -1 if m1 < m2, +1 if m1 > m2, where
-        *           Defined < Down < Up
-        */
-       private int compareStatus(MachineInfo m1, MachineInfo m2) {
-               String location = "compareStatus";
+       private int compareToMachineStatus(MachineInfo that) {
                int retVal = 0;
-               try {
-                       MachineStatus v1 = m1.getMachineStatus();
-                       MachineStatus v2 = m2.getMachineStatus();
-                       switch(v1) {
+               MachineStatus v1 = this.getMachineStatus();
+               MachineStatus v2 = that.getMachineStatus();
+               switch(v1) {
+               default:
+               case Defined:
+                       switch(v2) {
                        default:
                        case Defined:
-                               switch(v2) {
-                               default:
-                               case Defined:
-                                       retVal = 0;
-                                       break;
-                               case Down:
-                                       retVal = -1;
-                                       break;
-                               case Up:
-                                       retVal = -1;
-                                       break;
-                               }
+                               retVal = 0;
                                break;
                        case Down:
-                               switch(v2) {
-                               default:
-                               case Defined:
-                                       retVal = 1;
-                                       break;
-                               case Down:
-                                       retVal = 0;
-                                       break;
-                               case Up:
-                                       retVal = -1;
-                                       break;
-                               }
+                               retVal = -1;
                                break;
                        case Up:
-                               switch(v2) {
-                               default:
-                                       retVal = 1;
-                               case Defined:
-                                       break;
-                               case Down:
-                                       retVal = 1;
-                                       break;
-                               case Up:
-                                       retVal = 0;
-                                       break;
-                               }
-                               break;
-                       }
-                       StringBuffer sb = new StringBuffer();
-                       sb.append(m1.getName());
-                       sb.append(" ");
-                       sb.append(m1.getMachineStatus().getLowerCaseName());
-                       sb.append(" ");
-                       sb.append(m2.getName());
-                       sb.append(" ");
-                       sb.append(m2.getMachineStatus().getLowerCaseName());
-                       sb.append(" ");
-                       sb.append(" "+retVal);
-                       logger.trace(location, jobid, sb);
-               }
-               
-               catch(Throwable t) {
-                       logger.error(location, jobid, t);
-               }
-               return retVal;
-       }
-       
-       private int compareSwapInuse(MachineInfo m1, MachineInfo m2) {
-               int retVal = 0;
-               try {
-                       long v1 = Long.parseLong(m1.getSwapInuse());
-                       long v2 = Long.parseLong(m2.getSwapInuse());
-                       if(v1 > v2) {
-                               return -1;
+                               retVal = -1;
+                               break;
                        }
-                       if(v1 < v2) {
-                               return 1;
+                       break;
+               case Down:
+                       switch(v2) {
+                       default:
+                       case Defined:
+                               retVal = 1;
+                               break;
+                       case Down:
+                               retVal = 0;
+                               break;
+                       case Up:
+                               retVal = -1;
+                               break;
                        }
-               }
-               catch(Throwable t) {
+                       break;
+               case Up:
+                       switch(v2) {
+                       default:
+                               retVal = 1;
+                       case Defined:
+                               break;
+                       case Down:
+                               retVal = 1;
+                               break;
+                       case Up:
+                               retVal = 0;
+                               break;
+                       }
+                       break;
                }
                return retVal;
        }
        
-       private int compareSwapDelta(MachineInfo m1, MachineInfo m2) {
+       private int compareToMachineSwapInuse(MachineInfo that) {
                int retVal = 0;
                try {
-                       long v1 = m1.getSwapDelta();
-                       long v2 = m2.getSwapDelta();
+                       long v1 = Long.parseLong(this.getSwapInuse());
+                       long v2 = Long.parseLong(that.getSwapInuse());
                        if(v1 > v2) {
                                return -1;
                        }
@@ -570,11 +528,11 @@ public class MachineInfo implements Comp
                return retVal;
        }
        
-       private int compareAlienPids(MachineInfo m1, MachineInfo m2) {
+       private int compareToMachineAlienPIDs(MachineInfo that) {
                int retVal = 0;
                try {
-                       long v1 = m1.getAlienPidsCount();
-                       long v2 = m2.getAlienPidsCount();
+                       long v1 = this.getAlienPidsCount();
+                       long v2 = that.getAlienPidsCount();
                        if(v1 > v2) {
                                return -1;
                        }
@@ -587,58 +545,27 @@ public class MachineInfo implements Comp
                return retVal;
        }
        
-/*     
-       private int compareHeartbeat(MachineInfo m1, MachineInfo m2) {
+       /**
+        * Sort order: status, swap-inuse, alien-PIDs, machine short name
+        */
+       @Override
+       public int compareTo(MachineInfo that) {
                int retVal = 0;
-               try {
-                       long v1 = m1.getHeartbeat();
-                       long v2 = m2.getHeartbeat();
-                       if(v1 > v2) {
-                               return 1;
+               if(that != null) {
+                       if(retVal == 0) {
+                               retVal = compareToMachineStatus(that);
                        }
-                       if(v1 < v2) {
-                               return -1;
+                       if(retVal == 0) {
+                               retVal = compareToMachineSwapInuse(that);
                        }
-               }
-               catch(Throwable t) {
-               }
-               return retVal;
-       }
-*/
-       private int compareIp(MachineInfo m1, MachineInfo m2) {
-               int retVal = 0;
-               if(m1.ip.trim().length() > 0) {
-                       if(m2.ip.trim().length() > 0) {
-                               retVal = m1.ip.compareTo(m2.ip);
+                       if(retVal == 0) {
+                               retVal = compareToMachineAlienPIDs(that);
                        }
-               }
-               return retVal;
-       }
-       
-       private int compareName(MachineInfo m1, MachineInfo m2) {
-               return m1.name.compareTo(m2.name);
-       }
-       
-       // @return true if the long names match
-       
-       @Override
-       public boolean equals(Object object) {
-               boolean retVal = false;
-               if(object != null) {
-                       if(object instanceof NodeId) {
-                               MachineInfo that = (MachineInfo) object;
-                               return (this.compareTo(that) == 0);
+                       if(retVal == 0) {
+                               retVal = compareToMachineName(that);
                        }
                }
                return retVal;
        }
-               
-       // @return use long name as hashCode
-       
-       @Override
-       public int hashCode()
-       {
-               return this.nodeid.hashCode();
-       }
 
 }

Modified: 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/WebServerComponent.java
URL: 
http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/WebServerComponent.java?rev=1747553&r1=1747552&r2=1747553&view=diff
==============================================================================
--- 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/WebServerComponent.java
 (original)
+++ 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/WebServerComponent.java
 Thu Jun  9 14:09:29 2016
@@ -62,13 +62,24 @@ implements IWebServer {
        private static AtomicInteger reservationCount = new AtomicInteger(0);
        
        private static AtomicLong updateLast = new 
AtomicLong(System.currentTimeMillis());
-       public static long updateIntervalSeconds = 60;
-       public static long updateIntervalMilliSeconds = 
updateIntervalSeconds*1000;
+       public static long updateIntervalSecondsInitial = 5;
+       public static long updateIntervalSecondsNormal = 60;
+       public static AtomicLong updateIntervalCount = new AtomicLong(0);
+       public static long updateIntervalLimit = 12;
        
        public WebServerComponent(CamelContext context, CommonConfiguration 
common) {
                super("WebServer",context);
                String methodName = "WebServerComponent";
                duccLogger.info(methodName, jobid, "##### boot #####");
+               
+               String cp = System.getProperty("java.class.path");
+               String[] cpArray = cp.split(":");
+               int lc = 0;
+               for(String line : cpArray) {
+                       duccLogger.trace(methodName, jobid, "cp."+lc+" "+line);
+                       lc++;
+               }
+               
                String[] propertyNames = { "ducc.broker.url" };
                for(String property : propertyNames) {
                        duccLogger.info(methodName, jobid, 
property+"="+System.getProperty(property));
@@ -158,17 +169,34 @@ implements IWebServer {
        
        /**
         * Sort machines if interval has elapsed (60 seconds) 
-        * or if a new machine has been detected (force == true)
+        * 
+        * Note: Use an initial short interval (e.g. every 5 seconds)
+        * when the Web Server first boots in order to populate quickly.
+        * After N (e.g. 12) quick recalculations, revert to the normal
+        * interval (e.g. every 60 seconds).
         */
-       private void sortMachines(boolean force) {
+       private void sortMachines() {
+               String methodName = "sortMachines";
                long last = updateLast.get();
+               long updateIntervalMilliSeconds = updateIntervalSecondsNormal * 
1000;
+               if(updateIntervalCount.get() < updateIntervalLimit) {
+                       updateIntervalMilliSeconds = 
updateIntervalSecondsInitial * 1000;
+               }
                long deadline = last + updateIntervalMilliSeconds;
                long now = System.currentTimeMillis();
-               if(now > deadline || force) {
+               if(now > deadline) {
                        boolean success = updateLast.compareAndSet(last, now);
                        if(success) {
                                
DuccMachinesData.getInstance().updateSortedMachines();
+                               updateIntervalCount.incrementAndGet();
+                               duccLogger.trace(methodName, jobid, "count: 
"+updateIntervalCount.get());
                        }
+                       else {
+                               duccLogger.trace(methodName, jobid, "missed: 
"+"last="+last+" "+"now="+now);
+                       }
+               }
+               else {
+                       duccLogger.trace(methodName, jobid, "togo: "+(deadline 
- now)/1000);
                }
        }
        
@@ -178,8 +206,8 @@ implements IWebServer {
                duccLogger.trace(methodName, jobid, 
duccMsg.fetchLabel("received")+"NodeMetricsUpdateDuccEvent");
                DuccMachinesData dmd = DuccMachinesData.getInstance();
                DatedNodeMetricsUpdateDuccEvent datedEvent = new 
DatedNodeMetricsUpdateDuccEvent(duccEvent);
-               boolean force = dmd.put(datedEvent);
-               sortMachines(force);
+               dmd.put(datedEvent);
+               sortMachines();
                duccLogger.trace(methodName, jobid, duccMsg.fetch("exit"));
        }
 

Modified: 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java
URL: 
http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java?rev=1747553&r1=1747552&r2=1747553&view=diff
==============================================================================
--- 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java
 (original)
+++ 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java
 Thu Jun  9 14:09:29 2016
@@ -3098,7 +3098,7 @@ public class DuccHandler extends DuccAbs
                sb.append("{ ");
                sb.append("\"aaData\": [ ");
                DuccMachinesData instance = DuccMachinesData.getInstance();
-               ConcurrentSkipListMap<MachineInfo,NodeId> sortedMachines = 
instance.getSortedMachines();
+               Map<MachineInfo,NodeId> sortedMachines = 
instance.getSortedMachines();
                Iterator<MachineInfo> iterator;
                // pass 1
                iterator = sortedMachines.keySet().iterator();
@@ -3512,7 +3512,7 @@ public class DuccHandler extends DuccAbs
                String cookie = 
DuccCookies.getCookie(request,DuccCookies.cookieAgents);
                if(cookie.equals(DuccCookies.valueAgentsShow)) {
                        duccLogger.trace(methodName, jobid, "== show: "+cookie);
-                       ConcurrentSkipListMap<MachineInfo,NodeId> machines = 
DuccMachinesData.getInstance().getMachines();
+                       Map<MachineInfo,NodeId> machines = 
DuccMachinesData.getInstance().getMachines();
                        Iterator<MachineInfo> iterator = 
machines.keySet().iterator();
                        while(iterator.hasNext()) {
                                MachineInfo machineInfo = iterator.next();

Modified: 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java
URL: 
http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java?rev=1747553&r1=1747552&r2=1747553&view=diff
==============================================================================
--- 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java
 (original)
+++ 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java
 Thu Jun  9 14:09:29 2016
@@ -1487,7 +1487,7 @@ public class DuccHandlerClassic extends
                if(cookie.equals(DuccCookies.valueAgentsShow)) {
                        duccLogger.trace(methodName, jobid, "== show: "+cookie);
                        
-                       ConcurrentSkipListMap<MachineInfo,NodeId> machines = 
duccMachinesData.getMachines();
+                       Map<MachineInfo,NodeId> machines = 
duccMachinesData.getMachines();
                        Iterator<MachineInfo> iterator = 
machines.keySet().iterator();
                        while(iterator.hasNext()) {
                                MachineInfo machineInfo = iterator.next();

Modified: 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java
URL: 
http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java?rev=1747553&r1=1747552&r2=1747553&view=diff
==============================================================================
--- 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java
 (original)
+++ 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java
 Thu Jun  9 14:09:29 2016
@@ -2018,7 +2018,7 @@ public class DuccHandlerJsonFormat exten
                }
 
                if(showAgents) {
-                       ConcurrentSkipListMap<MachineInfo,NodeId> machines = 
duccMachinesData.getMachines();
+                       Map<MachineInfo,NodeId> machines = 
duccMachinesData.getMachines();
                        Iterator<MachineInfo> iterator = 
machines.keySet().iterator();
                        while(iterator.hasNext()) {
                                row = new JsonArray();

Modified: 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/nodeviz/NodeViz.java
URL: 
http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/nodeviz/NodeViz.java?rev=1747553&r1=1747552&r2=1747553&view=diff
==============================================================================
--- 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/nodeviz/NodeViz.java
 (original)
+++ 
uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/nodeviz/NodeViz.java
 Thu Jun  9 14:09:29 2016
@@ -24,7 +24,6 @@ import java.util.Comparator;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Map.Entry;
-import java.util.concurrent.ConcurrentSkipListMap;
 
 import org.apache.uima.ducc.common.Node;
 import org.apache.uima.ducc.common.NodeConfiguration;
@@ -273,7 +272,7 @@ public class NodeViz
         }
 
         logger.debug(methodName, null, "Generateing visualizaiton");
-        ConcurrentSkipListMap<MachineInfo,NodeId> m = 
machineData.getMachines();
+        Map<MachineInfo,NodeId> m = machineData.getMachines();
 
         for (Entry<MachineInfo, NodeId> entry : m.entrySet()) {
                // 


Reply via email to