001    package com.google.gwt.maps.client.layers;
002    
003    import com.google.gwt.core.client.JavaScriptObject;
004    
005    /**
006     * Metadata for a single KML layer, in JSON format.
007     * <br><br>
008     * See <a href="https://developers.google.com/maps/documentation/javascript/reference#KmlLayerMetadata">KmlLayerMetadata API Doc</a>
009     */
010    public class KmlLayerMetadata extends JavaScriptObject {
011      
012      /**
013       * use newInstance();
014       */
015      protected KmlLayerMetadata() {}
016    
017      /**
018       * Metadata for a single KML layer, in JSON format.
019       */
020      public static final KmlLayerMetadata newInstance() {
021        return JavaScriptObject.createObject().cast();
022      }
023      
024      /**
025       * The layer's <atom:author>, extracted from the layer markup.
026       * @param author
027       */
028      public final native void setAuthor(KmlAuthor author) /*-{
029        this.author = author;
030      }-*/;
031      
032      /**
033       * The layer's <atom:author>, extracted from the layer markup.
034       */
035      public final native KmlAuthor getAuthor() /*-{
036        return this.author;
037      }-*/;
038      
039      /**
040       * The layer's <description>, extracted from the layer markup.
041       * @param description
042       */
043      public final native void setDescription(String description) /*-{
044        this.description = description;
045      }-*/;
046      
047      /**
048       * The layer's <description>, extracted from the layer markup.
049       */
050      public final native String getDescription() /*-{
051        return this.description;
052      }-*/;
053      
054      /**
055       * The layer's <name>, extracted from the layer markup.
056       * @param name
057       */
058      public final native void setName(String name) /*-{
059        this.name = name;
060      }-*/;
061      
062      /**
063       * The layer's <name>, extracted from the layer markup.
064       */
065      public final native String getName() /*-{
066        return this.name;
067      }-*/;
068      
069      /**
070       * The layer's <Snippet>, extracted from the layer markup
071       * @param snippet
072       */
073      public final native void setSnippet(String snippet) /*-{
074        this.snippet = snippet;
075      }-*/;
076      
077      /**
078       * The layer's <Snippet>, extracted from the layer markup
079       */
080      public final native String getSnippet() /*-{
081        return this.snippet;
082      }-*/;
083      
084    }