001package com.gigya.android.sdk; 002 003import android.support.annotation.StringDef; 004 005import java.lang.annotation.Retention; 006import java.lang.annotation.RetentionPolicy; 007 008/** 009 * SDK global definitions. 010 * Contains SDK relevant global and specific constants. 011 */ 012public class GigyaDefinitions { 013 014 /** 015 * Local broadcast specific constants. 016 */ 017 public static class Broadcasts { 018 // ACTIONS 019 public static final String INTENT_ACTION_SESSION_EXPIRED = "intent_action_session_expired"; 020 public static final String INTENT_ACTION_SESSION_INVALID = "intent_action_session_invalid"; 021 public static final String INTENT_ACTION_REMOTE_MESSAGE = "intent_action_remote_message"; 022 } 023 024 /** 025 * Api related specific constants. 026 */ 027 public static class API { 028 // ACCOUNT 029 public static final String API_GET_SDK_CONFIG = "socialize.getSDKConfig"; 030 public static final String API_LOGIN = "accounts.login"; 031 public static final String API_LOGOUT = "accounts.logout"; 032 public static final String API_GET_ACCOUNT_INFO = "accounts.getAccountInfo"; 033 public static final String API_SET_ACCOUNT_INFO = "accounts.setAccountInfo"; 034 public static final String API_RESET_PASSWORD = "accounts.resetPassword"; 035 public static final String API_REFRESH_PROVIDER_SESSION = "socialize.refreshProviderSession"; 036 public static final String API_INIT_REGISTRATION = "accounts.initRegistration"; 037 public static final String API_REGISTER = "accounts.register"; 038 public static final String API_FINALIZE_REGISTRATION = "accounts.finalizeRegistration"; 039 public static final String API_GET_CONFLICTING_ACCOUNTS = "accounts.getConflictingAccount"; 040 public static final String API_NOTIFY_LOGIN = "accounts.notifyLogin"; 041 public static final String API_VERIFY_LOGIN = "accounts.verifyLogin"; 042 public static final String API_NOTIFY_SOCIAL_LOGIN = "accounts.notifySocialLogin"; 043 public static final String API_REMOVE_CONNECTION = "socialize.removeConnection"; 044 public static final String API_TFA_GET_PROVIDERS = "accounts.tfa.getProviders"; 045 046 public static final String API_AUTH_UPDATE_DEVICE = "accounts.auth.push.updateDevice"; 047 } 048 049 public static class SessionEncryption { 050 051 @Retention(RetentionPolicy.SOURCE) 052 @StringDef({DEFAULT, FINGERPRINT}) 053 public @interface Type { 054 055 } 056 057 public static final String DEFAULT = "DEFAULT"; 058 public static final String FINGERPRINT = "FINGERPRINT"; 059 } 060 061 /** 062 * Plugin view specific constants. 063 */ 064 public static class Plugin { 065 066 @Retention(RetentionPolicy.SOURCE) 067 @StringDef({FINISHED, CANCELED}) 068 public @interface PluginReason { 069 070 } 071 072 public static final String FINISHED = "finished"; 073 public static final String CANCELED = "canceled"; 074 } 075 076 /** 077 * Supported login providers specific constants. 078 */ 079 public static class Providers { 080 081 @Retention(RetentionPolicy.SOURCE) 082 @StringDef({AMAZON, BLOGGER, FACEBOOK, FOURSQUARE, GOOGLE, INSTAGRAM, KAKAO, LINE, LINKEDIN, WECHAT, 083 LIVEDOOR, MESSENGER, MIXI, NAVER, NETLOG, ODNOKLASSNIKI, ORANGE_FRANCE, PAYPALOAUTH, TENCENT_QQ, RENREN, SINA_WEIBO, 084 SPICEWORKS, TWITTER, VKONTAKTE, WECHAT, WORDPRESS, XING, YAHOO, YAHOO_JAPAN, APPLE}) 085 public @interface SocialProvider { 086 } 087 088 public static final String AMAZON = "amazon"; 089 public static final String BLOGGER = "blogger"; 090 public static final String FACEBOOK = "facebook"; 091 public static final String FOURSQUARE = "foursquare"; 092 public static final String GOOGLE = "google"; 093 public static final String INSTAGRAM = "Instagram"; 094 public static final String KAKAO = "kakao"; 095 public static final String LINE = "line"; 096 public static final String LINKEDIN = "linkedin"; 097 public static final String LIVEDOOR = "livedoor"; 098 public static final String MESSENGER = "messenger"; 099 public static final String MIXI = "mixi"; 100 public static final String NAVER = "naver"; 101 public static final String NETLOG = "netlog"; 102 public static final String ODNOKLASSNIKI = "odnoklassniki"; 103 public static final String ORANGE_FRANCE = "orange france"; 104 public static final String PAYPALOAUTH = "paypaloauth"; 105 public static final String TENCENT_QQ = "tencent qq"; 106 public static final String RENREN = "renren"; 107 public static final String SINA_WEIBO = "sina weibo"; 108 public static final String SPICEWORKS = "spiceworks"; 109 public static final String TWITTER = "twitter"; 110 public static final String VKONTAKTE = "vkontakte"; 111 public static final String WECHAT = "wechat"; 112 public static final String WORDPRESS = "wordpress"; 113 public static final String XING = "xing"; 114 public static final String YAHOO = "yahoo"; 115 public static final String YAHOO_JAPAN = "Yahoo Japan"; 116 public static final String APPLE = "apple"; 117 } 118 119 public static class AccountIncludes { 120 121 @Retention(RetentionPolicy.SOURCE) 122 @StringDef({IDENTITIES_ACTIVE, IDENTITIES_ALL, IDENTITIES_GLOBAL, LOGIN_IDS, EMAILS, PROFILE, DATA, PASSWORD, IS_LOCKED_OUT, 123 LAST_LOGIN_LOCATION, REG_SOURCE, I_RANK, RBA, SUBSCRIPTIONS, USER_INFO, PREFERENCES, GROUPS}) 124 public @interface Includes { 125 126 } 127 128 public static final String IDENTITIES_ACTIVE = "identities-active"; 129 public static final String IDENTITIES_ALL = "identities-all"; 130 public static final String IDENTITIES_GLOBAL = "identities-global"; 131 public static final String LOGIN_IDS = "loginIDs"; 132 public static final String EMAILS = "emails"; 133 public static final String PROFILE = "profile"; 134 public static final String DATA = "data"; 135 public static final String PASSWORD = "password"; 136 public static final String IS_LOCKED_OUT = "isLockedOut"; 137 public static final String LAST_LOGIN_LOCATION = "lastLoginLocation"; 138 public static final String REG_SOURCE = "regSource"; 139 public static final String I_RANK = "irank"; 140 public static final String RBA = "rba"; 141 public static final String SUBSCRIPTIONS = "subscriptions"; 142 public static final String USER_INFO = "userInfo"; 143 public static final String PREFERENCES = "preferences"; 144 public static final String GROUPS = "groups"; 145 } 146 147 public static class AccountProfileExtraFields { 148 149 @Retention(RetentionPolicy.SOURCE) 150 @StringDef({LANGUAGES, ADDRESS, PHONES, EDUCATION, EDUCATION_LEVEL, HONORS, PUBLICATIONS, PATENTS, CERTIFICATIONS, 151 PROFESSIONAL_HEADLINE, BIO, INDUSTRY, SPECIALITIES, WORK, SKILLS, RELIGION, POLITICAL_VIEW, INTERESTED_IN, 152 RELATIONSHIP_STATUS, HOMETOWN, FAVORITES, FOLLOWERS_COUNT, FOLLOWING_COUNT, USERNAME, NAME, LOCALE, VERIFIED, 153 TIMEZONE, LIKES, SAMLDATA}) 154 public @interface ProfileExtraFields { 155 156 } 157 158 public static final String LANGUAGES = "languages"; 159 public static final String ADDRESS = "address"; 160 public static final String PHONES = "phones"; 161 public static final String EDUCATION = "education"; 162 public static final String EDUCATION_LEVEL = "educationLevel"; 163 public static final String HONORS = "honors"; 164 public static final String PUBLICATIONS = "publications"; 165 public static final String PATENTS = "patents"; 166 public static final String CERTIFICATIONS = "certifications"; 167 public static final String PROFESSIONAL_HEADLINE = "professionalHeadline"; 168 public static final String BIO = "bio"; 169 public static final String INDUSTRY = "industry"; 170 public static final String SPECIALITIES = "specialties"; 171 public static final String WORK = "work"; 172 public static final String SKILLS = "skills"; 173 public static final String RELIGION = "religion"; 174 public static final String POLITICAL_VIEW = "politicalView"; 175 public static final String INTERESTED_IN = "interestedIn"; 176 public static final String RELATIONSHIP_STATUS = "relationshipStatus"; 177 public static final String HOMETOWN = "hometown"; 178 public static final String FAVORITES = "favorites"; 179 public static final String FOLLOWERS_COUNT = "followersCount"; 180 public static final String FOLLOWING_COUNT = "followingCount"; 181 public static final String USERNAME = "username"; 182 public static final String NAME = "name"; 183 public static final String LOCALE = "locale"; 184 public static final String VERIFIED = "verified"; 185 public static final String TIMEZONE = "timezone"; 186 public static final String LIKES = "likes"; 187 public static final String SAMLDATA = "samlData"; 188 } 189 190 public static class PushMode { 191 192 @Retention(RetentionPolicy.SOURCE) 193 @StringDef({OPT_IN, VERIFY, CANCEL}) 194 195 public @interface Mode { 196 } 197 198 public static final String OPT_IN = "optin"; 199 public static final String VERIFY = "verify"; 200 public static final String CANCEL = "cancel"; 201 } 202 203}