content: package com.airbnb.android.airmapview;
  
  import androidx.annotation.ColorInt;
  import com.google.maps.android.geojson.GeoJsonPolygonStyle;
  
  public class AirMapGeoJsonLayer {
    protected final String geoJson;
    protected final float strokeWidth;
    protected final int strokeColor;
    protected final int fillColor;
  
    private AirMapGeoJsonLayer(String geoJson, float strokeWidth, int strokeColor, int fillColor) {
      this.geoJson = geoJson;
      this.strokeWidth = strokeWidth;
      this.strokeColor = strokeColor;
      this.fillColor = fillColor;
    }
  
    public static class Builder {
  
      private final String json;
  
      // init with default styles
      private final GeoJsonPolygonStyle style = new GeoJsonPolygonStyle();
  
      public Builder(String json) {
        this.json = json;
      }
  
      public Builder fillColor(@ColorInt int color) {
        style.setFillColor(color);
        return this;
      }
  
      public Builder strokeColor(@ColorInt int color) {
        style.setStrokeColor(color);
        return this;
      }
  
      public Builder strokeWidth(float width) {
        style.setStrokeWidth(width);
        return this;
      }
  
      public AirMapGeoJsonLayer build() {
        return new AirMapGeoJsonLayer(
            json, style.getStrokeWidth(), style.getStrokeColor(), style.getFillColor());
      }
    }
  }
  