UserDataConstants.STATUS_INPROCESS);
UserDataConstants.STATUS_INPROCESS, false);
    private boolean doCreate(IUserAdminSessionRemote admin, UserDataVO data, int status) throws Exception {        boolean ret = false;        int tokentype = SecConst.TOKEN_SOFT_BROWSERGEN;        boolean createJKS = false;        boolean createPEM = false;        boolean createP12 = false;        // get users Token Type.        tokentype = data.getTokenType();        createP12 = tokentype == SecConst.TOKEN_SOFT_P12;        createPEM = tokentype == SecConst.TOKEN_SOFT_PEM;        createJKS = tokentype == SecConst.TOKEN_SOFT_JKS;                // Only generate supported tokens        if (createP12 || createPEM || createJKS) {            if (status == UserDataConstants.STATUS_KEYRECOVERY) {                log.info("Retrieving keys for " + data.getUsername());            } else {                log.info("Generating keys for " + data.getUsername());            }                                                       // Grab new user, set status to INPROCESS            admin.setUserStatus(administrator, data.getUsername(),                    UserDataConstants.STATUS_INPROCESS);            processUser(data, createJKS, createPEM,                    (status == UserDataConstants.STATUS_KEYRECOVERY));                        // If all was OK , set status to GENERATED            admin.setUserStatus(administrator, data.getUsername(),                    UserDataConstants.STATUS_GENERATED);                        // Delete clear text password            admin.setClearTextPassword(administrator, data.getUsername(), null);            ret = true;            log.info("New user generated successfully - " + data.getUsername());        } else {            log.debug("Cannot batchmake browser generated token for user (wrong tokentype)- " +                    data.getUsername());        }                return ret;    }