rx.Observable.cast()方法的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(8.3k)|赞(0)|评价(0)|浏览(145)

本文整理了Java中rx.Observable.cast()方法的一些代码示例,展示了Observable.cast()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Observable.cast()方法的具体详情如下:
包路径:rx.Observable
类名称:Observable
方法名:cast

Observable.cast介绍

[英]Returns an Observable that emits the items emitted by the source Observable, converted to the specified type.

Scheduler: cast does not operate by default on a particular Scheduler.
[中]返回一个Observable,该Observable发出源Observable发出的项,并转换为指定类型。
调度程序:默认情况下,cast不会在特定调度程序上运行。

代码示例

代码示例来源:origin: ReactiveX/RxNetty

  1. @Override
  2. public Observable<ByteBuf> call(Observable<ByteBuf> upstream) {
  3. return upstream
  4. .collect(
  5. new Func0<CompositeByteBuf>() {
  6. @Override
  7. public CompositeByteBuf call() {
  8. return Unpooled.compositeBuffer();
  9. }
  10. },
  11. new Action2<CompositeByteBuf, ByteBuf>() {
  12. @Override
  13. public void call(CompositeByteBuf collector, ByteBuf buf) {
  14. long newLength = collector.readableBytes() + buf.readableBytes();
  15. if (newLength <= maxBytes) {
  16. collector.addComponent(true, buf);
  17. } else {
  18. collector.release();
  19. buf.release();
  20. throw new TooMuchDataException("More than " + maxBytes + "B received");
  21. }
  22. }
  23. }
  24. )
  25. .cast(ByteBuf.class);
  26. }

代码示例来源:origin: PipelineAI/pipeline

  1. @Override
  2. public Observable<Void> mapResponseToRequests(Observable<BatchReturnType> batchResponse, final Collection<CollapsedRequest<ResponseType, RequestArgumentType>> requests) {
  3. return batchResponse.single().doOnNext(new Action1<BatchReturnType>() {
  4. @Override
  5. public void call(BatchReturnType batchReturnType) {
  6. // this is a blocking call in HystrixCollapser
  7. self.mapResponseToRequests(batchReturnType, requests);
  8. }
  9. }).ignoreElements().cast(Void.class);
  10. }

代码示例来源:origin: PipelineAI/pipeline

  1. }).ignoreElements().cast(Void.class);

代码示例来源:origin: davidmoten/rxjava-jdbc

  1. private static <T> Observable<Boolean> commitOrRollbackOnCompleteTransformerIfAtLeastOneValue(
  2. final boolean isCommit, final Database db, Observable<T> source) {
  3. CountingAction<T> counter = RxUtil.counter();
  4. Observable<Boolean> commit = counter
  5. // get count
  6. .count()
  7. // greater than zero or empty
  8. .filter(greaterThanZero())
  9. // commit if at least one value
  10. .compose(db.commitOrRollback_(isCommit));
  11. return Observable
  12. // concatenate
  13. .concat(source
  14. // count emissions
  15. .doOnNext(counter)
  16. // ignore emissions
  17. .ignoreElements()
  18. // cast the empty sequence to type Boolean
  19. .cast(Boolean.class),
  20. // concat with commit
  21. commit);
  22. }

代码示例来源:origin: techery/janet

  1. @Override public Observable<ActionState<A>> call(Observable<ActionState> source) {
  2. return source.cast(type);
  3. }
  4. }

代码示例来源:origin: leeowenowen/rxjava-examples

  1. @Override
  2. public void run() {
  3. Observable.<Object>just(1, 2, 3).
  4. cast(Integer.class).subscribe(new Action1<Integer>() {
  5. @Override
  6. public void call(Integer integer) {
  7. log(integer);
  8. }
  9. });
  10. }
  11. });

代码示例来源:origin: HotelsDotCom/styx

  1. private <T> Observable<T> currentValueIfPresent(String key, Class<T> type) {
  2. return Observable.from(
  3. singleOrEmpty(() -> values.get(key)))
  4. .cast(type);
  5. }

代码示例来源:origin: com.netflix.hystrix/hystrix-core

  1. @Override
  2. public Observable<Void> mapResponseToRequests(Observable<BatchReturnType> batchResponse, final Collection<CollapsedRequest<ResponseType, RequestArgumentType>> requests) {
  3. return batchResponse.single().doOnNext(new Action1<BatchReturnType>() {
  4. @Override
  5. public void call(BatchReturnType batchReturnType) {
  6. // this is a blocking call in HystrixCollapser
  7. self.mapResponseToRequests(batchReturnType, requests);
  8. }
  9. }).ignoreElements().cast(Void.class);
  10. }

代码示例来源:origin: com.microsoft.azure/spring-integration-azure-test

  1. @Test
  2. public void testSendByte() {
  3. AssertableSubscriber<String> subscriber =
  4. subscribe(destination, byte[].class).map(Message::getPayload).cast(byte[].class).map(String::new)
  5. .test();
  6. sendSubscribeOperation.sendRx(destination, byteMessage);
  7. subscriber.assertValue(payload).assertNoErrors();
  8. }

代码示例来源:origin: Microsoft/spring-cloud-azure

  1. @Test
  2. public void testSendByte() {
  3. AssertableSubscriber<String> subscriber =
  4. subscribe(destination, byte[].class).map(Message::getPayload).cast(byte[].class).map(String::new)
  5. .test();
  6. sendSubscribeOperation.sendRx(destination, byteMessage);
  7. subscriber.assertValue(payload).assertNoErrors();
  8. }

