@Override public boolean onOptionsItemSelected(MenuItem item) { if (item.equals(settings)) { showFragment(SETTINGS, true); return true; } else if (item.equals(challenge)) { GameRequestContent newGameRequestContent = new GameRequestContent.Builder() .setTitle(getString(R.string.challenge_dialog_title)) .setMessage(getString(R.string.challenge_dialog_message)) .build(); gameRequestDialog.show(this, newGameRequestContent); return true; } else if (item.equals(share)) { RpsFragment fragment = (RpsFragment) fragments[RPS]; fragment.shareUsingAutomaticDialog(); return true; } else if (item.equals(message)) { RpsFragment fragment = (RpsFragment) fragments[RPS]; fragment.shareUsingMessengerDialog(); return true; } return false; }
GameRequestContent.Builder builder = new GameRequestContent.Builder(); if (request.getMessage() != null) builder.setMessage(request.getMessage()); if (request.getData() != null) builder.setData(request.getData()); if (request.getTitle() != null) builder.setTitle(request.getTitle()); if (request.getObjectId() != null) builder.setObjectId(request.getObjectId()); builder.setSuggestions(suggestionList); builder.setRecipients(recipientsList); switch (request.getActionType()) { case ASKFOR: builder.setActionType(GameRequestContent.ActionType.ASKFOR); break; case SEND: builder.setActionType(GameRequestContent.ActionType.SEND); break; case TURN: builder.setActionType(GameRequestContent.ActionType.TURN); break; switch (request.getFilters()) { case APP_NON_USERS: builder.setFilters(GameRequestContent.Filters.APP_NON_USERS); break; case APP_USERS: builder.setFilters(GameRequestContent.Filters.APP_USERS); break;
@Override public Builder readFrom(final GameRequestContent content) { if (content == null) { return this; } return this .setMessage(content.getMessage()) .setRecipients(content.getRecipients()) .setTitle(content.getTitle()) .setData(content.getData()) .setActionType(content.getActionType()) .setObjectId(content.getObjectId()) .setFilters(content.getFilters()) .setSuggestions(content.getSuggestions()); }