All Downloads are FREE. Search and download functionalities are using the official Maven repository.

brooklyn.rest.domain.PolicyConfigSummary Maven / Gradle / Ivy

The newest version!
package brooklyn.rest.domain;

import java.net.URI;
import java.util.Map;

import org.codehaus.jackson.annotate.JsonProperty;
import org.codehaus.jackson.map.annotate.JsonSerialize;
import org.codehaus.jackson.map.annotate.JsonSerialize.Inclusion;

import com.google.common.collect.ImmutableMap;

public class PolicyConfigSummary extends ConfigSummary {

  @JsonSerialize(include=Inclusion.NON_NULL)
  private final Map links;

  public PolicyConfigSummary(
      @JsonProperty("name") String name,
      @JsonProperty("type") String type,
      @JsonProperty("description") String description,
      @JsonProperty("defaultValue") Object defaultValue,
      @JsonProperty("reconfigurable") boolean reconfigurable,
      @JsonProperty("links") Map links
  ) {
    super(name, type, description, defaultValue, reconfigurable, null, null, null);
    this.links = links!=null ? ImmutableMap.copyOf(links) : null;
  }
  
  @Override
  public Map getLinks() {
    return links;
  }

  @Override
  public String toString() {
    return "PolicyConfigSummary{" +
        "name='" + getName() + '\'' +
        ", type='" + getType() + '\'' +
        '}';
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy