Search in sources :

Example 6 with URI

use of io.vertigo.dynamo.domain.model.URI in project vertigo by KleeGroup.

the class MemoryAccountCachePlugin method putGroup.

/**
 * {@inheritDoc}
 */
@Override
public synchronized void putGroup(final AccountGroup group) {
    Assertion.checkNotNull(group);
    // -----
    final DtDefinition dtDefinition = DtObjectUtil.findDtDefinition(group);
    final URI<AccountGroup> uri = new URI<>(dtDefinition, group.getId());
    // ----
    Assertion.checkArgument(!groupByURI.containsKey(uri), "this group is already registered, you can't create it");
    // -----
    accountByGroupURI.put(uri, new HashSet<URI<Account>>());
    groupByURI.put(uri, group);
}
Also used : AccountGroup(io.vertigo.account.account.AccountGroup) DtDefinition(io.vertigo.dynamo.domain.metamodel.DtDefinition) URI(io.vertigo.dynamo.domain.model.URI)

Example 7 with URI

use of io.vertigo.dynamo.domain.model.URI in project vertigo by KleeGroup.

the class StoreAccountStorePlugin method getAccount.

/**
 * {@inheritDoc}
 */
@Override
public Account getAccount(final URI<Account> accountURI) {
    final URI<Entity> userURI = new URI(getUserDtDefinition(), accountURI.getId());
    final Entity userEntity = storeManager.getDataStore().readOne(userURI);
    return userToAccount(userEntity);
}
Also used : Entity(io.vertigo.dynamo.domain.model.Entity) URI(io.vertigo.dynamo.domain.model.URI) DtListURI(io.vertigo.dynamo.domain.model.DtListURI)

Example 8 with URI

use of io.vertigo.dynamo.domain.model.URI in project vertigo by KleeGroup.

the class StoreAccountStorePlugin method getGroup.

/**
 * {@inheritDoc}
 */
@Override
public AccountGroup getGroup(final URI<AccountGroup> accountGroupURI) {
    final URI<Entity> groupURI = new URI(userGroupDtDefinition, accountGroupURI.getId());
    final Entity groupEntity = storeManager.getDataStore().readOne(groupURI);
    return groupToAccount(groupEntity);
}
Also used : Entity(io.vertigo.dynamo.domain.model.Entity) URI(io.vertigo.dynamo.domain.model.URI) DtListURI(io.vertigo.dynamo.domain.model.DtListURI)

Example 9 with URI

use of io.vertigo.dynamo.domain.model.URI in project vertigo by KleeGroup.

the class BrokerNNImpl method updateNN.

/**
 * {@inheritDoc}
 */
@Override
public void updateNN(final DtListURIForNNAssociation dtListURI, final List<URI> newUriList) {
    Assertion.checkNotNull(newUriList);
    // -----
    final DescriptionNN descriptionNN = new DescriptionNN(dtListURI);
    // 1. on supprime tout
    removeNN(descriptionNN);
    // 2. on enregistre la liste actuelle (un par un)
    final Set<URI> set = new HashSet<>();
    for (final URI dtoUri : newUriList) {
        // On vérifie que l'on n'enregistre pas deux fois la même relation.
        Assertion.checkArgument(set.add(dtoUri), "Duplicate key [{0}] dans la nouvelle collection.", dtoUri);
        appendNN(descriptionNN, dtoUri.getId());
    }
}
Also used : URI(io.vertigo.dynamo.domain.model.URI) HashSet(java.util.HashSet)

Example 10 with URI

use of io.vertigo.dynamo.domain.model.URI in project vertigo by KleeGroup.

the class SearchManagerImpl method start.

/**
 * {@inheritDoc}
 */
@Override
public void start() {
    for (final SearchIndexDefinition indexDefinition : Home.getApp().getDefinitionSpace().getAll(SearchIndexDefinition.class)) {
        final List<URI<? extends KeyConcept>> dirtyElements = new ArrayList<>();
        dirtyElementsPerIndexName.put(indexDefinition.getName(), dirtyElements);
        // on dépile les dirtyElements toutes les 1 secondes
        executorService.scheduleWithFixedDelay(new ReindexTask(indexDefinition, dirtyElements, this), 1, 1, TimeUnit.SECONDS);
    }
}
Also used : KeyConcept(io.vertigo.dynamo.domain.model.KeyConcept) SearchIndexDefinition(io.vertigo.dynamo.search.metamodel.SearchIndexDefinition) ArrayList(java.util.ArrayList) URI(io.vertigo.dynamo.domain.model.URI)

Aggregations

URI (io.vertigo.dynamo.domain.model.URI)38 DtDefinition (io.vertigo.dynamo.domain.metamodel.DtDefinition)21 DtField (io.vertigo.dynamo.domain.metamodel.DtField)11 Entity (io.vertigo.dynamo.domain.model.Entity)10 ArrayList (java.util.ArrayList)10 DtObject (io.vertigo.dynamo.domain.model.DtObject)9 SearchIndexDefinition (io.vertigo.dynamo.search.metamodel.SearchIndexDefinition)8 DtListURI (io.vertigo.dynamo.domain.model.DtListURI)7 VTransactionWritable (io.vertigo.commons.transaction.VTransactionWritable)6 DtList (io.vertigo.dynamo.domain.model.DtList)5 Account (io.vertigo.account.account.Account)4 AccountGroup (io.vertigo.account.account.AccountGroup)4 Home (io.vertigo.app.Home)4 AssociationNNDefinition (io.vertigo.dynamo.domain.metamodel.association.AssociationNNDefinition)4 FileInfoURI (io.vertigo.dynamo.domain.model.FileInfoURI)4 KeyConcept (io.vertigo.dynamo.domain.model.KeyConcept)4 VFile (io.vertigo.dynamo.file.model.VFile)4 SearchIndex (io.vertigo.dynamo.search.model.SearchIndex)4 TaskDefinition (io.vertigo.dynamo.task.metamodel.TaskDefinition)4 Task (io.vertigo.dynamo.task.model.Task)4