Search in sources :

Example 1 with io.reactivex.rxjava3.functions

use of io.reactivex.rxjava3.functions in project cassandra by apache.

the class SchemaKeyspace method createUDAFromRow.

private static UDAggregate createUDAFromRow(UntypedResultSet.Row row, Functions functions, Types types) {
    String ksName = row.getString("keyspace_name");
    String functionName = row.getString("aggregate_name");
    FunctionName name = new FunctionName(ksName, functionName);
    List<AbstractType<?>> argTypes = row.getFrozenList("argument_types", UTF8Type.instance).stream().map(t -> CQLTypeParser.parse(ksName, t, types)).collect(toList());
    AbstractType<?> returnType = CQLTypeParser.parse(ksName, row.getString("return_type"), types);
    FunctionName stateFunc = new FunctionName(ksName, (row.getString("state_func")));
    FunctionName finalFunc = row.has("final_func") ? new FunctionName(ksName, row.getString("final_func")) : null;
    AbstractType<?> stateType = row.has("state_type") ? CQLTypeParser.parse(ksName, row.getString("state_type"), types) : null;
    ByteBuffer initcond = row.has("initcond") ? Terms.asBytes(ksName, row.getString("initcond"), stateType) : null;
    try {
        return UDAggregate.create(functions, name, argTypes, returnType, stateFunc, finalFunc, stateType, initcond);
    } catch (InvalidRequestException reason) {
        return UDAggregate.createBroken(name, argTypes, returnType, initcond, reason);
    }
}
Also used : org.apache.cassandra.config(org.apache.cassandra.config) java.util(java.util) CharacterCodingException(java.nio.charset.CharacterCodingException) org.apache.cassandra.db.marshal(org.apache.cassandra.db.marshal) MessageDigest(java.security.MessageDigest) LoggerFactory(org.slf4j.LoggerFactory) org.apache.cassandra.db(org.apache.cassandra.db) ByteBuffer(java.nio.ByteBuffer) org.apache.cassandra.cql3(org.apache.cassandra.cql3) org.apache.cassandra.db.rows(org.apache.cassandra.db.rows) View(org.apache.cassandra.db.view.View) ImmutableList(com.google.common.collect.ImmutableList) SelectStatement(org.apache.cassandra.cql3.statements.SelectStatement) ColumnFilter(org.apache.cassandra.db.filter.ColumnFilter) ProtocolVersion(org.apache.cassandra.transport.ProtocolVersion) org.apache.cassandra.cql3.functions(org.apache.cassandra.cql3.functions) InvalidRequestException(org.apache.cassandra.exceptions.InvalidRequestException) org.apache.cassandra.db.partitions(org.apache.cassandra.db.partitions) Collectors.toSet(java.util.stream.Collectors.toSet) ClusteringOrder(org.apache.cassandra.schema.ColumnMetadata.ClusteringOrder) Logger(org.slf4j.Logger) FBUtilities(org.apache.cassandra.utils.FBUtilities) ByteBufferUtil(org.apache.cassandra.utils.ByteBufferUtil) QueryProcessor.executeInternal(org.apache.cassandra.cql3.QueryProcessor.executeInternal) Maps(com.google.common.collect.Maps) String.format(java.lang.String.format) QueryProcessor.executeOnceInternal(org.apache.cassandra.cql3.QueryProcessor.executeOnceInternal) TimeUnit(java.util.concurrent.TimeUnit) MapDifference(com.google.common.collect.MapDifference) Collectors.toList(java.util.stream.Collectors.toList) NoSuchAlgorithmException(java.security.NoSuchAlgorithmException) CreateTableStatement(org.apache.cassandra.cql3.statements.CreateTableStatement) InvalidRequestException(org.apache.cassandra.exceptions.InvalidRequestException) ByteBuffer(java.nio.ByteBuffer)

Example 2 with io.reactivex.rxjava3.functions

use of io.reactivex.rxjava3.functions in project cassandra by apache.

the class SchemaKeyspace method createUDAFromRow.

