mirror of
https://github.com/ebean-orm/ebean.git
synced 2024-04-21 10:51:47 +00:00
Add support for Postgres range partition DDL plus refactor xsd definitions that had got out of sync (#1465)
* Add partition meta mapping * Fix to allow schema prefix on select dynamic formula * Add partition meta mapping * Migration XSD Update * Fix to allow schema prefix on select dynamic formula * Bump ebean-migration to 11.8.1
This commit is contained in:
@@ -1,11 +1,12 @@
|
||||
package io.ebeaninternal.dbmigration.model;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Objects;
|
||||
|
||||
import io.ebeaninternal.dbmigration.ddlgeneration.platform.DdlHelp;
|
||||
import io.ebeaninternal.dbmigration.migration.AddUniqueConstraint;
|
||||
import io.ebeaninternal.dbmigration.migration.UniqueConstraint;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* A unique constraint for multiple columns.
|
||||
* <p>
|
||||
@@ -26,13 +27,13 @@ public class MCompoundUniqueConstraint {
|
||||
* The columns combined to be unique.
|
||||
*/
|
||||
private final String[] columns;
|
||||
|
||||
|
||||
private String[] nullableColumns;
|
||||
|
||||
public MCompoundUniqueConstraint(String[] columns, boolean oneToOne, String name) {
|
||||
public MCompoundUniqueConstraint(String[] columns, Boolean oneToOne, String name) {
|
||||
this.name = name;
|
||||
this.columns = columns;
|
||||
this.oneToOne = oneToOne;
|
||||
this.oneToOne = Boolean.TRUE.equals(oneToOne);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -55,6 +56,7 @@ public class MCompoundUniqueConstraint {
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public UniqueConstraint getUniqueConstraint() {
|
||||
UniqueConstraint uq = new UniqueConstraint();
|
||||
uq.setName(getName());
|
||||
@@ -63,6 +65,7 @@ public class MCompoundUniqueConstraint {
|
||||
uq.setOneToOne(isOneToOne());
|
||||
return uq;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a AddUniqueConstraint migration for this constraint.
|
||||
*/
|
||||
@@ -87,7 +90,7 @@ public class MCompoundUniqueConstraint {
|
||||
dropUniqueConstraint.setNullableColumns(join(nullableColumns));
|
||||
return dropUniqueConstraint;
|
||||
}
|
||||
|
||||
|
||||
public void setNullableColumns(String[] nullableColumns) {
|
||||
if (nullableColumns != null && nullableColumns.length == 0) {
|
||||
this.nullableColumns = null;
|
||||
@@ -109,12 +112,12 @@ public class MCompoundUniqueConstraint {
|
||||
}
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return Arrays.hashCode(columns) + 31 * Objects.hash(name, oneToOne);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public boolean equals(Object obj) {
|
||||
if (obj == this) {
|
||||
@@ -125,8 +128,8 @@ public class MCompoundUniqueConstraint {
|
||||
}
|
||||
MCompoundUniqueConstraint other = (MCompoundUniqueConstraint) obj;
|
||||
return Arrays.equals(columns, other.columns)
|
||||
&& Arrays.equals(nullableColumns, other.nullableColumns)
|
||||
&& Objects.equals(name, other.name)
|
||||
&& oneToOne == other.oneToOne;
|
||||
&& Arrays.equals(nullableColumns, other.nullableColumns)
|
||||
&& Objects.equals(name, other.name)
|
||||
&& oneToOne == other.oneToOne;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user