public void run(){
        try {
            // Java stupidity declaring objects for objects
            out = new PrintWriter( client.getOutputStream(), true);
        } catch(IOException e){
            System.err.println("Failed to allocate resources to use Socket");
            System.err.println(e);
            System.exit(-2);
        }

        String command = FileTransfer.readLine(client);

        switch(Command.getCommandType(command)){
        case GET_JOB:
            getJob();
            break;
        case CHECKOUT_JOB:
            checkoutJob();
            break;
        case COMPLETE_JOB:
            completeJob();
            break;
        default:
            System.err.println("Error: Unkown Command: " + command);
            System.err.println("Continuing...");
        }

        clean();
    }