private static UDAggregate createUDAFromRow(UntypedResultSet.Row row, Collection<UDFunction> functions, Types types) {
    String ksName = row.getString("keyspace_name");
    String functionName = row.getString("aggregate_name");
    FunctionName name = new FunctionName(ksName, functionName);
    List<AbstractType<?>> argTypes = row.getFrozenList("argument_types", UTF8Type.instance).stream().map(t -> CQLTypeParser.parse(ksName, t, types)).collect(toList());
    AbstractType<?> returnType = CQLTypeParser.parse(ksName, row.getString("return_type"), types);
    FunctionName stateFunc = new FunctionName(ksName, (row.getString("state_func")));
    FunctionName finalFunc = row.has("final_func") ? new FunctionName(ksName, row.getString("final_func")) : null;
    AbstractType<?> stateType = row.has("state_type") ? CQLTypeParser.parse(ksName, row.getString("state_type"), types) : null;
    ByteBuffer initcond = row.has("initcond") ? Terms.asBytes(ksName, row.getString("initcond"), stateType) : null;
    return UDAggregate.create(functions, name, argTypes, returnType, stateFunc, finalFunc, stateType, initcond);
}
Also used : org.apache.cassandra.config(org.apache.cassandra.config) java.util(java.util) CharacterCodingException(java.nio.charset.CharacterCodingException) org.apache.cassandra.db.marshal(org.apache.cassandra.db.marshal) LoggerFactory(org.slf4j.LoggerFactory) org.apache.cassandra.db(org.apache.cassandra.db) ByteBuffer(java.nio.ByteBuffer) org.apache.cassandra.cql3(org.apache.cassandra.cql3) org.apache.cassandra.db.rows(org.apache.cassandra.db.rows) SchemaKeyspaceTables(org.apache.cassandra.schema.SchemaKeyspaceTables) RecognitionException(org.antlr.runtime.RecognitionException) Simulate(org.apache.cassandra.utils.Simulate) ColumnFilter(org.apache.cassandra.db.filter.ColumnFilter) ProtocolVersion(org.apache.cassandra.transport.ProtocolVersion) org.apache.cassandra.cql3.functions(org.apache.cassandra.cql3.functions) KeyspacesDiff(org.apache.cassandra.schema.Keyspaces.KeyspacesDiff) com.google.common.collect(com.google.common.collect) InvalidRequestException(org.apache.cassandra.exceptions.InvalidRequestException) SpeculativeRetryPolicy(org.apache.cassandra.service.reads.SpeculativeRetryPolicy) org.apache.cassandra.db.partitions(org.apache.cassandra.db.partitions) Collectors.toSet(java.util.stream.Collectors.toSet) ClusteringOrder(org.apache.cassandra.schema.ColumnMetadata.ClusteringOrder) Logger(org.slf4j.Logger) FBUtilities(org.apache.cassandra.utils.FBUtilities) ByteBufferUtil(org.apache.cassandra.utils.ByteBufferUtil) QueryProcessor.executeInternal(org.apache.cassandra.cql3.QueryProcessor.executeInternal) Collectors(java.util.stream.Collectors) Maps(com.google.common.collect.Maps) ReadRepairStrategy(org.apache.cassandra.service.reads.repair.ReadRepairStrategy) String.format(java.lang.String.format) QueryProcessor.executeOnceInternal(org.apache.cassandra.cql3.QueryProcessor.executeOnceInternal) CreateTableStatement(org.apache.cassandra.cql3.statements.schema.CreateTableStatement) TimeUnit(java.util.concurrent.TimeUnit) GLOBAL_CLOCK(org.apache.cassandra.utils.Simulate.With.GLOBAL_CLOCK) Collectors.toList(java.util.stream.Collectors.toList) VisibleForTesting(com.google.common.annotations.VisibleForTesting) NotThreadSafe(javax.annotation.concurrent.NotThreadSafe) ByteBuffer(java.nio.ByteBuffer)

Example 3 with io.reactivex.rxjava3.functions

use of io.reactivex.rxjava3.functions in project jOOQ by jOOQ.

