/* * JBoss, a division of Red Hat * Copyright 2013, Red Hat Middleware, LLC, and individual * contributors as indicated by the @authors tag. See the * copyright.txt in the distribution for a full listing of * individual contributors. * * This is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation; either version 2.1 of * the License, or (at your option) any later version. * * This software is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this software; if not, write to the Free * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301 USA, or see the FSF site: http://www.fsf.org. */ package org.gatein.security.oauth.exception; /** * Enum with various exception codes * * @author <a href="mailto:mposolda@redhat.com">Marek Posolda</a> */ public enum OAuthExceptionCode { /** * Unspecified GateIn+OAuth error */ UNKNOWN_ERROR, /** * This error could happen during saving of user into GateIn identity database. * It happens when there is an attempt to save user with facebookUsername (or googleUsername), but there is already an existing * user with same facebookUsername. * * For example: We want to save user 'john' with facebookUsername 'john.doyle' but we already have user 'johny2' with same facebookUsername 'john.doyle' */ DUPLICATE_OAUTH_PROVIDER_USERNAME, /** * Some error during Twitter processing */ TWITTER_ERROR, /** * Some error during Facebook processing */ FACEBOOK_ERROR, /** * Some error during Google processing */ GOOGLE_ERROR, /** * Some error during LinkedIn processing */ LINKEDIN_ERROR, /** * Error when we have invalid or revoked access token */ ACCESS_TOKEN_ERROR, /** * Generic IO error (for example network error) */ IO_ERROR, /** * Error when state parameter from request parameter, which is sent from OAuth provider, is not equals to previously sent state */ INVALID_STATE, /** * Error when revoking of accessToken of any provider failed */ TOKEN_REVOCATION_FAILED, /** * Error when OAuth2 flow failed because user denied to permit privileges (scope) for OAuth provider */ USER_DENIED_SCOPE, /** * Error during DB operation (For example get/set/remove access token from DB) */ PERSISTENCE_ERROR }