public class Renamer extends Mutation
package my.package;
// The old class. Version 0 is implied.
//
@Entity
class Person {
String name;
}
// The new class. A new version number must be assigned.
//
@Entity(version=1)
class Human {
String fullName;
}
// Add the mutations.
//
Mutations mutations = new Mutations();
mutations.addRenamer(new Renamer("my.package.Person", 0,
Human.class.getName()));
mutations.addRenamer(new Renamer("my.package.Person", 0,
"name", "fullName"));
// Configure the mutations as described here
.
In a replicated environment, renaming an entity class or secondary key
field may require handling the DatabasePreemptedException
during the upgrade process.
See
Upgrading a Replication Group
for more information.
Class Evolution
,
Serialized FormConstructor and Description |
---|
Renamer(String fromClass,
int fromVersion,
String toClass)
Creates a mutation for renaming the class of all instances of the given
class version.
|
Renamer(String declaringClass,
int declaringClassVersion,
String fromField,
String toField)
Creates a mutation for renaming the given field for all instances of the
given class version.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object other)
Returns true if the new class name is equal in this object and given
object, and if the
Mutation.equals(java.lang.Object) method returns true. |
String |
getNewName()
Returns the new class or field name specified in the constructor.
|
int |
hashCode() |
String |
toString() |
getClassName, getClassVersion, getFieldName
public Renamer(String fromClass, int fromVersion, String toClass)
public String getNewName()
public boolean equals(Object other)
Mutation.equals(java.lang.Object)
method returns true.Copyright (c) 2002, 2015 Oracle and/or its affiliates. All rights reserved.