the class FirebirdDatabase method getRoutines0.

@Override
protected List<RoutineDefinition> getRoutines0() throws SQLException {
    Rdb$procedures p = RDB$PROCEDURES.as("p");
    Rdb$functions fu = RDB$FUNCTIONS.as("fu");
    Rdb$functionArguments fa = RDB$FUNCTION_ARGUMENTS.as("fa");
    Rdb$fields fi = RDB$FIELDS.as("fi");
    return create().select(p.RDB$PROCEDURE_NAME.trim(), inline(null, VARCHAR).as("t"), inline(null, SMALLINT).as("p"), inline(null, SMALLINT).as("s")).from(p).where(p.RDB$PROCEDURE_TYPE.eq((short) 2)).union(is30() ? select(fu.RDB$FUNCTION_NAME.trim(), FIELD_TYPE(fi).as("t"), coalesce(CHARACTER_LENGTH(fi), fi.RDB$FIELD_PRECISION).as("p"), FIELD_SCALE(fi).as("s")).from(fu).leftAntiJoin(p).on(fu.RDB$FUNCTION_NAME.eq(p.RDB$PROCEDURE_NAME)).join(fa).on(fu.RDB$FUNCTION_NAME.eq(fa.RDB$FUNCTION_NAME)).leftOuterJoin(fi).on(fa.RDB$FIELD_SOURCE.eq(fi.RDB$FIELD_NAME)).where(fa.RDB$ARGUMENT_POSITION.eq(inline((short) 0))) : select(inline(""), inline(""), inline((short) 0), inline((short) 0)).where(falseCondition())).orderBy(1).collect(mapping(r -> new FirebirdRoutineDefinition(getSchemata().get(0), r.get(0, String.class), r.get(1, String.class), r.get(2, Integer.class), r.get(3, Integer.class)), Collectors.<RoutineDefinition>toList()));
}
Also used : Arrays(java.util.Arrays) DSL(org.jooq.impl.DSL) DefaultIndexColumnDefinition(org.jooq.meta.DefaultIndexColumnDefinition) FIELD_SCALE(org.jooq.meta.firebird.FirebirdDatabase.FIELD_SCALE) DefaultDomainDefinition(org.jooq.meta.DefaultDomainDefinition) Rdb$functions(org.jooq.meta.firebird.rdb.tables.Rdb$functions) DefaultSequenceDefinition(org.jooq.meta.DefaultSequenceDefinition) DSL.when(org.jooq.impl.DSL.when) DataTypeDefinition(org.jooq.meta.DataTypeDefinition) Record4(org.jooq.Record4) BigDecimal(java.math.BigDecimal) RoutineDefinition(org.jooq.meta.RoutineDefinition) PackageDefinition(org.jooq.meta.PackageDefinition) RDB$FUNCTIONS(org.jooq.meta.firebird.rdb.Tables.RDB$FUNCTIONS) RDB$PROCEDURES(org.jooq.meta.firebird.rdb.Tables.RDB$PROCEDURES) IndexColumnDefinition(org.jooq.meta.IndexColumnDefinition) DSL.trim(org.jooq.impl.DSL.trim) Rdb$indices(org.jooq.meta.firebird.rdb.tables.Rdb$indices) Arrays.asList(java.util.Arrays.asList) RDB$REF_CONSTRAINTS(org.jooq.meta.firebird.rdb.Tables.RDB$REF_CONSTRAINTS) Map(java.util.Map) ResultQuery(org.jooq.ResultQuery) DSLContext(org.jooq.DSLContext) DSL.coalesce(org.jooq.impl.DSL.coalesce) SQLDialect(org.jooq.SQLDialect) SortOrder(org.jooq.SortOrder) Record6(org.jooq.Record6) SMALLINT(org.jooq.impl.SQLDataType.SMALLINT) RDB$TRIGGERS(org.jooq.meta.firebird.rdb.Tables.RDB$TRIGGERS) Rdb$checkConstraints(org.jooq.meta.firebird.rdb.tables.Rdb$checkConstraints) DSL.falseCondition(org.jooq.impl.DSL.falseCondition) Field(org.jooq.Field) DSL.select(org.jooq.impl.DSL.select) Result(org.jooq.Result) DSL.choose(org.jooq.impl.DSL.choose) Collectors(java.util.stream.Collectors) TableType(org.jooq.TableOptions.TableType) BOOLEAN(org.jooq.impl.SQLDataType.BOOLEAN) DomainDefinition(org.jooq.meta.DomainDefinition) List(java.util.List) INTEGER(org.jooq.impl.SQLDataType.INTEGER) SQLDataType(org.jooq.impl.SQLDataType) Rdb$triggers(org.jooq.meta.firebird.rdb.tables.Rdb$triggers) DSL.noCondition(org.jooq.impl.DSL.noCondition) Entry(java.util.Map.Entry) SchemaMappingType(org.jooq.meta.jaxb.SchemaMappingType) FirebirdDataType(org.jooq.util.firebird.FirebirdDataType) DefaultCheckConstraintDefinition(org.jooq.meta.DefaultCheckConstraintDefinition) AbstractIndexDefinition(org.jooq.meta.AbstractIndexDefinition) DefaultRelations(org.jooq.meta.DefaultRelations) RDB$INDEX_SEGMENTS(org.jooq.meta.firebird.rdb.Tables.RDB$INDEX_SEGMENTS) SequenceDefinition(org.jooq.meta.SequenceDefinition) RDB$RELATION_CONSTRAINTS(org.jooq.meta.firebird.rdb.Tables.RDB$RELATION_CONSTRAINTS) Rdb$procedures(org.jooq.meta.firebird.rdb.tables.Rdb$procedures) DefaultDataTypeDefinition(org.jooq.meta.DefaultDataTypeDefinition) Rdb$refConstraints(org.jooq.meta.firebird.rdb.tables.Rdb$refConstraints) DSL.decode(org.jooq.impl.DSL.decode) DSL.nullif(org.jooq.impl.DSL.nullif) RDB$RELATION_FIELDS(org.jooq.meta.firebird.rdb.Tables.RDB$RELATION_FIELDS) TableDefinition(org.jooq.meta.TableDefinition) IndexDefinition(org.jooq.meta.IndexDefinition) RDB$CHECK_CONSTRAINTS(org.jooq.meta.firebird.rdb.Tables.RDB$CHECK_CONSTRAINTS) ArrayList(java.util.ArrayList) SQLException(java.sql.SQLException) BIGINT(org.jooq.impl.SQLDataType.BIGINT) NUMERIC(org.jooq.impl.SQLDataType.NUMERIC) Collectors.mapping(java.util.stream.Collectors.mapping) VARCHAR(org.jooq.impl.SQLDataType.VARCHAR) ArrayDefinition(org.jooq.meta.ArrayDefinition) UDTDefinition(org.jooq.meta.UDTDefinition) DSL.inline(org.jooq.impl.DSL.inline) Record(org.jooq.Record) CHARACTER_LENGTH(org.jooq.meta.firebird.FirebirdDatabase.CHARACTER_LENGTH) RDB$RELATIONS(org.jooq.meta.firebird.rdb.Tables.RDB$RELATIONS) Rdb$indexSegments(org.jooq.meta.firebird.rdb.tables.Rdb$indexSegments) Rdb$relationConstraints(org.jooq.meta.firebird.rdb.tables.Rdb$relationConstraints) FIELD_TYPE(org.jooq.meta.firebird.FirebirdDatabase.FIELD_TYPE) Rdb$functionArguments(org.jooq.meta.firebird.rdb.tables.Rdb$functionArguments) RDB$FIELDS(org.jooq.meta.firebird.rdb.Tables.RDB$FIELDS) FIREBIRD(org.jooq.SQLDialect.FIREBIRD) StringUtils(org.jooq.tools.StringUtils) Rdb$fields(org.jooq.meta.firebird.rdb.tables.Rdb$fields) Record12(org.jooq.Record12) SchemaDefinition(org.jooq.meta.SchemaDefinition) DSL.max(org.jooq.impl.DSL.max) Tables(org.jooq.meta.firebird.rdb.Tables) DSL.any(org.jooq.impl.DSL.any) EnumDefinition(org.jooq.meta.EnumDefinition) RDB$INDICES(org.jooq.meta.firebird.rdb.Tables.RDB$INDICES) Collections(java.util.Collections) ResultQueryDatabase(org.jooq.meta.ResultQueryDatabase) AbstractDatabase(org.jooq.meta.AbstractDatabase) CatalogDefinition(org.jooq.meta.CatalogDefinition) RoutineDefinition(org.jooq.meta.RoutineDefinition) Rdb$functionArguments(org.jooq.meta.firebird.rdb.tables.Rdb$functionArguments) Rdb$fields(org.jooq.meta.firebird.rdb.tables.Rdb$fields) Rdb$functions(org.jooq.meta.firebird.rdb.tables.Rdb$functions) Rdb$procedures(org.jooq.meta.firebird.rdb.tables.Rdb$procedures)

