diff --git a/src/main/java/in/succinct/beckn/Subscriber.java b/src/main/java/in/succinct/beckn/Subscriber.java index fb4835e..8d75ac5 100644 --- a/src/main/java/in/succinct/beckn/Subscriber.java +++ b/src/main/java/in/succinct/beckn/Subscriber.java @@ -1,15 +1,17 @@ package in.succinct.beckn; -import com.venky.core.util.ObjectUtil; -import org.json.simple.JSONArray; -import org.json.simple.JSONObject; - import java.util.Collections; import java.util.Date; import java.util.HashSet; import java.util.Set; -public class Subscriber extends BecknObject{ +import org.json.simple.JSONArray; +import org.json.simple.JSONObject; + +import com.venky.core.util.ObjectUtil; + +public class Subscriber extends BecknObject { + public static final String SUBSCRIBER_TYPE_BAP = "BAP"; public static final String SUBSCRIBER_TYPE_BPP = "BPP"; public static final String SUBSCRIBER_TYPE_LOCAL_REGISTRY = "LREG"; @@ -22,24 +24,27 @@ public class Subscriber extends BecknObject{ public static final String SUBSCRIBER_STATUS_INVALID_SSL = "INVALID_SSL"; public static final String SUBSCRIBER_STATUS_UNSUBSCRIBED = "UNSUBSCRIBED"; - public static final String[] BPP_ACTIONS = new String[]{"search", "select", "init", "confirm", "track", "issue", "issue_status", - "cancel", "update", "status", "rating", "support","get_cancellation_reasons","get_return_reasons","get_rating_categories","get_feedback_categories"}; + "cancel", "update", "status", "rating", "support", "get_cancellation_reasons", "get_return_reasons", "get_rating_categories", "get_feedback_categories"}; - public static final Set BPP_ACTION_SET = Collections.unmodifiableSet(new HashSet<>(){{ - for (String action: BPP_ACTIONS){ - add(action); + public static final Set BPP_ACTION_SET = Collections.unmodifiableSet(new HashSet<>() { + { + for (String action : BPP_ACTIONS) { + add(action); + } } - }}); + }); - public static final String[] BAP_ACTIONS = new String[]{"on_search", "on_select", "on_init", "on_confirm", "on_track", "on_issue","on_issue_status", - "on_cancel", "on_update", "on_status", "on_rating", "on_support","cancellation_reasons","return_reasons","rating_categories","feedback_categories"}; + public static final String[] BAP_ACTIONS = new String[]{"on_search", "on_select", "on_init", "on_confirm", "on_track", "on_issue", "on_issue_status", + "on_cancel", "on_update", "on_status", "on_rating", "on_support", "cancellation_reasons", "return_reasons", "rating_categories", "feedback_categories"}; - public static final Set BAP_ACTION_SET = Collections.unmodifiableSet(new HashSet<>(){{ - for (String action: BAP_ACTIONS){ - add(action); + public static final Set BAP_ACTION_SET = Collections.unmodifiableSet(new HashSet<>() { + { + for (String action : BAP_ACTIONS) { + add(action); + } } - }}); + }); public Subscriber() { } @@ -52,179 +57,213 @@ public Subscriber(JSONObject object) { super(object); } - - public String getCountry(){ + public String getCountry() { return get("country"); } - public void setCountry(String country){ - set("country",country); + + public void setCountry(String country) { + set("country", country); } - public String getCity(){ + + public String getCity() { return get("city"); } - public void setCity(String city){ - set("city",city); + + public void setCity(String city) { + set("city", city); } - public String getDomain(){ + public String getDomain() { return get("domain"); } - public void setDomain(String domain){ - set("domain",domain); + + public void setDomain(String domain) { + set("domain", domain); } - public String getStatus(){ + + public String getStatus() { return get("status"); } - public void setStatus(String status){ - set("status",status); + + public void setStatus(String status) { + set("status", status); } - public String getType(){ + public String getType() { return get("type"); } - public void setType(String type){ - set("type",type); + + public void setType(String type) { + set("type", type); } - public String getSubscriberId(){ + public String getSubscriberId() { return get("subscriber_id"); } - public void setSubscriberId(String subscriber_id){ - set("subscriber_id",subscriber_id); + + public void setSubscriberId(String subscriber_id) { + set("subscriber_id", subscriber_id); } - public String getSubscriberUrl(){ + public String getSubscriberUrl() { return get("subscriber_url"); } - public void setSubscriberUrl(String subscriber_url){ - set("subscriber_url",subscriber_url); + + public void setSubscriberUrl(String subscriber_url) { + set("subscriber_url", subscriber_url); } - public String getUniqueKeyId(){ + public String getUniqueKeyId() { return get("unique_key_id"); } - public void setUniqueKeyId(String unique_key_id){ - set("unique_key_id",unique_key_id); + + public void setUniqueKeyId(String unique_key_id) { + set("unique_key_id", unique_key_id); } - public String getPubKeyId(){ + public String getPubKeyId() { return getUniqueKeyId(); } - public void setPubKeyId(String pub_key_id){ + + public void setPubKeyId(String pub_key_id) { setUniqueKeyId(pub_key_id); } - public String getSigningPublicKey(){ + public String getSigningPublicKey() { return get("signing_public_key"); } - public void setSigningPublicKey(String signing_public_key){ - set("signing_public_key",signing_public_key); + + public void setSigningPublicKey(String signing_public_key) { + set("signing_public_key", signing_public_key); } - public String getEncrPublicKey(){ + + public String getEncrPublicKey() { return get("encr_public_key"); } - public void setEncrPublicKey(String encr_public_key){ - set("encr_public_key",encr_public_key); + + public void setEncrPublicKey(String encr_public_key) { + set("encr_public_key", encr_public_key); } - public String getNonce(){ + public String getNonce() { return get("nonce"); } - public void setNonce(String nonce){ - set("nonce",nonce); + + public void setNonce(String nonce) { + set("nonce", nonce); } - public Date getValidFrom(){ + public Date getValidFrom() { return getTimestamp("valid_from"); } - public void setValidFrom(Date valid_from){ - set("valid_from",valid_from,TIMESTAMP_FORMAT); + + public void setValidFrom(Date valid_from) { + set("valid_from", valid_from, TIMESTAMP_FORMAT); } - public Date getValidTo(){ + + public Date getValidTo() { return getTimestamp("valid_until"); } - public void setValidTo(Date valid_to){ - set("valid_until",valid_to,TIMESTAMP_FORMAT); + + public void setValidTo(Date valid_to) { + set("valid_until", valid_to, TIMESTAMP_FORMAT); } - public Date getCreated(){ + public Date getCreated() { return getTimestamp("created"); } - public void setCreated(Date created){ - set("created",created,TIMESTAMP_FORMAT); + + public void setCreated(Date created) { + set("created", created, TIMESTAMP_FORMAT); } - public Date getUpdated(){ + + public Date getUpdated() { return getTimestamp("updated"); } - public void setUpdated(Date updated){ - set("updated",updated,TIMESTAMP_FORMAT); + + public void setUpdated(Date updated) { + set("updated", updated, TIMESTAMP_FORMAT); + } + + public Date getLastInteraction() { + return getTimestamp("last_interaction"); } - public Set getSupportedActions(){ - if (ObjectUtil.equals(getType(),Subscriber.SUBSCRIBER_TYPE_BAP)){ + public void setLastInteraction(Date lastInteraction) { + set("last_interaction", lastInteraction, TIMESTAMP_FORMAT); + } + + public Set getSupportedActions() { + if (ObjectUtil.equals(getType(), Subscriber.SUBSCRIBER_TYPE_BAP)) { return BAP_ACTION_SET; - }else { + } else { return BPP_ACTION_SET; } } - public Location getLocation(){ + public Location getLocation() { return get(Location.class, "location"); } - public void setLocation(Location location){ - set("location",location); + + public void setLocation(Location location) { + set("location", location); } - public boolean isExtendedAttributesDisplayed(){ + public boolean isExtendedAttributesDisplayed() { return true; } - public String getAlias(){ - return extendedAttributes.get("alias",getUniqueKeyId()); + + public String getAlias() { + return extendedAttributes.get("alias", getUniqueKeyId()); } - public void setAlias(String alias){ - extendedAttributes.set("alias",alias); + + public void setAlias(String alias) { + extendedAttributes.set("alias", alias); } - public Organization getOrganization(){ + public Organization getOrganization() { return extendedAttributes.get(Organization.class, "organization"); } - public void setOrganization(Organization organization){ - extendedAttributes.set("organization",organization); + + public void setOrganization(Organization organization) { + extendedAttributes.set("organization", organization); } public JSONObject getInner(boolean includeExtended) { JSONObject inner = new JSONObject(); inner.putAll(super.getInner()); - if (!includeExtended){ + if (!includeExtended) { inner.remove("extended_attributes"); } return inner; } - public Request getSubscribeRequest(){ + public Request getSubscribeRequest() { return extendedAttributes.get(Request.class, "request"); } - public void setSubscribeRequest(Request request){ - extendedAttributes.set("request",request); + + public void setSubscribeRequest(Request request) { + extendedAttributes.set("request", request); } - public boolean isMsn(){ + public boolean isMsn() { return extendedAttributes.getBoolean("msn"); } - public void setMsn(boolean msn){ - extendedAttributes.set("msn",msn); - } + public void setMsn(boolean msn) { + extendedAttributes.set("msn", msn); + } - public Domains getDomains(){ + public Domains getDomains() { return extendedAttributes.get(Domains.class, "domains"); } - public void setDomains(Domains domains){ - extendedAttributes.set("domains",domains); + + public void setDomains(Domains domains) { + extendedAttributes.set("domains", domains); } + public static class Domains extends BecknObjects { - public static class Domains extends BecknObjects{ public Domains() { } @@ -237,5 +276,4 @@ public Domains(String payload) { } } - }