@Override
	public void onValueChange(ValueChangeEvent<String> event) {
		String token = event.getValue();
		
		if (token != null) {
			
			if (token.equals(getMainItem())) {
				final UsersServiceAsync user = UsersService.Util.getInstance();
				
				user.getUserConnected(new AsyncCallback<UserDTO>() {
					
					@Override
					public void onSuccess(UserDTO result) {
						if(result != null){
							user.connectUser(new AsyncCallback<Boolean>() {
								
								@Override
								public void onSuccess(Boolean result) {
									if(result.booleanValue()){
										//TODO change it to go the principal screen.
										goLogin();
										//goPrincipal();
									}else{
										goLogin();
									}
								}
								
								@Override
								public void onFailure(Throwable caught) {
									goLogin();
								}
							});
						}else{
							goLogin();
						}
						
					}
					
					@Override
					public void onFailure(Throwable caught) {
						goLogin();
					}
				});
			} 
		}
	}