Search in sources :

Example 11 with Params

use of jakarta.nosql.Params in project jnosql-diana by eclipse.

the class UpdateQueryParser method query.

Stream<DocumentEntity> query(String query, DocumentCollectionManager collectionManager, DocumentObserverParser observer) {
    UpdateQuery updateQuery = supplier.apply(query);
    Params params = Params.newParams();
    DocumentEntity entity = getEntity(params, updateQuery, observer);
    if (params.isNotEmpty()) {
        throw new QueryException("To run a query with a parameter use a PrepareStatement instead.");
    }
    return Stream.of(collectionManager.update(entity));
}
Also used : QueryException(jakarta.nosql.QueryException) DocumentEntity(jakarta.nosql.document.DocumentEntity) UpdateQuery(jakarta.nosql.query.UpdateQuery) Params(jakarta.nosql.Params)

Example 12 with Params

use of jakarta.nosql.Params in project jnosql-diana by eclipse.

the class UpdateQueryParser method prepare.

DocumentPreparedStatement prepare(String query, DocumentCollectionManager collectionManager, DocumentObserverParser observer) {
    Params params = Params.newParams();
    UpdateQuery updateQuery = supplier.apply(query);
    DocumentEntity entity = getEntity(params, updateQuery, observer);
    return DefaultDocumentPreparedStatement.update(entity, params, query, collectionManager);
}
Also used : DocumentEntity(jakarta.nosql.document.DocumentEntity) Params(jakarta.nosql.Params) UpdateQuery(jakarta.nosql.query.UpdateQuery)

Example 13 with Params

use of jakarta.nosql.Params in project jnosql-diana by eclipse.

the class DocumentParamsTest method shouldAddParameter.

@Test
public void shouldAddParameter() {
    Params params = Params.newParams();
    Value name = params.add("name");
    assertNotNull(name);
    MatcherAssert.<List<String>>assertThat(params.getParametersNames(), containsInAnyOrder("name"));
}
Also used : Value(jakarta.nosql.Value) Params(jakarta.nosql.Params) List(java.util.List) Test(org.junit.jupiter.api.Test)

Example 14 with Params

use of jakarta.nosql.Params in project jnosql-diana by eclipse.

the class DocumentParamsTest method shouldSetParameter.

@Test
public void shouldSetParameter() {
    Params params = Params.newParams();
    Value name = params.add("name");
    Document document = Document.of("name", name);
    params.bind("name", "Ada Lovelace");
    assertEquals("Ada Lovelace", document.get());
    params.bind("name", "Diana");
    assertEquals("Diana", document.get());
}
Also used : Value(jakarta.nosql.Value) Params(jakarta.nosql.Params) Document(jakarta.nosql.document.Document) Test(org.junit.jupiter.api.Test)

Example 15 with Params

use of jakarta.nosql.Params in project jnosql-diana by eclipse.

the class InsertQueryParser method prepare.

DocumentPreparedStatement prepare(String query, DocumentCollectionManager collectionManager, DocumentObserverParser observer) {
    InsertQuery insertQuery = insertQueryProvider.apply(query);
    String collection = observer.fireEntity(insertQuery.getEntity());
    Params params = Params.newParams();
    Optional<Duration> ttl = insertQuery.getTtl();
    DocumentEntity entity = getEntity(insertQuery, collection, params, observer);
    return DefaultDocumentPreparedStatement.insert(entity, params, query, ttl.orElse(null), collectionManager);
}
Also used : InsertQuery(jakarta.nosql.query.InsertQuery) DocumentEntity(jakarta.nosql.document.DocumentEntity) Params(jakarta.nosql.Params) Duration(java.time.Duration)

Aggregations

Params (jakarta.nosql.Params)55 Value (jakarta.nosql.Value)23 QueryException (jakarta.nosql.QueryException)20 List (java.util.List)18 Test (org.junit.jupiter.api.Test)18 Stream (java.util.stream.Stream)15 ServiceLoaderProvider (jakarta.nosql.ServiceLoaderProvider)12 SelectQuery (jakarta.nosql.query.SelectQuery)12 Collectors.toList (java.util.stream.Collectors.toList)11 ColumnEntity (jakarta.nosql.column.ColumnEntity)8 ColumnQueryParams (jakarta.nosql.column.ColumnQueryParams)8 DocumentQueryParams (jakarta.nosql.document.DocumentQueryParams)8 ColumnQuery (jakarta.nosql.column.ColumnQuery)7 DocumentEntity (jakarta.nosql.document.DocumentEntity)7 DocumentQuery (jakarta.nosql.document.DocumentQuery)7 Collectors (java.util.stream.Collectors)7 ColumnCondition (jakarta.nosql.column.ColumnCondition)6 ColumnDeleteQueryParams (jakarta.nosql.column.ColumnDeleteQueryParams)6 DocumentCondition (jakarta.nosql.document.DocumentCondition)6 DocumentDeleteQueryParams (jakarta.nosql.document.DocumentDeleteQueryParams)6