|
|
|
@ -359,30 +359,31 @@ public class BeanRelation {
|
|
|
|
|
*
|
|
|
|
|
* @param bean
|
|
|
|
|
*/
|
|
|
|
|
public static void delete(BaseBean bean) {
|
|
|
|
|
if (bean == null) {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
BeanInfo beanInfo = BeanInfo.getBeanInfo(bean.getClass());
|
|
|
|
|
List<Enum<?>> ownerSigns = beanInfo.getOwnerHolders();
|
|
|
|
|
for (Enum<?> holder : ownerSigns) {
|
|
|
|
|
List<BaseBean> relaBeans = new ArrayList<>(list(bean, holder));
|
|
|
|
|
for (BaseBean relaBean : relaBeans) {
|
|
|
|
|
//MemoryManager.delete(relaBean);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
List<Enum<?>> normalSigns = beanInfo.getNormalSigns();
|
|
|
|
|
for (Enum<?> holder : normalSigns) {
|
|
|
|
|
Enum<?> reverseHolder = beanInfo.getReverseHolder(holder);
|
|
|
|
|
List<BaseBean> relaBeans = new ArrayList<>(list(bean, holder));
|
|
|
|
|
for (BaseBean relaBean : relaBeans) {
|
|
|
|
|
if (reverseHolder != null) {
|
|
|
|
|
remove(relaBean, reverseHolder, bean);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
// public static void delete(BaseBean bean) {
|
|
|
|
|
// if (bean == null) {
|
|
|
|
|
// return;
|
|
|
|
|
// }
|
|
|
|
|
// BeanInfo beanInfo = BeanInfo.getBeanInfo(bean.getClass());
|
|
|
|
|
// List<Enum<?>> ownerSigns = beanInfo.getOwnerHolders();
|
|
|
|
|
// for (Enum<?> holder : ownerSigns) {
|
|
|
|
|
// Class<? extends BaseBean> relaCls = beanInfo.getRelationInfo(holder).getBeanInfo().getBeanClass();
|
|
|
|
|
// List<BaseBean> relaBeans = new ArrayList<>(list(bean, holder));
|
|
|
|
|
// for (BaseBean relaBean : relaBeans) {
|
|
|
|
|
// //MemoryManager.delete(relaBean);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// List<Enum<?>> normalSigns = beanInfo.getNormalSigns();
|
|
|
|
|
// for (Enum<?> holder : normalSigns) {
|
|
|
|
|
// Enum<?> reverseHolder = beanInfo.getReverseHolder(holder);
|
|
|
|
|
// List<BaseBean> relaBeans = new ArrayList<>(list(bean, holder));
|
|
|
|
|
// for (BaseBean relaBean : relaBeans) {
|
|
|
|
|
// if (reverseHolder != null) {
|
|
|
|
|
// remove(relaBean, reverseHolder, bean);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 按指定路径,递归调用lambda表达式,当lambda表达式返回false或路径存在循环则退出递归。
|
|
|
|
|