blob: af70ffa2326c126606dc26b42472c5e80fb45bbb [file] [log] [blame]
// SPDX-License-Identifier: LGPL-2.1-or-later
// Copyright (c) 2012-2014 Monty Program Ab
// Copyright (c) 2015-2021 MariaDB Corporation Ab
package org.mariadb.jdbc.type;
import java.util.Arrays;
/** Geometry collection implementation */
public class GeometryCollection implements Geometry {
private final Geometry[] geometries;
/**
* Constructor
*
* @param geometries geometry array
*/
public GeometryCollection(Geometry[] geometries) {
this.geometries = geometries;
}
/**
* Get objects
*
* @return geometry array
*/
public Geometry[] getGeometries() {
return geometries;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder("GEOMETRYCOLLECTION(");
int indexpoly = 0;
for (Geometry geo : geometries) {
if (indexpoly++ > 0) {
sb.append(",");
}
sb.append(geo.toString());
}
sb.append(")");
return sb.toString();
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || !(o instanceof GeometryCollection)) return false;
return toString().equals(o.toString());
}
@Override
public int hashCode() {
return Arrays.hashCode(geometries);
}
}