private void handleStartProcess(String[] cmdLine){
        if(cmdLine.length < 3){
            System.out.println("invalid argument, see help for more information");
            return;
        }
        int workerId;
        try{
            workerId = Integer.valueOf(cmdLine[1]);
            
        }catch(Exception e){
            System.out.println("the worker id is not a number");
            return;
            
        }
        if(!workersMap.containsKey(workerId)){
            System.out.println("there is no worker with id number "+workerId);
            return;
        }
        /*pass all the checkes, now get the argument for the process*/
        String[] args = new String[cmdLine.length - 3];
        for(int i=3;i<cmdLine.length;i++){
            args[i-3] = cmdLine[i];
        }
        
        
        /*try{
            Class process = ProcessManager.class.getClassLoader().loadClass(cmdLine[2]);
        }catch(ClassNotFoundException e){
            System.out.println("no such process class "+cmdLine[2]);
            return;
        }*/
        
        processId++;
        Message cmdMessage = new Message(Message.msgType.COMMAND);
        cmdMessage.setCommandId(CommandType.START);
        cmdMessage.setArgs(args);
        cmdMessage.setProcessName(cmdLine[2]);
        cmdMessage.setProcessId(processId);
        
        
        if(processServerMap.containsKey(workerId)){
            try{
                processServerMap.get(workerId).sendToWorker(cmdMessage);
                ProcessInfo procInfo = new ProcessInfo();
                procInfo.setId(processId);
                procInfo.setName(cmdLine[2]);
                procInfo.setWorkerId(workerId);
                procInfo.setStatus(Status.STARTING);
                processesMap.put(processId, procInfo);
            }catch (IOException e) {
                //e.printStackTrace();
                System.out.println("start Command sent failed, remove worker "+workerId);
                removeNode(workerId);
            }
        }
        else{
            System.out.println("there is no server for workerId "+workerId);
        }
            
    }