private static JSONObject serializeMediaTemplateElement( ShareMessengerMediaTemplateContent element) throws JSONException { JSONObject object = new JSONObject() .put(ATTACHMENT_ID, element.getAttachmentId()) .put(URL, Utility.getUriString(element.getMediaUrl())) .put(MEDIA_TYPE, getMediaType(element.getMediaType())); if (element.getButton() != null) { JSONArray jsonArray = new JSONArray(); jsonArray.put(serializeActionButton(element.getButton())); object.put(BUTTONS, jsonArray); } return object; }
@Override public Builder readFrom(final ShareMessengerMediaTemplateContent content) { if (content == null) { return this; } return super .readFrom(content) .setMediaType(content.getMediaType()) .setAttachmentId(content.getAttachmentId()) .setMediaUrl(content.getMediaUrl()) .setButton(content.getButton()); }
private static void validateShareMessengerMediaTemplateContent( ShareMessengerMediaTemplateContent content) { if (Utility.isNullOrEmpty(content.getPageId())) { throw new FacebookException( "Must specify Page Id for ShareMessengerMediaTemplateContent"); } if (content.getMediaUrl() == null && Utility.isNullOrEmpty(content.getAttachmentId())) { throw new FacebookException( "Must specify either attachmentId or mediaURL for " + "ShareMessengerMediaTemplateContent"); } validateShareMessengerActionButton(content.getButton()); }
private static void addMediaTemplateContentForPreview( Bundle params, ShareMessengerMediaTemplateContent content) throws JSONException { addActionButton(params, content.getButton(), false); Utility.putNonEmptyString(params, ShareConstants.PREVIEW_TYPE, PREVIEW_DEFAULT); Utility.putNonEmptyString(params, ShareConstants.ATTACHMENT_ID, content.getAttachmentId()); if (content.getMediaUrl() != null) { Utility.putUri(params, getMediaUrlKey(content.getMediaUrl()), content.getMediaUrl()); } Utility.putNonEmptyString( params, ShareConstants.MEDIA_TYPE, getMediaType(content.getMediaType())); }