Android Open Source - Robook Open Graph Action






From Project

Back to project page Robook.

License

The source code is released under:

MIT License

If you think the Android project Robook listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/**
 * Copyright 2010-present Facebook./*from  w  ww .j  a  v a2 s  .c  om*/
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.facebook.model;

import org.json.JSONObject;

import java.util.Date;
import java.util.List;

/**
 * Provides a strongly-typed representation of an Open Graph Action.
 * For more documentation of OG Actions, see: https://developers.facebook.com/docs/opengraph/actions/
 *
 * Note that this interface is intended to be used with GraphObject.Factory or OpenGraphAction.Factory
 * and not implemented directly.
 */
public interface OpenGraphAction extends GraphObject {
    /**
     * Gets the ID of the action.
     * @return the ID
     */
    String getId();

    /**
     * Sets the ID of the action.
     * @param id the ID
     */
    void setId(String id);

    /**
     * Gets the type of the action, which is a string in the form "mynamespace:mytype".
     * @return the type
     */
    String getType();

    /**
     * Sets the type of the action, which is a string in the form "mynamespace:mytype".
     * @param type the type
     */
    void setType(String type);

    /**
     * Gets the start time of the action.
     * @return the start time
     */
    Date getStartTime();

    /**
     * Sets the start time of the action.
     * @param startTime the start time
     */
    void setStartTime(Date startTime);

    /**
     * Gets the end time of the action.
     * @return the end time
     */
    Date getEndTime();

    /**
     * Sets the end time of the action.
     * @param endTime the end time
     */
    void setEndTime(Date endTime);

    /**
     * Gets the time the action was published, if any.
     * @return the publish time
     */
    Date getPublishTime();

    /**
     * Sets the time the action was published.
     * @param publishTime the publish time
     */
    void setPublishTime(Date publishTime);

    /**
     * Gets the time the action was created.
     * @return the creation time
     */
    public Date getCreatedTime();

    /**
     * Sets the time the action was created.
     * @param createdTime the creation time
     */
    public void setCreatedTime(Date createdTime);

    /**
     * Gets the time the action expires at.
     * @return the expiration time
     */
    public Date getExpiresTime();

    /**
     * Sets the time the action expires at.
     * @param expiresTime the expiration time
     */
    public void setExpiresTime(Date expiresTime);

    /**
     * Gets the unique string which will be passed to the OG Action owner's website
     * when a user clicks through this action on Facebook.
     * @return the ref string
     */
    String getRef();

    /**
     * Sets the unique string which will be passed to the OG Action owner's website
     * when a user clicks through this action on Facebook.
     * @param ref the ref string
     */
    void setRef(String ref);

    /**
     * Gets the message assoicated with the action.
     * @return the message
     */
    String getMessage();

    /**
     * Sets the message associated with the action.
     * @param message the message
     */
    void setMessage(String message);

    /**
     * Gets the place where the action took place.
     * @return the place
     */
    GraphPlace getPlace();

    /**
     * Sets the place where the action took place.
     * @param place the place
     */
    void setPlace(GraphPlace place);

    /**
     * Gets the list of profiles that were tagged in the action.
     * @return the profiles that were tagged in the action
     */
    GraphObjectList<GraphObject> getTags();

    /**
     * Sets the list of profiles that were tagged in the action.
     * @param tags the profiles that were tagged in the action
     */
    void setTags(List<? extends GraphObject> tags);

    /**
     * Gets the images that were associated with the action.
     * @return the images
     */
    List<JSONObject> getImage();

    /**
     * Sets the images that were associated with the action.
     * @param image the images
     */
    void setImage(List<JSONObject> image);

    /**
     * Sets the images associated with the Open Graph action by specifying their URLs. This is a helper
     * that will create GraphObjects with the correct URLs and populate the property with those objects.
     * @param urls the URLs
     */
    @CreateGraphObject("url")
    @PropertyName("image")
    void setImageUrls(List<String> urls);

