package org.exoplatform.portal.gadget.core; import org.apache.shindig.gadgets.oauth.BasicOAuthStoreTokenIndex; import org.chromattic.api.annotations.Destroy; import org.chromattic.api.annotations.PrimaryType; import org.chromattic.api.annotations.Property; @PrimaryType(name = "tkn:gadgettoken") public abstract class GadgetTokenEntry { public BasicOAuthStoreTokenIndex getKey() { BasicOAuthStoreTokenIndex key = new BasicOAuthStoreTokenIndex(); key.setGadgetUri(getGadgetUri()); key.setModuleId(getModuleId()); key.setServiceName(getServiceName()); key.setTokenName(getTokenName()); key.setUserId(getUserId()); return key; } @Property(name = "userId") public abstract String getUserId(); public abstract void setUserId(String userId); @Property(name = "gadgetUri") public abstract String getGadgetUri(); public abstract void setGadgetUri(String gadgetUri); @Property(name = "moduleId") public abstract long getModuleId(); public abstract void setModuleId(long moduleId); @Property(name = "tokenName") public abstract String getTokenName(); public abstract void setTokenName(String tokenName); @Property(name = "serviceName") public abstract String getServiceName(); public abstract void setServiceName(String serviceName); @Property(name = "accessToken") public abstract String getAccessToken(); public abstract void setAccessToken(String accessToken); @Property(name = "tokenSecret") public abstract String getTokenSecret(); public abstract void setTokenSecret(String tokenSecret); @Property(name = "sessionHandle") public abstract String getSessionHandle(); public abstract void setSessionHandle(String sessionHandle); @Property(name = "tokenExpireMillis") public abstract long getTokenExpireMillis(); public abstract void setTokenExpireMillis(long tokenExpireMillis); @Destroy public abstract void remove(); public GadgetToken getToken() { return new GadgetToken(getAccessToken(), getTokenSecret(), getSessionHandle(), getTokenExpireMillis()); } }