Example 4 with io.reactivex.rxjava3.functions

use of io.reactivex.rxjava3.functions in project RxJava by ReactiveX.

the class NotificationLiteTest method errorNotification.

@Test
public void errorNotification() {
    Object o = NotificationLite.error(new TestException());
    assertEquals("NotificationLite.Error[io.reactivex.rxjava3.exceptions.TestException]", o.toString());
    assertTrue(NotificationLite.isError(o));
    assertFalse(NotificationLite.isComplete(o));
    assertFalse(NotificationLite.isDisposable(o));
    assertFalse(NotificationLite.isSubscription(o));
    assertTrue(NotificationLite.getError(o) instanceof TestException);
}
Also used : TestException(io.reactivex.rxjava3.exceptions.TestException) RxJavaTest(io.reactivex.rxjava3.core.RxJavaTest) Test(org.junit.Test)

Example 5 with io.reactivex.rxjava3.functions

use of io.reactivex.rxjava3.functions in project RxJava by ReactiveX.

the class ObservableDematerializeTest method dematerialize3.

@Test
public void dematerialize3() {
    Exception exception = new Exception("test");
    Observable<Integer> o = Observable.error(exception);
    Observable<Integer> dematerialize = o.materialize().dematerialize(Functions.<Notification<Integer>>identity());
    Observer<Integer> observer = TestHelper.mockObserver();
    dematerialize.subscribe(observer);
    verify(observer, times(1)).onError(exception);
    verify(observer, times(0)).onComplete();
    verify(observer, times(0)).onNext(any(Integer.class));
}
Also used : TestException(io.reactivex.rxjava3.exceptions.TestException) Test(org.junit.Test)

Aggregations

Test (org.junit.Test)30 TestException (io.reactivex.rxjava3.exceptions.TestException)24 RxMethod (io.reactivex.rxjava3.validators.BaseTypeParser.RxMethod)6 IOException (java.io.IOException)6 Observable (io.reactivex.rxjava3.core.Observable)5 RxJavaTest (io.reactivex.rxjava3.core.RxJavaTest)5 BooleanSubscription (io.reactivex.rxjava3.internal.subscriptions.BooleanSubscription)4 Maps (com.google.common.collect.Maps)2 String.format (java.lang.String.format)2 ByteBuffer (java.nio.ByteBuffer)2 CharacterCodingException (java.nio.charset.CharacterCodingException)2 java.util (java.util)2 TimeUnit (java.util.concurrent.TimeUnit)2 Pattern (java.util.regex.Pattern)2 Collectors (java.util.stream.Collectors)2 Collectors.toList (java.util.stream.Collectors.toList)2 Collectors.toSet (java.util.stream.Collectors.toSet)2 org.apache.cassandra.config (org.apache.cassandra.config)2 org.apache.cassandra.cql3 (org.apache.cassandra.cql3)2 QueryProcessor.executeInternal (org.apache.cassandra.cql3.QueryProcessor.executeInternal)2