#2350 - Rename Database.getBeanState() to beanState() with deprecation

This commit is contained in:
rbygrave committed 2021-09-03 09:55:48 +12:00
1 parent 921ee9f8a1
commit 8cb43788dc
17 files changed
+65 -49

No files matched your search

+9 -1
View File
@@ -1239,8 +1239,16 @@ public final class DB {
* This will return null if the bean is not an enhanced entity bean. * This will return null if the bean is not an enhanced entity bean.
* </p> * </p>
*/ */
public static BeanState beanState(Object bean) {
return getDefault().beanState(bean);
}
/**
* Deprecated migrate to beanState().
*/
@Deprecated
public static BeanState getBeanState(Object bean) { public static BeanState getBeanState(Object bean) {
return getDefault().getBeanState(bean); return beanState(bean);
} }
/** /**
@@ -243,7 +243,15 @@ public interface Database {
* This will return null if the bean is not an enhanced entity bean. * This will return null if the bean is not an enhanced entity bean.
* </p> * </p>
*/ */
BeanState getBeanState(Object bean); BeanState beanState(Object bean);
/**
* Deprecated migrate to beanState().
*/
@Deprecated
default BeanState getBeanState(Object bean) {
return beanState(bean);
}
/** /**
* Return the value of the Id property for a given bean. * Return the value of the Id property for a given bean.
+1 -1
View File
@@ -1201,7 +1201,7 @@ public final class Ebean {
* </p> * </p>
*/ */
public static BeanState getBeanState(Object bean) { public static BeanState getBeanState(Object bean) {
return getDefault().getBeanState(bean); return getDefault().beanState(bean);
} }
/** /**
@@ -519,7 +519,7 @@ public final class DefaultServer implements SpiServer, SpiEbeanServer {
} }
@Override @Override
public BeanState getBeanState(Object bean) { public BeanState beanState(Object bean) {
if (bean instanceof EntityBean) { if (bean instanceof EntityBean) {
return new DefaultBeanState((EntityBean) bean); return new DefaultBeanState((EntityBean) bean);
} }
@@ -40,10 +40,10 @@ public class EbeanServer_refresh {
assertEquals(rows, 1); assertEquals(rows, 1);
basic.setName("modify"); basic.setName("modify");
assertTrue(DB.getBeanState(basic).isDirty()); assertTrue(DB.beanState(basic).isDirty());
server.refresh(basic); server.refresh(basic);
assertEquals(basic.getStatus(), EBasic.Status.ACTIVE); assertEquals(basic.getStatus(), EBasic.Status.ACTIVE);
assertFalse(DB.getBeanState(basic).isDirty()); assertFalse(DB.beanState(basic).isDirty());
} }
@Test @Test
@@ -91,7 +91,7 @@ public class BeanPostLoadTest extends BaseTestCase {
public void postLoad(Object bean) { public void postLoad(Object bean) {
this.methodsCalled.add("postLoad"); this.methodsCalled.add("postLoad");
this.bean = bean; this.bean = bean;
this.beanState = DB.getBeanState(bean); this.beanState = DB.beanState(bean);
} }
} }
@@ -363,7 +363,7 @@ public class TDSpiEbeanServer implements SpiEbeanServer {
} }
@Override @Override
public BeanState getBeanState(Object bean) { public BeanState beanState(Object bean) {
return null; return null;
} }
@@ -30,31 +30,31 @@ public class BeanDescriptorTest extends BaseTestCase {
Customer bean = customerDesc.createReference(null, false, 42, null); Customer bean = customerDesc.createReference(null, false, 42, null);
assertThat(bean.getId()).isEqualTo(42); assertThat(bean.getId()).isEqualTo(42);
assertThat(server().getBeanState(bean).isReadOnly()).isFalse(); assertThat(server().beanState(bean).isReadOnly()).isFalse();
} }
@Test @Test
public void createReference_whenReadOnly() { public void createReference_whenReadOnly() {
Customer bean = customerDesc.createReference(Boolean.TRUE, false, 42, null); Customer bean = customerDesc.createReference(Boolean.TRUE, false, 42, null);
assertThat(server().getBeanState(bean).isReadOnly()).isTrue(); assertThat(server().beanState(bean).isReadOnly()).isTrue();
} }
@Test @Test
public void createReference_whenNotReadOnly() { public void createReference_whenNotReadOnly() {
Customer bean = customerDesc.createReference(Boolean.FALSE, false, 42, null); Customer bean = customerDesc.createReference(Boolean.FALSE, false, 42, null);
assertThat(server().getBeanState(bean).isReadOnly()).isFalse(); assertThat(server().beanState(bean).isReadOnly()).isFalse();
bean = customerDesc.createReference(42, null); bean = customerDesc.createReference(42, null);
assertThat(server().getBeanState(bean).isReadOnly()).isFalse(); assertThat(server().beanState(bean).isReadOnly()).isFalse();
} }
@Test @Test
public void createReference_when_disabledLazyLoad() { public void createReference_when_disabledLazyLoad() {
Customer bean = customerDesc.createReference(Boolean.FALSE, true, 42, null); Customer bean = customerDesc.createReference(Boolean.FALSE, true, 42, null);
assertThat(server().getBeanState(bean).isDisableLazyLoad()).isTrue(); assertThat(server().beanState(bean).isDisableLazyLoad()).isTrue();
} }
@Test @Test
@@ -29,7 +29,7 @@ public class TestDynamicUpdate extends BaseTestCase {
b2.getEmbeddable().setDescription("ABC"); b2.getEmbeddable().setDescription("ABC");
BeanState beanState = server.getBeanState(b2); BeanState beanState = server.beanState(b2);
boolean dirty = beanState.isDirty(); boolean dirty = beanState.isDirty();
Assert.assertTrue(dirty); Assert.assertTrue(dirty);
@@ -30,15 +30,15 @@ public class TestReadOnlyPropagation extends BaseTestCase {
.setId(1) .setId(1)
.findOne(); .findOne();
Assert.assertTrue(DB.getBeanState(order).isReadOnly()); Assert.assertTrue(DB.beanState(order).isReadOnly());
Customer customer = order.getCustomer(); Customer customer = order.getCustomer();
Assert.assertTrue(DB.getBeanState(customer).isReadOnly()); Assert.assertTrue(DB.beanState(customer).isReadOnly());
Address billingAddress = customer.getBillingAddress(); Address billingAddress = customer.getBillingAddress();
assertNotNull(billingAddress); assertNotNull(billingAddress);
Assert.assertTrue(DB.getBeanState(billingAddress).isReadOnly()); Assert.assertTrue(DB.beanState(billingAddress).isReadOnly());
List<OrderDetail> details = order.getDetails(); List<OrderDetail> details = order.getDetails();
@@ -30,7 +30,7 @@ public class TestTransient extends BaseTestCase {
assertNotNull(c); assertNotNull(c);
BeanState beanState = DB.getBeanState(c); BeanState beanState = DB.beanState(c);
assertFalse("not new or dirty as transient", beanState.isNewOrDirty()); assertFalse("not new or dirty as transient", beanState.isNewOrDirty());
c.getLock().tryLock(); c.getLock().tryLock();
@@ -29,7 +29,7 @@ public class TestBeanState extends BaseTestCase {
.setUseCache(false) .setUseCache(false)
.findOne(); .findOne();
BeanState beanState = DB.getBeanState(customer); BeanState beanState = DB.beanState(customer);
assertFalse(beanState.isNew()); assertFalse(beanState.isNew());
assertFalse(beanState.isDirty()); assertFalse(beanState.isDirty());
assertFalse(beanState.isNewOrDirty()); assertFalse(beanState.isNewOrDirty());
@@ -67,7 +67,7 @@ public class TestBeanState extends BaseTestCase {
.setUseCache(false) .setUseCache(false)
.findOne(); .findOne();
BeanState beanState = DB.getBeanState(customer); BeanState beanState = DB.beanState(customer);
beanState.setDisableLazyLoad(true); beanState.setDisableLazyLoad(true);
assertNull(customer.getName()); assertNull(customer.getName());
} }
@@ -79,7 +79,7 @@ public class TestBeanState extends BaseTestCase {
Customer customer = DB.find(Customer.class).order("id").setMaxRows(1).findOne(); Customer customer = DB.find(Customer.class).order("id").setMaxRows(1).findOne();
BeanState beanState = DB.getBeanState(customer); BeanState beanState = DB.beanState(customer);
assertThat(beanState.getChangedProps()).isEmpty(); assertThat(beanState.getChangedProps()).isEmpty();
customer.setContacts(new ArrayList<>()); customer.setContacts(new ArrayList<>());
@@ -91,7 +91,7 @@ public class TestBeanState extends BaseTestCase {
Customer customer = new Customer(); Customer customer = new Customer();
BeanState beanState = DB.getBeanState(customer); BeanState beanState = DB.beanState(customer);
assertThat(beanState.getChangedProps()).isEmpty(); assertThat(beanState.getChangedProps()).isEmpty();
// when new state, then loaded // when new state, then loaded
@@ -112,7 +112,7 @@ public class TestBeanState extends BaseTestCase {
Customer customer = new Customer(); Customer customer = new Customer();
customer.setContacts(new ArrayList<>()); customer.setContacts(new ArrayList<>());
BeanState beanState = DB.getBeanState(customer); BeanState beanState = DB.beanState(customer);
beanState.setLoaded(); beanState.setLoaded();
beanState.setReadOnly(true); beanState.setReadOnly(true);
@@ -127,7 +127,7 @@ public class TestBeanState extends BaseTestCase {
Customer customer = new Customer(); Customer customer = new Customer();
customer.setName("a"); customer.setName("a");
BeanState beanState = DB.getBeanState(customer); BeanState beanState = DB.beanState(customer);
beanState.setLoaded(); beanState.setLoaded();
beanState.setReadOnly(true); beanState.setReadOnly(true);
@@ -227,7 +227,7 @@ public class TestQueryCache extends BaseTestCase {
Assert.assertTrue(bc.isReadOnly()); Assert.assertTrue(bc.isReadOnly());
Assert.assertFalse(bc.isEmpty()); Assert.assertFalse(bc.isEmpty());
Assert.assertTrue(!list.isEmpty()); Assert.assertTrue(!list.isEmpty());
Assert.assertTrue(DB.getBeanState(list.get(0)).isReadOnly()); Assert.assertTrue(DB.beanState(list.get(0)).isReadOnly());
List<Customer> list2 = DB.find(Customer.class).setUseQueryCache(true).setReadOnly(true).where() List<Customer> list2 = DB.find(Customer.class).setUseQueryCache(true).setReadOnly(true).where()
.ilike("name", "Rob").findList(); .ilike("name", "Rob").findList();
@@ -92,7 +92,7 @@ public class TestDbJson_Jackson3 extends BaseTestCase {
found.setName("p1-mod"); found.setName("p1-mod");
found.setBeanList(null); found.setBeanList(null);
BeanState state = DB.getBeanState(found); BeanState state = DB.beanState(found);
assertThat(state.getChangedProps()).containsExactlyInAnyOrder("name", "beanList"); assertThat(state.getChangedProps()).containsExactlyInAnyOrder("name", "beanList");
ValuePair pair = state.getDirtyValues().get("name"); ValuePair pair = state.getDirtyValues().get("name");
@@ -115,12 +115,12 @@ public class TestDbJson_Jackson3 extends BaseTestCase {
.extracting(Map.Entry::toString) .extracting(Map.Entry::toString)
.containsExactlyInAnyOrder("beanList=null,[name:a]","name=p1-mod,p1","version=2,1"); .containsExactlyInAnyOrder("beanList=null,[name:a]","name=p1-mod,p1","version=2,1");
assertThat(DB.getBeanState(found).isDirty()).isFalse(); assertThat(DB.beanState(found).isDirty()).isFalse();
found.getPlainBean().setName("b"); found.getPlainBean().setName("b");
assertThat(DB.getBeanState(found).isDirty()).isTrue(); assertThat(DB.beanState(found).isDirty()).isTrue();
state = DB.getBeanState(found); state = DB.beanState(found);
assertThat(state.getChangedProps()).containsExactlyInAnyOrder("plainBean"); assertThat(state.getChangedProps()).containsExactlyInAnyOrder("plainBean");
pair = state.getDirtyValues().get("plainBean"); pair = state.getDirtyValues().get("plainBean");
assertThat(pair.getNewValue()).hasToString("name:b"); assertThat(pair.getNewValue()).hasToString("name:b");
@@ -153,7 +153,7 @@ public class TestDbJson_Jackson3 extends BaseTestCase {
final EBasicJsonList found = DB.find(EBasicJsonList.class, bean.getId()); final EBasicJsonList found = DB.find(EBasicJsonList.class, bean.getId());
found.getBeanList().get(0).setName("p1-mod"); found.getBeanList().get(0).setName("p1-mod");
BeanState state = DB.getBeanState(found); BeanState state = DB.beanState(found);
assertThat(state.getChangedProps()).containsExactlyInAnyOrder("beanList"); assertThat(state.getChangedProps()).containsExactlyInAnyOrder("beanList");
} }
@@ -169,7 +169,7 @@ public class TestDbJson_Jackson3 extends BaseTestCase {
bean.setPlainValue2(contentBean2); bean.setPlainValue2(contentBean2);
bean.setPlainValue3(contentBean3); bean.setPlainValue3(contentBean3);
BeanState state = DB.getBeanState(bean); BeanState state = DB.beanState(bean);
// a new bean is not considered as dirty (thus have no changed props) // a new bean is not considered as dirty (thus have no changed props)
assertThat(state.isDirty()).isFalse(); assertThat(state.isDirty()).isFalse();
assertThat(state.isNewOrDirty()).isTrue(); assertThat(state.isNewOrDirty()).isTrue();
@@ -178,7 +178,7 @@ public class TestDbJson_Jackson3 extends BaseTestCase {
bean.save(); bean.save();
bean = DB.find(EBasicJsonJackson3.class, bean.getId()); bean = DB.find(EBasicJsonJackson3.class, bean.getId());
state = DB.getBeanState(bean); state = DB.beanState(bean);
// a fresh loaded bean is also not considered as dirty // a fresh loaded bean is also not considered as dirty
assertThat(state.isDirty()).isFalse(); assertThat(state.isDirty()).isFalse();
assertThat(state.isNewOrDirty()).isFalse(); assertThat(state.isNewOrDirty()).isFalse();
@@ -222,19 +222,19 @@ public class TestDbJson_Jackson3 extends BaseTestCase {
LoggedSql.stop(); LoggedSql.stop();
} }
@Test @Test
public void push_pop_test() { public void push_pop_test() {
EBasicJsonMulti bean = new EBasicJsonMulti(); EBasicJsonMulti bean = new EBasicJsonMulti();
bean.setPlainValue2(new PlainBeanDirtyAware("x", 42)); bean.setPlainValue2(new PlainBeanDirtyAware("x", 42));
bean.save(); bean.save();
bean = DB.find(EBasicJsonMulti.class, bean.getId()); bean = DB.find(EBasicJsonMulti.class, bean.getId());
bean.setPlainValue1(null); // already null bean.setPlainValue1(null); // already null
bean.setPlainValue2(null); bean.setPlainValue2(null);
bean.setPlainValue3(null); // already null bean.setPlainValue3(null); // already null
BeanState state = DB.getBeanState(bean); BeanState state = DB.beanState(bean);
assertThat(state.getDirtyValues()).hasSize(1).containsKey("plainValue2"); assertThat(state.getDirtyValues()).hasSize(1).containsKey("plainValue2");
} }
@@ -216,7 +216,7 @@ public class TestDbJson_List extends BaseTestCase {
.setAllowLoadErrors() // allow invalid JSON content .setAllowLoadErrors() // allow invalid JSON content
.findOne(); .findOne();
Map<String, Exception> errors = server().getBeanState(bean).getLoadErrors(); Map<String, Exception> errors = server().beanState(bean).getLoadErrors();
assertThat(errors).containsKey("beanMap").hasSize(1); assertThat(errors).containsKey("beanMap").hasSize(1);
assertThat(errors.values().iterator().next()) assertThat(errors.values().iterator().next())
@@ -18,8 +18,8 @@ import java.util.Set;
public class TestOldValue extends BaseTestCase { public class TestOldValue extends BaseTestCase {
@SuppressWarnings({ "rawtypes", "unchecked" }) @SuppressWarnings({ "rawtypes", "unchecked" })
@Test @Test
public void testDbJsonOldValue() throws Exception { public void testDbJsonOldValue() throws Exception {
@@ -35,9 +35,9 @@ public class TestOldValue extends BaseTestCase {
bean.getIntList().add(2); bean.getIntList().add(2);
bean.getIntSet().add(1002); bean.getIntSet().add(1002);
bean.getIntMap().put("ik1",2002); bean.getIntMap().put("ik1",2002);
bean.setJsonNode(jnf.arrayNode().add("Foo")); bean.setJsonNode(jnf.arrayNode().add("Foo"));
DB.save(bean); DB.save(bean);
bean = DB.find(EBasicOldValue.class, bean.getId()); bean = DB.find(EBasicOldValue.class, bean.getId());
@@ -51,8 +51,8 @@ public class TestOldValue extends BaseTestCase {
bean.getIntSet().add(1006); bean.getIntSet().add(1006);
bean.getIntMap().put("ik2",2006); bean.getIntMap().put("ik2",2006);
((ArrayNode)bean.getJsonNode()).add("Bar"); ((ArrayNode)bean.getJsonNode()).add("Bar");
Map<String, ValuePair> dirty = DB.getBeanState(bean).getDirtyValues(); Map<String, ValuePair> dirty = DB.beanState(bean).getDirtyValues();
SoftAssertions softly = new SoftAssertions(); SoftAssertions softly = new SoftAssertions();
softly.assertThat(dirty).hasSize(10); softly.assertThat(dirty).hasSize(10);
@@ -83,7 +83,7 @@ public class TestOldValue extends BaseTestCase {
softly.assertAll(); softly.assertAll();
} }
@SuppressWarnings({ "rawtypes", "unchecked" }) @SuppressWarnings({ "rawtypes", "unchecked" })
@Test @Test
@Ignore("Old value detection does not work for @DbArray") @Ignore("Old value detection does not work for @DbArray")
@@ -91,16 +91,16 @@ public class TestOldValue extends BaseTestCase {
EBasicOldValue bean = new EBasicOldValue(); EBasicOldValue bean = new EBasicOldValue();
bean.getStringArr().add("sa1"); bean.getStringArr().add("sa1");
DB.save(bean); DB.save(bean);
bean = DB.find(EBasicOldValue.class, bean.getId()); bean = DB.find(EBasicOldValue.class, bean.getId());
bean.getStringArr().add("sa2"); bean.getStringArr().add("sa2");
Map<String, ValuePair> dirty = DB.getBeanState(bean).getDirtyValues();
Map<String, ValuePair> dirty = DB.beanState(bean).getDirtyValues();
SoftAssertions softly = new SoftAssertions(); SoftAssertions softly = new SoftAssertions();
softly.assertThat(dirty).hasSize(1); softly.assertThat(dirty).hasSize(1);
@@ -272,7 +272,7 @@ public class TestStatelessUpdate extends TransactionalTestCase {
} }
private boolean containsContacts(Customer cust) { private boolean containsContacts(Customer cust) {
return DB.getBeanState(cust).getLoadedProps().contains("contacts"); return DB.beanState(cust).getLoadedProps().contains("contacts");
} }
/** /**