code: public static Polygon polygon(final Point... points) {
          LineString exteriorBoundary = lineString(points);
          ensurePolygonIsClosed(exteriorBoundary);
          return new Polygon(exteriorBoundary);
      }
docs: Create a new Polygon representing a GeoJSON Polygon type. This helper method uses {@link #polygon(LineString, LineString...)} to
  create the Polygon.  If you need to create Polygons with interior rings (holes), use that method.
  
  @param points an ordered series of Points that make up the polygon.  The first and last points should be the same to close the
  polygon
  @return a Polygon as defined by the points.
  @throws java.lang.IllegalArgumentException if the start and end points are not the same
  @mongodb.server.release 2.4
  @see dev.morphia.geo.GeoJson#polygon(LineString, LineString...)
  @see <a href="http://docs.mongodb.org/manual/apps/geospatial-indexes/#geojson-objects">GeoJSON</a>