    /**
     * Gets the from-user associated with the action.
     * @return the user
     */
    GraphUser getFrom();

    /**
     * Sets the from-user associated with the action.
     * @param from the from-user
     */
    void setFrom(GraphUser from);

    /**
     * Gets the 'likes' that have been performed on this action.
     * @return the likes
     */
    public JSONObject getLikes();

    /**
     * Sets the 'likes' that have been performed on this action.
     * @param likes the likes
     */
    public void setLikes(JSONObject likes);

    /**
     * Gets the application that created this action.
     * @return the application
     */
    GraphObject getApplication();

    /**
     * Sets the application that created this action.
     * @param application the application
     */
    void setApplication(GraphObject application);

    /**
     * Gets the comments that have been made on this action.
     * @return the comments
     */
    public JSONObject getComments();

    /**
     * Sets the comments that have been made on this action.
     * @param comments the comments
     */
    void setComments(JSONObject comments);

    /**
     * Gets the type-specific data for this action; for instance, any properties
     * referencing Open Graph objects will appear under here.
     * @return a GraphObject representing the type-specific data
     */
    GraphObject getData();

    /**
     * Sets the type-specific data for this action.
     * @param data a GraphObject representing the type-specific data
     */
    void setData(GraphObject data);


    /**
     * Gets whether the action has been explicitly shared by the user. See
     * <a href="https://developers.facebook.com/docs/opengraph/guides/explicit-sharing/">Explicit Sharing</a> for
     * more information.
     * @return true if this action was explicitly shared
     */
    @PropertyName("fb:explicitly_shared")
    boolean getExplicitlyShared();

    /**
     * Sets whether the action has been explicitly shared by the user. See
     * <a href="https://developers.facebook.com/docs/opengraph/guides/explicit-sharing/">Explicit Sharing</a> for
     * more information. You should only specify this property if explicit sharing has been enabled for an
     * Open Graph action type.
     * @param explicitlyShared true if this action was explicitly shared
     */
    @PropertyName("fb:explicitly_shared")
    void setExplicitlyShared(boolean explicitlyShared);

    /**
     * Exposes helpers for creating instances of OpenGraphAction.
     */
    final class Factory {
        /**
         * Creates an OpenGraphAction suitable for posting via, e.g., a native Share dialog.
         * @return an OpenGraphAction
         */
        @Deprecated
        public static OpenGraphAction createForPost() {
            return createForPost(OpenGraphAction.class, null);
        }

        /**
         * Creates an OpenGraphAction suitable for posting via, e.g., a native Share dialog.
         * @param type the Open Graph action type for the action, or null if it will be specified later
         * @return an OpenGraphAction
         */
        public static OpenGraphAction createForPost(String type) {
            return createForPost(OpenGraphAction.class, type);
        }

        /**
         * Creates an OpenGraphAction suitable for posting via, e.g., a native Share dialog.
         * @param type the Open Graph action type for the action, or null if it will be specified later
         * @param graphObjectClass the OpenGraphAction-derived type to return
         * @return an OpenGraphAction
         */
        public static <T extends OpenGraphAction> T createForPost(Class<T> graphObjectClass, String type) {
            T object = GraphObject.Factory.create(graphObjectClass);

            if (type != null) {
                object.setType(type);
            }

            return object;
        }
    }
}




Java Source Code List

