/** * <p>Init database birth and ID birth of entity.</p> * @param pEntity entity * @throws Exception an exception **/ public final void initPersistableBase(final Object pEntity) throws Exception { Field fieldIdDbBirth = getUtlReflection().retrieveField(pEntity.getClass(), APersistableBase.ID_DATABASE_BIRTH_NAME); fieldIdDbBirth.setAccessible(true); if (getSrvDatabase() != null) { //for test purpose, otherwise it must be set fieldIdDbBirth.set(pEntity, getSrvDatabase().getIdDatabase()); } Field fieldIdBirth = getUtlReflection().retrieveField(pEntity.getClass(), APersistableBase.ID_BIRTH_NAME); fieldIdBirth.setAccessible(true); fieldIdBirth.set(pEntity, null); }
/** * <p>Refresh entity from DB by given entity with ID.</p> * @param <T> entity type * @param pEntity entity * @return entity or null * @throws Exception - an exception **/ @Override public final <T> T retrieveEntity(final T pEntity) throws Exception { @SuppressWarnings("unchecked") Class<T> entityClass = (Class<T>) pEntity.getClass(); TableSql tableSql = getTablesMap().get(entityClass.getSimpleName()); Field fieldId = getUtlReflection().retrieveField(entityClass, tableSql.getIdName()); fieldId.setAccessible(true); Object id = fieldId.get(pEntity); return retrieveEntityById(entityClass, id); }
/** * <p>Retrieve copy of entity from DB by given ID.</p> * @param <T> entity type * @param pEntityClass entity class * @param pId ID * @return entity or null * @throws Exception - an exception **/ @Override public final <T> T retrieveCopyEntity( final Class<T> pEntityClass, final Object pId) throws Exception { T entity = retrieveEntityById(pEntityClass, pId); TableSql tableSql = getTablesMap().get(pEntityClass.getSimpleName()); Field fieldId = getUtlReflection().retrieveField(pEntityClass, tableSql.getIdName()); fieldId.setAccessible(true); fieldId.set(entity, null); if (APersistableBase.class.isAssignableFrom(pEntityClass)) { initPersistableBase(entity); } return entity; }
TableSql tableSqlEntityOwner = getTablesMap() .get(pEntityOwnerClass.getSimpleName()); Field fieldIdEntityOwner = getUtlReflection().retrieveField( pEntityOwnerClass, tableSqlEntityOwner.getIdName()); fieldIdEntityOwner.setAccessible(true); Field fieldEntityOwner = getUtlReflection().retrieveField(pEntityClass, ownerFieldName); fieldEntityOwner.setAccessible(true);
.getClassesSettings().get(pClazz.getCanonicalName()) .get(TableSql.KEY_IF_FULL_DEFINE_IN_XML))); Field[] fields = getUtlReflection().retrieveFields(pClazz); for (Field field : fields) { if (this.mngSettings.getFieldsSettings().get(pClazz
String columnAlias = pEntityClass.getSimpleName().toUpperCase() + entry.getKey().toUpperCase(); Field field = getUtlReflection().retrieveField(pEntityClass, entry.getKey()); if (entry.getValue().getForeignEntity() != null) { String columnAliasFrn = entry.getKey() .toUpperCase() + fldNameFrn.toUpperCase(); Field fieldFrn = getUtlReflection().retrieveField(field.getType(), fldNameFrn); TableSql tableSqlFrnFrn = getTablesMap(). .getDeclaredConstructor(); Object entityFrnFrn = constructorFrnFrn.newInstance(); Field fieldFrnFrn = getUtlReflection() .retrieveField(fieldFrn.getType(), tableSqlFrnFrn.getIdName()); if (!fillSimpleField(fieldFrnFrn, entityFrnFrn, columnAliasFrn, Field fieldIdFrn = getUtlReflection() .retrieveField(entityFrn.getClass(), tableSqlFrn.getIdName()); fieldIdFrn.setAccessible(true);
TableSql tableSqlOwner = getTablesMap().get(pEntityOwner.getClass() .getSimpleName()); Field fieldIdOwner = getUtlReflection().retrieveField(pEntityOwner .getClass(), tableSqlOwner.getIdName()); fieldIdOwner.setAccessible(true);
if (!tableSql.getIsFullDefinedInXml()) { Field[] fields = getUtlReflection().retrieveFields(clazz); for (Field field : fields) { FieldSql fieldSql = tableSql.getFieldsMap().get(field.getName());
Field[] fields = getUtlReflection().retrieveFields(pClazz); for (Field field : fields) { if (this.mngSettings.getFieldsSettings()
for (String fieldName : tableSql.getFieldsMap().keySet()) { try { Field field = getUtlReflection().retrieveField(pEntity.getClass(), fieldName); field.setAccessible(true); if (tableSqlForeign != null) { Object foreignEntity = field.get(pEntity); Field fieldId = getUtlReflection().retrieveField(field.getType(), tableSqlForeign.getIdName()); getLogger().debug(ASrvOrm.class, "ORM: try to fill column FID "
Field[] fields = getUtlReflection().retrieveFields(clazz); for (Field field : fields) { FieldSql fieldSql = tableSql.getFieldsMap().get(field.getName());