Package org.eclipse.microprofile.fault.tolerance.tck.asynchronous.fallback

# Class AsyncFallbackClient

java.lang.Object
org.eclipse.microprofile.fault.tolerance.tck.asynchronous.fallback.AsyncFallbackClient

@RequestScoped public class AsyncFallbackClient extends Object

## Constructor Summary

Constructors
Constructor
Description
`AsyncFallbackClient()`

## Method Summary

Modifier and Type
Method
Description
`Future<String>`
`fallback()`
`CompletionStage<String>`
`fallbackCS()`
`Future<String>`
`service1()`
Returns a Future which always completes successfully, so should NOT fallback.
`Future<String>`
`service2()`
Always throws an exception directly, so should fallback.
`Future<String>`
`service3()`
Returns a Future which always completes exceptionally, but the return type is Future, so should NOT fallback.
`CompletionStage<String>`
`serviceCS1()`
Returns a CompletionStage which always completes successfully, so should NOT fallback.
`CompletionStage<String>`
`serviceCS2()`
Always throws an exception directly, so should fallback.
`CompletionStage<String>`
`serviceCS3()`
Returns a CompletionStage which always completes exceptionally, so should fallback.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### AsyncFallbackClient

public AsyncFallbackClient()

## Method Details

### service1

@Asynchronous @Fallback(fallbackMethod="fallback") public Future<String> service1()
Returns a Future which always completes successfully, so should NOT fallback.

### service2

@Asynchronous @Fallback(fallbackMethod="fallback") public Future<String> service2() throws IOException
Always throws an exception directly, so should fallback.

Throws:
  `IOException`

### service3

@Asynchronous @Fallback(fallbackMethod="fallback") public Future<String> service3()
Returns a Future which always completes exceptionally, but the return type is Future, so should NOT fallback.

### fallback

public Future<String> fallback()

### serviceCS1

@Asynchronous @Fallback(fallbackMethod="fallbackCS") public CompletionStage<String> serviceCS1()
Returns a CompletionStage which always completes successfully, so should NOT fallback.

### serviceCS2

@Asynchronous @Fallback(fallbackMethod="fallbackCS") public CompletionStage<String> serviceCS2() throws IOException
Always throws an exception directly, so should fallback.

Throws:
  `IOException`

### serviceCS3

@Asynchronous @Fallback(fallbackMethod="fallbackCS") public CompletionStage<String> serviceCS3()
Returns a CompletionStage which always completes exceptionally, so should fallback.

### fallbackCS

public CompletionStage<String> fallbackCS()