com.facebook.AccessTokenSource.java
com.facebook.AccessToken.java
com.facebook.AppEventsConstants.java
com.facebook.AppEventsLogger.java
com.facebook.AppLinkData.java
com.facebook.AuthorizationClient.java
com.facebook.BoltsMeasurementEventListener.java
com.facebook.FacebookAppLinkResolver.java
com.facebook.FacebookAuthorizationException.java
com.facebook.FacebookBroadcastReceiver.java
com.facebook.FacebookDialogException.java
com.facebook.FacebookException.java
com.facebook.FacebookGraphObjectException.java
com.facebook.FacebookOperationCanceledException.java
com.facebook.FacebookRequestError.java
com.facebook.FacebookSdkVersion.java
com.facebook.FacebookServiceException.java
com.facebook.FacebookTimeSpentData.java
com.facebook.GetTokenClient.java
com.facebook.HttpMethod.java
com.facebook.InsightsLogger.java
com.facebook.LegacyHelper.java
com.facebook.LoggingBehavior.java
com.facebook.LoginActivity.java
com.facebook.NativeAppCallAttachmentStore.java
com.facebook.NativeAppCallContentProvider.java
com.facebook.NonCachingTokenCachingStrategy.java
com.facebook.ProgressNoopOutputStream.java
com.facebook.ProgressOutputStream.java
com.facebook.RequestAsyncTask.java
com.facebook.RequestBatch.java
com.facebook.RequestOutputStream.java
com.facebook.RequestProgress.java
com.facebook.Request.java
com.facebook.Response.java
com.facebook.SessionDefaultAudience.java
com.facebook.SessionLoginBehavior.java
com.facebook.SessionState.java
com.facebook.Session.java
com.facebook.Settings.java
com.facebook.SharedPreferencesTokenCachingStrategy.java
com.facebook.TestSession.java
com.facebook.TokenCachingStrategy.java
com.facebook.UiLifecycleHelper.java
com.facebook.android.AsyncFacebookRunner.java
com.facebook.android.DialogError.java
com.facebook.android.FacebookError.java
com.facebook.android.Facebook.java
com.facebook.android.FbDialog.java
com.facebook.android.Util.java
com.facebook.internal.AnalyticsEvents.java
com.facebook.internal.AttributionIdentifiers.java
com.facebook.internal.CacheableRequestBatch.java
com.facebook.internal.FileLruCache.java
com.facebook.internal.ImageDownloader.java
com.facebook.internal.ImageRequest.java
com.facebook.internal.ImageResponseCache.java
com.facebook.internal.ImageResponse.java
com.facebook.internal.Logger.java
com.facebook.internal.NativeProtocol.java
com.facebook.internal.PlatformServiceClient.java
com.facebook.internal.ServerProtocol.java
com.facebook.internal.SessionAuthorizationType.java
com.facebook.internal.SessionTracker.java
com.facebook.internal.UrlRedirectCache.java
com.facebook.internal.Utility.java
com.facebook.internal.Validate.java
com.facebook.internal.WorkQueue.java
com.facebook.internal.package-info.java
com.facebook.model.CreateGraphObject.java
com.facebook.model.GraphLocation.java
com.facebook.model.GraphMultiResult.java
com.facebook.model.GraphObjectList.java
com.facebook.model.GraphObject.java
com.facebook.model.GraphPlace.java
com.facebook.model.GraphUser.java
com.facebook.model.JsonUtil.java
com.facebook.model.OpenGraphAction.java
com.facebook.model.OpenGraphObject.java
com.facebook.model.PropertyName.java
com.facebook.widget.FacebookDialog.java
com.facebook.widget.FacebookFragment.java
com.facebook.widget.FriendPickerFragment.java
com.facebook.widget.GraphObjectAdapter.java
com.facebook.widget.GraphObjectCursor.java
com.facebook.widget.GraphObjectPagingLoader.java
com.facebook.widget.LoginButton.java
com.facebook.widget.PickerFragment.java
com.facebook.widget.PlacePickerFragment.java
com.facebook.widget.ProfilePictureView.java
com.facebook.widget.SimpleGraphObjectCursor.java
com.facebook.widget.ToolTipPopup.java
com.facebook.widget.UserSettingsFragment.java
com.facebook.widget.WebDialog.java
unipg.dmi.robook.AbstractAdkActivity.java
unipg.dmi.robook.MainActivity.java
unipg.dmi.robook.Preview.java
unipg.dmi.robook.UpdaterService.java
unipg.dmi.robook.prefs.java