diff src/main/java/christie/codegear/StartCodeGear.java @ 17:59fabebb67d8

delete cgmName as String, add cgmID as int
author Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
date Thu, 18 Jan 2018 16:49:54 +0900
parents 4e867538adb7
children 76fac42a840e
line wrap: on
line diff
--- a/src/main/java/christie/codegear/StartCodeGear.java	Mon Jan 15 16:27:58 2018 +0900
+++ b/src/main/java/christie/codegear/StartCodeGear.java	Thu Jan 18 16:49:54 2018 +0900
@@ -9,32 +9,25 @@
 import java.util.concurrent.TimeUnit;
 
 public abstract class StartCodeGear extends CodeGear{
-    static ConcurrentHashMap<String, CodeGearManager> cgms = new ConcurrentHashMap<>();
+    static ConcurrentHashMap<Integer, CodeGearManager> cgms = new ConcurrentHashMap<>();
     static LinkedBlockingQueue<Runnable> taskQueue = new LinkedBlockingQueue<Runnable>();
     static ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(Runtime.getRuntime().availableProcessors(), // initial number of threads
             Runtime.getRuntime().availableProcessors(),
             Integer.MAX_VALUE, // keepAliveTime
             TimeUnit.SECONDS,
             taskQueue);
+    static int cgmCount = 1;
 
     public StartCodeGear(CodeGearManager cgm){
         cgm.setup(this);
     }
 
-    public static CodeGearManager createCGM(String name, int localPort){
-        if (cgms.containsKey(name)){
-            throw new IllegalArgumentException("CGM name '" + name +"' is already used");
-        }
-
-        CodeGearManager cgm = new CodeGearManager(name, threadPoolExecutor, cgms, localPort);
-        cgms.put(name, cgm);
+    public static CodeGearManager createCGM(int localPort){
+        CodeGearManager cgm = new CodeGearManager(cgmCount, threadPoolExecutor, cgms, localPort);
+        cgms.put(cgmCount++, cgm);
         return cgm;
     }
 
-    public static CodeGearManager createCGM(String name){
-        return createCGM(name, 10000);
-    }
-
     public static CodeGearManager getCGM(String name){
         return cgms.get(name);
     }