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

com.hubspot.chrome.devtools.client.core.css.CSSRule Maven / Gradle / Ivy

package com.hubspot.chrome.devtools.client.core.css;

import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;

/**
 * CSS rule representation.
 */
public final class CSSRule {
  private StyleSheetId styleSheetId;

  private SelectorList selectorList;

  private StyleSheetOrigin origin;

  private CSSStyle style;

  private List media;

  @JsonCreator
  public CSSRule(@JsonProperty("styleSheetId") StyleSheetId styleSheetId,
      @JsonProperty("selectorList") SelectorList selectorList,
      @JsonProperty("origin") StyleSheetOrigin origin, @JsonProperty("style") CSSStyle style,
      @JsonProperty("media") List media) {
    this.styleSheetId = styleSheetId;
    this.selectorList = selectorList;
    this.origin = origin;
    this.style = style;
    this.media = media;
  }

  public StyleSheetId getStyleSheetId() {
    return styleSheetId;
  }

  public SelectorList getSelectorList() {
    return selectorList;
  }

  public StyleSheetOrigin getOrigin() {
    return origin;
  }

  public CSSStyle getStyle() {
    return style;
  }

  public List getMedia() {
    return media;
  }

  public static CSSRule.Builder builder() {
    return new CSSRule.Builder();
  }

  public static final class Builder {
    private StyleSheetId styleSheetId;

    private SelectorList selectorList;

    private StyleSheetOrigin origin;

    private CSSStyle style;

    private List media;

    private Builder() {
    }

    public CSSRule.Builder setStyleSheetId(StyleSheetId styleSheetId) {
      this.styleSheetId = styleSheetId;
      return this;
    }

    public CSSRule.Builder setSelectorList(SelectorList selectorList) {
      this.selectorList = selectorList;
      return this;
    }

    public CSSRule.Builder setOrigin(StyleSheetOrigin origin) {
      this.origin = origin;
      return this;
    }

    public CSSRule.Builder setStyle(CSSStyle style) {
      this.style = style;
      return this;
    }

    public CSSRule.Builder setMedia(List media) {
      this.media = media;
      return this;
    }

    public CSSRule build() {
      return new CSSRule(styleSheetId, selectorList, origin, style, media);
    }
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy