
org.oasis_eu.spring.kernel.model.instance.ServiceCreated Maven / Gradle / Ivy
package org.oasis_eu.spring.kernel.model.instance;
import com.fasterxml.jackson.annotation.*;
import java.util.*;
/**
* User: schambon
* Date: 7/1/14
*/
@JsonInclude(JsonInclude.Include.NON_NULL)
public class ServiceCreated {
@JsonProperty("id")
private String id;
@JsonProperty("local_id")
private String identifier;
@JsonProperty("service_uri")
private String url;
@JsonProperty("visible")
private boolean visible = false;
@JsonProperty("name")
private String defaultName;
@JsonProperty("description")
private String defaultDescription;
@JsonProperty("icon")
private String defaultIcon;
private Map localizedNames = new HashMap<>();
private Map localizedDescriptions = new HashMap<>();
private Map localizedIcons = new HashMap<>();
@JsonProperty("notification_uri")
private String notificationUrl;
@JsonProperty("category_ids")
private List categoryIds = new ArrayList<>();
@JsonProperty("payment_option")
private PaymentOption paymentOption;
@JsonProperty("redirect_uris")
private List redirectUris;
@JsonProperty("post_logout_redirect_uris")
private List postLogoutRedirectUris;
@JsonProperty("target_audience")
private List targetAudience;
@JsonProperty("geographical_areas")
private List geographicalAreas;
@JsonProperty("provider_id")
private String providerId;
@JsonProperty("tos_uri")
private String defaultTosUri;
@JsonProperty("policy_uri")
private String defaultPolicyUri;
private Map localizedTosUris = new HashMap<>();
private Map localizedPolicyUris = new HashMap<>();
@JsonProperty("screenshot_uris")
private List screenshotUris = new ArrayList<>();
@JsonProperty("contacts")
private List contacts = new ArrayList<>();
@JsonProperty("subscription_uri")
private String subscriptionUri;
public String getIdentifier() {
return identifier;
}
public void setIdentifier(String identifier) {
this.identifier = identifier;
}
public String getDefaultName() {
return defaultName;
}
public void setDefaultName(String defaultName) {
this.defaultName = defaultName;
}
@JsonIgnore
public void setLocalizedNames(Map localizedNames) {
this.localizedNames = localizedNames;
}
public String getDefaultDescription() {
return defaultDescription;
}
public void setDefaultDescription(String defaultDescription) {
this.defaultDescription = defaultDescription;
}
@JsonIgnore
public void setLocalizedDescriptions(Map localizedDescriptions) {
this.localizedDescriptions = localizedDescriptions;
}
@JsonIgnore
public void setLocalizedIcons(Map localizedIcons) {
this.localizedIcons = localizedIcons;
}
@JsonAnySetter
public void setTranslation(String key, String value) {
if (key.startsWith("name#")) {
localizedNames.put(key.substring("name#".length()), value);
} else if (key.startsWith("description#")) {
localizedDescriptions.put(key.substring("description#".length()), value);
} else if (key.startsWith("icon#")) {
localizedIcons.put(key.substring("icon#".length()), value);
} else if (key.startsWith("tos_uri#")) {
localizedTosUris.put(key.substring("tos_uri#".length()), value);
} else if (key.startsWith("policy_uri#")) {
localizedPolicyUris.put(key.substring("policy_uri#".length()), value);
}
}
@JsonAnyGetter
public Map getTranslations() {
Map result = new HashMap<>();
localizedNames.entrySet().forEach(e -> result.put("name#" + e.getKey(), e.getValue()));
localizedDescriptions.entrySet().forEach(e -> result.put("description#" + e.getKey(), e.getValue()));
localizedIcons.entrySet().forEach(e -> result.put("icon#" + e.getKey(), e.getValue()));
localizedTosUris.entrySet().forEach(e -> result.put("tos_uri#" + e.getKey(), e.getValue()));
localizedPolicyUris.entrySet().forEach(e -> result.put("policy_uri#" + e.getKey(), e.getValue()));
return result;
}
public String getDefaultIcon() {
return defaultIcon;
}
public void setDefaultIcon(String defaultIcon) {
this.defaultIcon = defaultIcon;
}
public List getCategoryIds() {
return categoryIds;
}
public void setCategoryIds(List categoryIds) {
this.categoryIds = categoryIds;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getNotificationUrl() {
return notificationUrl;
}
public void setNotificationUrl(String notificationUrl) {
this.notificationUrl = notificationUrl;
}
public PaymentOption getPaymentOption() {
return paymentOption;
}
public void setPaymentOption(PaymentOption paymentOption) {
this.paymentOption = paymentOption;
}
public List getTargetAudience() {
return targetAudience;
}
public void setTargetAudience(List targetAudience) {
this.targetAudience = targetAudience;
}
public List getGeographicalAreas() {
return geographicalAreas;
}
public void setGeographicalAreas(List geographicalAreas) {
this.geographicalAreas = geographicalAreas;
}
public boolean isVisible() {
return visible;
}
public void setVisible(boolean visible) {
this.visible = visible;
}
public String getProviderId() {
return providerId;
}
public void setProviderId(String providerId) {
this.providerId = providerId;
}
public String getName(Locale locale) {
if (localizedNames.containsKey(locale.getLanguage())) {
return localizedNames.get(locale.getLanguage());
} else {
return defaultName;
}
}
public String getDescription(Locale locale) {
if (localizedDescriptions.containsKey(locale.getLanguage())) {
return localizedDescriptions.get(locale.getLanguage());
} else {
return defaultDescription;
}
}
public String getIcon(Locale locale) {
if (localizedIcons.containsKey(locale.getLanguage())) {
return localizedIcons.get(locale.getLanguage());
} else {
return defaultIcon;
}
}
public List getRedirectUris() {
return redirectUris;
}
public void setRedirectUris(List redirectUris) {
this.redirectUris = redirectUris;
}
public List getPostLogoutRedirectUris() {
return postLogoutRedirectUris;
}
public void setPostLogoutRedirectUris(List postLogoutRedirectUris) {
this.postLogoutRedirectUris = postLogoutRedirectUris;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getDefaultTosUri() {
return defaultTosUri;
}
public void setDefaultTosUri(String defaultTosUri) {
this.defaultTosUri = defaultTosUri;
}
public List getScreenshotUris() {
return screenshotUris;
}
public void setScreenshotUris(List screenshotUris) {
this.screenshotUris = screenshotUris;
}
public List getContacts() {
return contacts;
}
public void setContacts(List contacts) {
this.contacts = contacts;
}
public String getDefaultPolicyUri() {
return defaultPolicyUri;
}
public void setDefaultPolicyUri(String defaultPolicyUri) {
this.defaultPolicyUri = defaultPolicyUri;
}
public String getSubscriptionUri() {
return subscriptionUri;
}
public void setSubscriptionUri(String subscriptionUri) {
this.subscriptionUri = subscriptionUri;
}
public void setLocalizedTosUris(Map localizedTosUris) {
this.localizedTosUris = localizedTosUris;
}
public void setLocalizedPolicyUris(Map localizedPolicyUris) {
this.localizedPolicyUris = localizedPolicyUris;
}
@Override
public String toString() {
return "ServiceCreated{" +
"id='" + id + '\'' +
", identifier='" + identifier + '\'' +
", url='" + url + '\'' +
", visible=" + visible +
", defaultName='" + defaultName + '\'' +
", defaultDescription='" + defaultDescription + '\'' +
", defaultIcon='" + defaultIcon + '\'' +
", localizedNames=" + localizedNames +
", localizedDescriptions=" + localizedDescriptions +
", localizedIcons=" + localizedIcons +
", notificationUrl='" + notificationUrl + '\'' +
", categoryIds=" + categoryIds +
", paymentOption=" + paymentOption +
", redirectUris=" + redirectUris +
", postLogoutRedirectUris=" + postLogoutRedirectUris +
", targetAudience=" + targetAudience +
", geographicalAreas='" + geographicalAreas + '\'' +
", providerId='" + providerId + '\'' +
'}';
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy