Skip to content

Commit

Permalink
[DataModel] Impact renaming DtObject => DataObject & co
Browse files Browse the repository at this point in the history
  • Loading branch information
NPi2Loup committed Feb 13, 2024
1 parent 90865a8 commit 5b1f0cf
Show file tree
Hide file tree
Showing 36 changed files with 352 additions and 352 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -39,13 +39,13 @@
import io.vertigo.datafactory.collections.ListFilter;
import io.vertigo.datafactory.impl.collections.IndexPlugin;
import io.vertigo.datamodel.smarttype.SmartTypeManager;
import io.vertigo.datamodel.structure.definitions.DtDefinition;
import io.vertigo.datamodel.structure.definitions.DtField;
import io.vertigo.datamodel.structure.model.DtList;
import io.vertigo.datamodel.structure.model.DtListState;
import io.vertigo.datamodel.structure.model.DtListURI;
import io.vertigo.datamodel.structure.model.DtObject;
import io.vertigo.datamodel.structure.model.UID;
import io.vertigo.datamodel.data.definitions.DataDefinition;
import io.vertigo.datamodel.data.definitions.DataField;
import io.vertigo.datamodel.data.model.DtList;
import io.vertigo.datamodel.data.model.DtListState;
import io.vertigo.datamodel.data.model.DtListURI;
import io.vertigo.datamodel.data.model.DataObject;
import io.vertigo.datamodel.data.model.UID;
import io.vertigo.datastore.cache.CacheManager;
import io.vertigo.datastore.cache.definitions.CacheDefinition;
import io.vertigo.datastore.entitystore.StoreEvent;
Expand Down Expand Up @@ -102,7 +102,7 @@ public List<? extends Definition> provideDefinitions(final DefinitionSpace defin
return Collections.singletonList(new CacheDefinition(CACHE_LUCENE_INDEX, false, 1000, 30 * 60, 60 * 60, true));
}