代码示例来源:origin: com.microsoft.azure/spring-integration-azure-test

  1. @Test
  2. public void testSendUser() {
  3. AssertableSubscriber<User> subscriber =
  4. subscribe(destination, User.class).map(Message::getPayload).cast(User.class).test();
  5. sendSubscribeOperation.sendRx(destination, userMessage);
  6. subscriber.assertValue(user).assertNoErrors();
  7. }

代码示例来源:origin: Microsoft/spring-cloud-azure

  1. @Test
  2. public void testSendString() {
  3. AssertableSubscriber<String> subscriber =
  4. subscribe(destination, String.class).map(Message::getPayload).cast(String.class).test();
  5. sendSubscribeOperation.sendRx(destination, stringMessage);
  6. subscriber.assertValue(payload).assertNoErrors();
  7. }

代码示例来源:origin: com.microsoft.azure/spring-integration-azure-test

  1. @Test
  2. public void testSendString() {
  3. AssertableSubscriber<String> subscriber =
  4. subscribe(destination, String.class).map(Message::getPayload).cast(String.class).test();
  5. sendSubscribeOperation.sendRx(destination, stringMessage);
  6. subscriber.assertValue(payload).assertNoErrors();
  7. }

代码示例来源:origin: Microsoft/spring-cloud-azure

  1. @Test
  2. public void testSendUser() {
  3. AssertableSubscriber<User> subscriber =
  4. subscribe(destination, User.class).map(Message::getPayload).cast(User.class).test();
  5. sendSubscribeOperation.sendRx(destination, userMessage);
  6. subscriber.assertValue(user).assertNoErrors();
  7. }

代码示例来源:origin: nurkiewicz/rxjava-book-examples

  1. void connect() {
  2. ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://localhost:61616");
  3. Observable<String> txtMessages = observe(connectionFactory, new ActiveMQTopic("orders"))
  4. .cast(TextMessage.class)
  5. .flatMap(m -> {
  6. try {
  7. return Observable.just(m.getText());
  8. } catch (JMSException e) {
  9. return Observable.error(e);
  10. }
  11. });
  12. }

代码示例来源:origin: nurkiewicz/rxjava-book-examples

  1. @Test
  2. public void sample_35() throws Exception {
  3. CouchbaseAsyncCluster cluster = CouchbaseAsyncCluster.create();
  4. cluster
  5. .openBucket("travel-sample")
  6. .flatMap(cl -> cl.get("route_14197")
  7. .map(AbstractDocument::content)
  8. .map(jsonObject -> jsonObject.getArray("schedule")))
  9. .concatMapIterable(JsonArray::toList)
  10. .cast(Map.class)
  11. .filter(m -> ((Number) m.get("day")).intValue() == 0)
  12. .map(m -> m.get("flight").toString())
  13. .subscribe(flight -> System.out.println(flight));
  14. }

代码示例来源:origin: Microsoft/spring-cloud-azure

  1. @Test
  2. public void testSendReceiveWithRecordCheckpointMode() {
  3. setCheckpointConfig(CheckpointConfig.builder().checkpointMode(CheckpointMode.RECORD).build());
  4. AssertableSubscriber<User> subscriber =
  5. subscribe(destination, User.class).map(Message::getPayload).cast(User.class).test();
  6. Arrays.stream(messages).forEach(m -> sendSubscribeOperation.sendRx(destination, m));
  7. subscriber.assertValueCount(messages.length).assertNoErrors();
  8. verifyCheckpointSuccessCalled(messages.length);
  9. }

代码示例来源:origin: com.microsoft.azure/spring-integration-azure-test

  1. @Test
  2. public void testSendReceiveWithRecordCheckpointMode() {
  3. setCheckpointConfig(CheckpointConfig.builder().checkpointMode(CheckpointMode.RECORD).build());
  4. AssertableSubscriber<User> subscriber =
  5. subscribe(destination, User.class).map(Message::getPayload).cast(User.class).test();
  6. Arrays.stream(messages).forEach(m -> sendSubscribeOperation.sendRx(destination, m));
  7. subscriber.assertValueCount(messages.length).assertNoErrors();
  8. verifyCheckpointSuccessCalled(messages.length);
  9. }

代码示例来源:origin: Microsoft/spring-cloud-azure

  1. @Test
  2. public void testSendReceiveWithManualCheckpointMode() {
  3. setCheckpointConfig(CheckpointConfig.builder().checkpointMode(CheckpointMode.MANUAL).build());
  4. Observable<Message<?>> observable = subscribe(destination, User.class);
  5. AssertableSubscriber<User> userSubscriber = observable.map(Message::getPayload).cast(User.class).test();
  6. sendSubscribeOperation.sendRx(destination, userMessage);
  7. userSubscriber.assertValue(user).assertNoErrors();
  8. verifyCheckpointSuccessCalled(0);
  9. }

代码示例来源:origin: com.microsoft.azure/spring-integration-azure-test

  1. @Test
  2. public void testSendReceiveWithManualCheckpointMode() {
  3. setCheckpointConfig(CheckpointConfig.builder().checkpointMode(CheckpointMode.MANUAL).build());
  4. Observable<Message<?>> observable = subscribe(destination, User.class);
  5. AssertableSubscriber<User> userSubscriber = observable.map(Message::getPayload).cast(User.class).test();
  6. sendSubscribeOperation.sendRx(destination, userMessage);
  7. userSubscriber.assertValue(user).assertNoErrors();
  8. verifyCheckpointSuccessCalled(0);
  9. }

相关文章

Observable类方法