/** * Metodo para registrar un nuevo usuario * * @param usuario * @throws QRocksException */ public GCMUser registrarUsuario(GCMUser usuario) throws QRocksException { if (isNull(usuario)) { onError("Favor de proporcionar los datos del usuario a registrar"); } if (!isValid(usuario.getGcmId())) { onError("Favor de proporcionar su 'google id'"); } GCMUser u = null; u = consultarPorId(GCMUser.class, usuario.getGcmId()); if (u == null) { // usuario.setNombre("no-name"); crear(usuario); return usuario; } else { // Si ya existe, actualiza los datos de este usuario // if(isValid(usuario.getEmail())){ // u.setEmail(usuario.getEmail()); // } // if(usuario.getFechaNacimiento()!=null){ // u.setFechaNacimiento(usuario.getFechaNacimiento()); // } // if(isValid(usuario.getNombre())){ // u.setNombre(usuario.getNombre()); // } // if(isValid(usuario.getAlias())){ // u.setAlias(usuario.getAlias()); // } if (isValid(usuario.getTipoDispositivo())) { u.setTipoDispositivo(usuario.getTipoDispositivo()); } // if(isValid(usuario.getTelefono())){ // u.setTelefono(usuario.getTelefono()); // } // boolean aunNoHaActualizadoSusDatos=(( "no-name".equalsIgnoreCase(u.getNombre()) )); // Si no tiene un alias el usuario registrado y tampoco la actualizacion entonces se debe de // proporcionar (ademas si ya actualizo sus datos y no puso su alias, va a marcar excepcion) // if(!isValid(u.getAlias()) && !isValid(usuario.getAlias()) && // !aunNoHaActualizadoSusDatos){ // onError("Favor de proporcionar su alias"); // } actualizar(u); } return u; }