private <D extends DtObject> RamLuceneIndex<D> indexList(final DtList<D> fullDtc, final boolean storeValue) throws IOException {
private <D extends DataObject> RamLuceneIndex<D> indexList(final DtList<D> fullDtc, final boolean storeValue) throws IOException {
//TODO : gestion du cache a revoir... et le lien avec le CacheStore.
//L'index devrait être interrogé par le Broker ? on pourrait alors mettre en cache dans le DataCache.
final DtListURI dtcUri = fullDtc.getURI();
Expand All @@ -127,11 +127,11 @@ private <D extends DtObject> RamLuceneIndex<D> indexList(final DtList<D> fullDtc
return createIndex(fullDtc, storeValue);
}

private static String getIndexCacheContext(final DtDefinition dtDefinition) {
private static String getIndexCacheContext(final DataDefinition dtDefinition) {
return "IndexCache:" + dtDefinition.getName();
}

private <D extends DtObject> RamLuceneIndex<D> createIndex(final DtList<D> fullDtc, final boolean storeValue) throws IOException {
private <D extends DataObject> RamLuceneIndex<D> createIndex(final DtList<D> fullDtc, final boolean storeValue) throws IOException {
Assertion.check().isNotNull(fullDtc);
//-----
final RamLuceneIndex<D> luceneDb = new RamLuceneIndex<>(fullDtc.getDefinition(), smartTypeManager);
Expand All @@ -141,12 +141,12 @@ private <D extends DtObject> RamLuceneIndex<D> createIndex(final DtList<D> fullD

/** {@inheritDoc} */
@Override
public <D extends DtObject> DtList<D> getCollection(
public <D extends DataObject> DtList<D> getCollection(
final String keywords,
final Collection<DtField> searchedFields,
final Collection<DataField> searchedFields,
final List<ListFilter> listFilters,
final DtListState listState,
final Optional<DtField> boostedField,
final Optional<DataField> boostedField,
final DtList<D> dtc) {
Assertion.check().isTrue(listState.getMaxRows().isPresent(), "Can't return all results, you must define maxRows");
try {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,14 +55,14 @@
import io.vertigo.core.node.Node;
import io.vertigo.datafactory.collections.ListFilter;
import io.vertigo.datamodel.smarttype.SmartTypeManager;
import io.vertigo.datamodel.structure.definitions.DtDefinition;
import io.vertigo.datamodel.structure.definitions.DtField;
import io.vertigo.datamodel.structure.model.DtList;
import io.vertigo.datamodel.structure.model.DtListState;
import io.vertigo.datamodel.structure.model.DtListURIForMasterData;
import io.vertigo.datamodel.structure.model.DtObject;
import io.vertigo.datamodel.structure.model.Entity;
import io.vertigo.datamodel.structure.model.UID;
import io.vertigo.datamodel.data.definitions.DataDefinition;
import io.vertigo.datamodel.data.definitions.DataField;
import io.vertigo.datamodel.data.model.DtList;
import io.vertigo.datamodel.data.model.DtListState;
import io.vertigo.datamodel.data.model.DtListURIForMasterData;
import io.vertigo.datamodel.data.model.DataObject;
import io.vertigo.datamodel.data.model.Entity;
import io.vertigo.datamodel.data.model.UID;
import io.vertigo.datastore.entitystore.EntityStoreManager;

/**
Expand All @@ -73,7 +73,7 @@
* @author pchretien, npiedeloup
* @param <D> Type d'objet
*/
final class RamLuceneIndex<D extends DtObject> {
final class RamLuceneIndex<D extends DataObject> {
private static final FieldType KEYWORD_TYPE_STORED = new FieldType();
private static final FieldType KEYWORD_TYPE_NOT_STORED = new FieldType();

Expand All @@ -91,9 +91,9 @@ final class RamLuceneIndex<D extends DtObject> {
}

//DtDefinition est non serializable
private final DtDefinition dtDefinition;
private final DataDefinition dtDefinition;

private final Optional<DtField> idFieldOpt;
private final Optional<DataField> idFieldOpt;
private final String idFieldName;

private final SmartTypeManager smartTypeManager;
Expand All @@ -104,10 +104,10 @@ final class RamLuceneIndex<D extends DtObject> {
private final RamLuceneQueryFactory luceneQueryFactory;

/**
* @param dtDefinition DtDefinition des objets indexés
* @param dtDefinition DataDefinition des objets indexés
* @throws IOException Exception I/O
*/
RamLuceneIndex(final DtDefinition dtDefinition, final SmartTypeManager smartTypeManager) throws IOException {
RamLuceneIndex(final DataDefinition dtDefinition, final SmartTypeManager smartTypeManager) throws IOException {
Assertion.check()
.isNotNull(dtDefinition)
.isNotNull(smartTypeManager);
Expand Down Expand Up @@ -201,13 +201,13 @@ public void addAll(final DtList<D> fullDtc, final boolean storeValue) throws IOE
Assertion.check().isNotNull(fullDtc);
//-----
try (final IndexWriter indexWriter = createIndexWriter()) {
final Collection<DtField> dtFields = fullDtc.getDefinition().getFields();
final Collection<DataField> dtFields = fullDtc.getDefinition().getFields();

for (final D dto : fullDtc) {
final Document document = new Document();
final String indexedPkValue = obtainIndexedIdValue(dto);
addKeyword(document, idFieldName, indexedPkValue, true);
for (final DtField dtField : dtFields) {
for (final DataField dtField : dtFields) {
final Object value = dtField.getDataAccessor().getValue(dto);
if (value != null && (idFieldOpt.isEmpty() || !dtField.equals(idFieldOpt.get()))) {
if (value instanceof String) {
Expand All @@ -230,7 +230,7 @@ public void addAll(final DtList<D> fullDtc, final boolean storeValue) throws IOE
private String obtainIndexedIdValue(final D dto) {
if (idFieldOpt.isPresent()) {
final Object pkValue = idFieldOpt.get().getDataAccessor().getValue(dto);
Assertion.check().isNotNull(pkValue, "Indexed DtObject must have a not null primary key. {0}.{1} was null.", dtDefinition.getName(), idFieldOpt.get().name());
Assertion.check().isNotNull(pkValue, "Indexed DataObject must have a not null primary key. {0}.{1} was null.", dtDefinition.getName(), idFieldOpt.get().name());
return String.valueOf(pkValue);
} else {
return String.valueOf(dto.hashCode());
Expand All @@ -241,16 +241,16 @@ private static EntityStoreManager getEntityStoreManager() {
return Node.getNode().getComponentSpace().resolve(EntityStoreManager.class);
}

private String getStringValue(final DtObject dto, final DtField field) {
private String getStringValue(final DataObject dto, final DataField field) {
final String stringValue;
final Object value = field.getDataAccessor().getValue(dto);
if (value != null) {
if (field.getType() == DtField.FieldType.FOREIGN_KEY && getEntityStoreManager().getMasterDataConfig().containsMasterData(field.getFkDtDefinition())) {
if (field.getType() == DataField.FieldType.FOREIGN_KEY && getEntityStoreManager().getMasterDataConfig().containsMasterData(field.getFkDtDefinition())) {
//TODO voir pour mise en cache de cette navigation
final DtListURIForMasterData mdlUri = getEntityStoreManager().getMasterDataConfig().getDtListURIForMasterData(field.getFkDtDefinition());
final DtField displayField = mdlUri.getDtDefinition().getDisplayField().get();
final DataField displayField = mdlUri.getDataDefinition().getDisplayField().get();
final UID<Entity> uid = UID.of(field.getFkDtDefinition(), value);
final DtObject fkDto = getEntityStoreManager().readOne(uid);
final DataObject fkDto = getEntityStoreManager().readOne(uid);
final Object displayValue = displayField.getDataAccessor().getValue(fkDto);
stringValue = smartTypeManager.valueToString(displayField.smartTypeDefinition(), displayValue);
} else {
Expand All @@ -273,10 +273,10 @@ private String getStringValue(final DtObject dto, final DtField field) {
*/
public DtList<D> getCollection(
final String keywords,
final Collection<DtField> searchedFields,
final Collection<DataField> searchedFields,
final List<ListFilter> listFilters,
final DtListState dtListState,
final Optional<DtField> boostedField) throws IOException {
final Optional<DataField> boostedField) throws IOException {
Assertion.check()
.isNotNull(searchedFields)
.isNotNull(dtListState)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
import io.vertigo.core.lang.WrappedException;
import io.vertigo.core.util.StringUtil;
import io.vertigo.datafactory.collections.ListFilter;
import io.vertigo.datamodel.structure.definitions.DtField;
import io.vertigo.datamodel.data.definitions.DataField;

final class RamLuceneQueryFactory {
private final Analyzer queryAnalyzer;
Expand All @@ -55,7 +55,7 @@ final class RamLuceneQueryFactory {
this.queryAnalyzer = queryAnalyzer;
}

Query createFilterQuery(final String keywords, final Collection<DtField> searchedFields, final List<ListFilter> listFilters, final Optional<DtField> boostedField) throws IOException {
Query createFilterQuery(final String keywords, final Collection<DataField> searchedFields, final List<ListFilter> listFilters, final Optional<DataField> boostedField) throws IOException {
final Query filteredQuery;
final Query keywordsQuery = createKeywordQuery(queryAnalyzer, keywords, searchedFields, boostedField);
if (!listFilters.isEmpty()) {
Expand All @@ -66,13 +66,13 @@ Query createFilterQuery(final String keywords, final Collection<DtField> searche
return filteredQuery;
}

private static Query createKeywordQuery(final Analyzer queryAnalyser, final String keywords, final Collection<DtField> searchedFieldList, final Optional<DtField> boostedField) throws IOException {
private static Query createKeywordQuery(final Analyzer queryAnalyser, final String keywords, final Collection<DataField> searchedFieldList, final Optional<DataField> boostedField) throws IOException {
if (StringUtil.isBlank(keywords)) {
return new MatchAllDocsQuery();
}
//-----
final Builder queryBuilder = new BooleanQuery.Builder();
for (final DtField dtField : searchedFieldList) {
for (final DataField dtField : searchedFieldList) {
Query queryWord = createParsedKeywordsQuery(queryAnalyser, dtField.name(), keywords);
if (boostedField.isPresent() && dtField.equals(boostedField.get())) {
queryWord = new BoostQuery(queryWord, 4);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,13 +62,13 @@
import io.vertigo.datafactory.search.model.SearchQuery;
import io.vertigo.datamodel.smarttype.SmartTypeManager;
import io.vertigo.datamodel.smarttype.definitions.SmartTypeDefinition;
import io.vertigo.datamodel.structure.definitions.DtDefinition;
import io.vertigo.datamodel.structure.definitions.DtField;
import io.vertigo.datamodel.structure.definitions.DtFieldName;
import io.vertigo.datamodel.structure.model.DtListState;
import io.vertigo.datamodel.structure.model.DtObject;
import io.vertigo.datamodel.structure.model.KeyConcept;
import io.vertigo.datamodel.structure.model.UID;
import io.vertigo.datamodel.data.definitions.DataDefinition;
import io.vertigo.datamodel.data.definitions.DataField;
import io.vertigo.datamodel.data.definitions.DataFieldName;
import io.vertigo.datamodel.data.model.DtListState;
import io.vertigo.datamodel.data.model.DataObject;
import io.vertigo.datamodel.data.model.KeyConcept;
import io.vertigo.datamodel.data.model.UID;

/**
* Gestion de la connexion au serveur ElasticSearch de manière transactionnel.
Expand Down Expand Up @@ -245,7 +245,7 @@ public final void stop() {

/** {@inheritDoc} */
@Override
public final <S extends KeyConcept, I extends DtObject> void putAll(final SearchIndexDefinition indexDefinition, final Collection<SearchIndex<S, I>> indexCollection) {
public final <S extends KeyConcept, I extends DataObject> void putAll(final SearchIndexDefinition indexDefinition, final Collection<SearchIndex<S, I>> indexCollection) {
Assertion.check().isNotNull(indexCollection);
//-----
final ESStatement<S, I> statement = createElasticStatement(indexDefinition);
Expand All @@ -254,7 +254,7 @@ public final <S extends KeyConcept, I extends DtObject> void putAll(final Search

/** {@inheritDoc} */
@Override
public final <S extends KeyConcept, I extends DtObject> void put(final SearchIndexDefinition indexDefinition, final SearchIndex<S, I> index) {
public final <S extends KeyConcept, I extends DataObject> void put(final SearchIndexDefinition indexDefinition, final SearchIndex<S, I> index) {
//On vérifie la cohérence des données SO et SOD.
Assertion.check()
.isNotNull(indexDefinition)
Expand All @@ -277,7 +277,7 @@ public final <S extends KeyConcept> void remove(final SearchIndexDefinition inde

/** {@inheritDoc} */
@Override
public final <R extends DtObject> FacetedQueryResult<R, SearchQuery> loadList(final List<SearchIndexDefinition> indexDefinitions, final SearchQuery searchQuery, final DtListState listState) {
public final <R extends DataObject> FacetedQueryResult<R, SearchQuery> loadList(final List<SearchIndexDefinition> indexDefinitions, final SearchQuery searchQuery, final DtListState listState) {
Assertion.check().isNotNull(searchQuery);
Assertion.check().isTrue(indexDefinitions.size() == 1, "ElasticSearch plugn for old version (5.6) don't support multiple SearchIndexDefinition");
//-----
Expand Down Expand Up @@ -319,11 +319,11 @@ public Serializable getMetaData(final SearchIndexDefinition indexDefinition, fin

/** {@inheritDoc} */
@Override
public <K extends KeyConcept> Map<UID<K>, Serializable> loadVersions(final SearchIndexDefinition indexDefinitions, final DtFieldName<K> versionFieldName, final ListFilter listFilter, final int maxElements) {
public <K extends KeyConcept> Map<UID<K>, Serializable> loadVersions(final SearchIndexDefinition indexDefinitions, final DataFieldName<K> versionFieldName, final ListFilter listFilter, final int maxElements) {
throw new UnsupportedOperationException("This old plugin doesn't support this method.");
}

private <S extends KeyConcept, I extends DtObject> ESStatement<S, I> createElasticStatement(final SearchIndexDefinition indexDefinition) {
private <S extends KeyConcept, I extends DataObject> ESStatement<S, I> createElasticStatement(final SearchIndexDefinition indexDefinition) {
Assertion.check()
.isTrue(indexSettingsValid,
"Index settings have changed and are no more compatible, you must recreate your index : stop server, delete your index data folder, restart server and launch indexation job.")
Expand Down Expand Up @@ -373,9 +373,9 @@ private void updateTypeMapping(final SearchIndexDefinition indexDefinition, fina
.endObject();

/* 3 : Les champs du dto index */
final Set<DtField> copyFromFields = indexDefinition.getIndexCopyFromFields();
final DtDefinition indexDtDefinition = indexDefinition.getIndexDtDefinition();
for (final DtField dtField : indexDtDefinition.getFields()) {
final Set<DataField> copyFromFields = indexDefinition.getIndexCopyFromFields();
final DataDefinition indexDtDefinition = indexDefinition.getIndexDtDefinition();
for (final DataField dtField : indexDtDefinition.getFields()) {
final IndexType indexType = IndexType.readIndexType(dtField.smartTypeDefinition());
typeMapping.startObject(dtField.name());
appendIndexTypeMapping(typeMapping, indexType);
Expand Down Expand Up @@ -411,8 +411,8 @@ private void updateTypeMapping(final SearchIndexDefinition indexDefinition, fina
}
}

private static void appendIndexCopyToMapping(final SearchIndexDefinition indexDefinition, final XContentBuilder typeMapping, final DtField dtField) throws IOException {
final List<DtField> copyToFields = indexDefinition.getIndexCopyToFields(dtField);
private static void appendIndexCopyToMapping(final SearchIndexDefinition indexDefinition, final XContentBuilder typeMapping, final DataField dtField) throws IOException {
final List<DataField> copyToFields = indexDefinition.getIndexCopyToFields(dtField);
if (copyToFields.size() == 1) {
typeMapping.field("copy_to", copyToFields.get(0).name());
} else {
Expand Down
Loading

0 comments on commit 5b1f0cf

Please sign in to comment.