Android Open Source - CCSocialNetwork Session State






From Project

Back to project page CCSocialNetwork.

License

The source code is released under:

GNU Lesser General Public License

If you think the Android project CCSocialNetwork 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  w  w  .j  a  v a2  s  .c o  m*/
 *
 * 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;

/**
 * <p>
 * Identifies the state of a Session.
 * </p>
 * <p>
 * Session objects implement a state machine that controls their lifecycle. This
 * enum represents the states of the state machine.
 * </p>
 */
public enum SessionState {
    /**
     * Indicates that the Session has not yet been opened and has no cached
     * token. Opening a Session in this state will involve user interaction.
     */
    CREATED(Category.CREATED_CATEGORY),

    /**
     * <p>
     * Indicates that the Session has not yet been opened and has a cached
     * token. Opening a Session in this state will not involve user interaction.
     * </p>
     * <p>
     * If you are using Session from an Android Service, you must provide a
     * TokenCachingStrategy implementation that contains a valid token to the Session
     * constructor. The resulting Session will be created in this state, and you
     * can then safely call open, passing null for the Activity.
     * </p>
     */
    CREATED_TOKEN_LOADED(Category.CREATED_CATEGORY),

    /**
     * Indicates that the Session is in the process of opening.
     */
    OPENING(Category.CREATED_CATEGORY),

    /**
     * Indicates that the Session is opened. In this state, the Session may be
     * used with a {@link Request}.
     */
    OPENED(Category.OPENED_CATEGORY),

    /**
     * <p>
     * Indicates that the Session is opened and that the token has changed. In
     * this state, the Session may be used with {@link Request}.
     * </p>
     * <p>
     * Every time the token is updated, {@link Session.StatusCallback
     * StatusCallback} is called with this value.
     * </p>
     */
    OPENED_TOKEN_UPDATED(Category.OPENED_CATEGORY),

    /**
     * Indicates that the Session is closed, and that it was not closed
     * normally. Typically this means that the open call failed, and the
     * Exception parameter to {@link Session.StatusCallback StatusCallback} will
     * be non-null.
     */
    CLOSED_LOGIN_FAILED(Category.CLOSED_CATEGORY),

    /**
     * Indicates that the Session was closed normally.
     */
    CLOSED(Category.CLOSED_CATEGORY);

    private final Category category;

    SessionState(Category category) {
        this.category = category;
    }

    /**
     * Returns a boolean indicating whether the state represents a successfully
     * opened state in which the Session can be used with a {@link Request}.
     * 
     * @return a boolean indicating whether the state represents a successfully
     *         opened state in which the Session can be used with a
     *         {@link Request}.
     */
    public boolean isOpened() {
        return this.category == Category.OPENED_CATEGORY;
    }

    /**
     * Returns a boolean indicating whether the state represents a closed
     * Session that can no longer be used with a {@link Request}.
     * 
     * @return a boolean indicating whether the state represents a closed
     * Session that can no longer be used with a {@link Request}.
     */
    public boolean isClosed() {
        return this.category == Category.CLOSED_CATEGORY;
    }

    private enum Category {
        CREATED_CATEGORY, OPENED_CATEGORY, CLOSED_CATEGORY
    }
}




Java Source Code List

com.facebook.AccessTokenSource.java
com.facebook.AccessToken.java
com.facebook.AuthorizationClient.java
com.facebook.FacebookAuthorizationException.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.GetTokenClient.java
com.facebook.HttpMethod.java
com.facebook.InsightsLogger.java
com.facebook.LegacyHelper.java
com.facebook.LoggingBehavior.java
com.facebook.LoginActivity.java
com.facebook.NativeProtocol.java
com.facebook.NonCachingTokenCachingStrategy.java
com.facebook.RequestAsyncTask.java
com.facebook.RequestBatch.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.CacheableRequestBatch.java
com.facebook.internal.FileLruCache.java
com.facebook.internal.Logger.java
com.facebook.internal.ServerProtocol.java
com.facebook.internal.SessionAuthorizationType.java
com.facebook.internal.SessionTracker.java
com.facebook.internal.Utility.java
com.facebook.internal.Validate.java
com.facebook.internal.package-info.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.PropertyName.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.ImageDownloader.java
com.facebook.widget.ImageRequest.java
com.facebook.widget.ImageResponseCache.java
com.facebook.widget.ImageResponse.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.UrlRedirectCache.java
com.facebook.widget.UserSettingsFragment.java
com.facebook.widget.WebDialog.java
com.facebook.widget.WorkQueue.java
org.example.SocialNetwork.CCSocialNetwork.java
org.example.SocialNetwork.EmailSender.java
org.example.SocialNetwork.InternetConnection.java