FluxUtil Klasse
- java.
lang. Object - com.
azure. core. util. FluxUtil
- com.
public final class FluxUtil
Hilfsprogrammtyp, der Methoden für den Umgang mit Fluxverfügbar macht.
Methodenzusammenfassung
| Modifizierer und Typ | Methode und Beschreibung |
|---|---|
| static Flux<T> |
fluxContext(Function<Context,Flux<T>> serviceCall)
Diese Methode konvertiert den eingehenden |
| static Flux<T> |
fluxError(ClientLogger logger, RuntimeException ex)
Verteilt ein RuntimeException über den Fehlerkanal von Flux. |
| static Mono<T> |
monoError(ClientLogger logger, RuntimeException ex)
Verteilt ein RuntimeException über den Fehlerkanal von Mono. |
| static Mono<T> |
monoError(LoggingEventBuilder logBuilder, RuntimeException ex)
Verteilt ein RuntimeException über den Fehlerkanal von Mono. |
|
static
Paged |
pagedFluxError(ClientLogger logger, RuntimeException ex)
Verteilt ein RuntimeException über den Fehlerkanal von PagedFlux<T>. |
| static Mono<T> |
toMono(Response<T> response)
Konvertiert den eingehenden Inhalt in Mono. |
| static Mono<T> |
withContext(Function<Context,Mono<T>> serviceCall)
Diese Methode konvertiert die eingehenden |
| static Mono<T> |
withContext(Function<Context,Mono<T>> serviceCall, Map<String,String> contextAttributes)
Diese Methode konvertiert die eingehenden |
|
static
Flux<Byte |
addProgressReporting(Flux<ByteBuffer> flux, ProgressReporter progressReporter)
Fügt der von bereitgestellten FluxByteBufferStatusberichterstellung hinzu. |
| static byte[] |
byteBufferToArray(ByteBuffer byteBuffer)
Ruft den Inhalt des bereitgestellten Bytepuffers |
| static Mono<byte[]> |
collectBytesFromNetworkResponse(Flux<ByteBuffer> stream, HttpHeaders headers)
Erfasst Bytepuffer |
| static Mono<byte[]> |
collectBytesInByteBufferStream(Flux<ByteBuffer> stream)
Erfasst Bytepuffer |
| static Mono<byte[]> |
collectBytesInByteBufferStream(Flux<ByteBuffer> stream, int sizeHint)
Erfasst Bytepuffer |
|
static
Flux<Byte |
createRetriableDownloadFlux(Supplier<Flux<ByteBuffer>> downloadSupplier, BiFunction<Throwable,Long,Flux<ByteBuffer>> onDownloadErrorResume, RetryOptions retryOptions, long position)
Erstellt eine Flux , die einen Download fortsetzen kann, indem wiederholungslogik angewendet wird, wenn ein Fehler auftritt. |
|
static
Flux<Byte |
createRetriableDownloadFlux(Supplier<Flux<ByteBuffer>> downloadSupplier, BiFunction<Throwable,Long,Flux<ByteBuffer>> onDownloadErrorResume, int maxRetries)
Erstellt eine Flux , die einen Download fortsetzen kann, indem wiederholungslogik angewendet wird, wenn ein Fehler auftritt. |
|
static
Flux<Byte |
createRetriableDownloadFlux(Supplier<Flux<ByteBuffer>> downloadSupplier, BiFunction<Throwable,Long,Flux<ByteBuffer>> onDownloadErrorResume, int maxRetries, long position)
Erstellt eine Flux , die einen Download fortsetzen kann, indem wiederholungslogik angewendet wird, wenn ein Fehler auftritt. |
| static boolean |
isFluxByteBuffer(Type entityType)
Überprüft, ob ein Typ Flux<Byte |
|
static
Flux<Byte |
readFile(AsynchronousFileChannel fileChannel)
Erstellt ein Flux aus einem AsynchronousFileChannel , das die gesamte Datei liest. |
|
static
Flux<Byte |
readFile(AsynchronousFileChannel fileChannel, int chunkSize, long offset, long length)
Erstellt ein Flux aus einem AsynchronousFileChannel , das einen Teil einer Datei in Blöcke der angegebenen Größe liest. |
|
static
Flux<Byte |
readFile(AsynchronousFileChannel fileChannel, long offset, long length)
Erstellt ein Flux aus einem AsynchronousFileChannel , das einen Teil einer Datei liest. |
|
static
Flux<Byte |
toFluxByteBuffer(InputStream inputStream)
Konvertiert ein InputStream in ein Flux mit ByteBuffer einer Blockgröße von 4096. |
|
static
Flux<Byte |
toFluxByteBuffer(InputStream inputStream, int chunkSize)
Konvertiert ein InputStream in ein Flux von ByteBuffer. |
| static Context |
toReactorContext(Context context)
Konvertiert einen Azure-Kontext in den Reactor-Kontext. |
| static Mono<Void> |
writeFile(Flux<ByteBuffer> content, AsynchronousFileChannel outFile)
Schreibt das ByteBuffers von einem Flux ausgegebene von ByteBuffer in ein AsynchronousFileChannel. |
| static Mono<Void> |
writeFile(Flux<ByteBuffer> content, AsynchronousFileChannel outFile, long position)
Schreibt das ByteBuffers von einem Flux ausgegebene von ByteBuffer in ein AsynchronousFileChannel beginnt am |
| static Mono<Void> |
writeToAsynchronousByteChannel(Flux<ByteBuffer> content, AsynchronousByteChannel channel)
Schreibt das ByteBuffers von einem Flux ausgegebene von ByteBuffer in ein AsynchronousByteChannel. |
| static Mono<Void> |
writeToOutputStream(Flux<ByteBuffer> content, OutputStream stream)
Schreibt das ByteBuffers von einem Flux ausgegebene von ByteBuffer in ein OutputStream. |
| static Mono<Void> |
writeToWritableByteChannel(Flux<ByteBuffer> content, WritableByteChannel channel)
Schreibt das ByteBuffers von einem Flux ausgegebene von ByteBuffer in ein WritableByteChannel. |
Geerbte Methoden von java.lang.Object
Details zur Methode
fluxContext
public static Flux
Diese Methode konvertiert den eingehenden deferContextual von Reactor
Context in Azure Context , ruft die angegebene Lambdafunktion mit diesem Kontext auf und gibt eine Auflistung vom Typ zurück. T
Wenn der Reaktorkontext leer ist, wird verwendet, NONE um die Lambdafunktion aufzurufen.
Codebeispiele
String prefix = "Hello, ";
Flux<String> response = FluxUtil
.fluxContext(context -> serviceCallReturnsCollection(prefix, context));
Parameters:
Returns:
fluxError
public static Flux
Verteilt ein RuntimeException über den Fehlerkanal von Flux.
Parameters:
Returns:
monoError
public static Mono
Verteilt ein RuntimeException über den Fehlerkanal von Mono.
Parameters:
Returns:
monoError
public static Mono
Verteilt ein RuntimeException über den Fehlerkanal von Mono.
Parameters:
Returns:
pagedFluxError
public static PagedFlux
Verteilt ein RuntimeException über den Fehlerkanal von PagedFlux<T>.
Parameters:
Returns:
toMono
public static Mono
Konvertiert den eingehenden Inhalt in Mono.
Parameters:
Returns:
withContext
public static Mono
Diese Methode konvertiert die eingehenden deferContextual von in Azure ContextReactor
Context und ruft die angegebene Lambdafunktion mit diesem Kontext auf und gibt eine einzelne Entität vom Typ zurück.T
Wenn der Reaktorkontext leer ist, wird verwendet, NONE um die Lambdafunktion aufzurufen.
Codebeispiele
String prefix = "Hello, ";
Mono<String> response = FluxUtil
.withContext(context -> serviceCallReturnsSingle(prefix, context));
Parameters:
Returns:
withContext
public static Mono
Diese Methode konvertiert die eingehenden deferContextual von in Azure ContextReactor
Context , fügt die angegebenen Kontextattribute hinzu und ruft die angegebene Lambdafunktion mit diesem Kontext auf und gibt eine einzelne Entität vom Typ zurück.T
Wenn der Reaktorkontext leer ist, wird verwendet, NONE um die Lambdafunktion aufzurufen.
Parameters:
Returns:
addProgressReporting
public static Flux
Fügt der von bereitgestellten FluxByteBufferStatusberichterstellung hinzu.
Jedes ByteBuffer , das von ausgegeben Flux wird, meldet ByteBuffer#remaining().
Wenn Flux der Status erneut übermittelt wird, wird der Status zurückgesetzt. Wenn der Flussfluss nicht wiedergegeben werden kann, kann das erneute Senden zu leeren oder teilweisen Daten führen, dann ist die Fortschrittsberichterstattung möglicherweise nicht korrekt.
Wenn ProgressReporter nicht angegeben ist, d. h. ist, gibt nulldiese Methode nicht geändert zurück Flux.
Parameters:
Returns:
byteBufferToArray
public static byte[] byteBufferToArray(ByteBuffer byteBuffer)
Ruft den Inhalt des bereitgestellten ByteBuffer als Bytearray ab. Diese Methode erstellt ein neues Bytearray, auch wenn das ByteBuffer-Array optional unterstützt werden kann.
Parameters:
Returns:
collectBytesFromNetworkResponse
public static Mono
Erfasst die in einer Netzwerkantwort zurückgegebenen ByteBuffer in einem Bytearray.
Die headers werden überprüft, um einen Content-Length zu enthalten, der bestimmt, ob eine Größenhinweissammlung , collectBytesInByteBufferStream(Flux<ByteBuffer> stream, int sizeHint)oder Standardauflistung, collectBytesInByteBufferStream(Flux<ByteBuffer> stream)verwendet wird.
Parameters:
Returns:
collectBytesInByteBufferStream
public static Mono
Erfasst ByteBuffers, die von einem Flux in ein Bytearray ausgegeben werden.
Parameters:
Returns:
collectBytesInByteBufferStream
public static Mono
Erfasst ByteBuffers, die von einem Flux in ein Bytearray ausgegeben werden.
Im Gegensatz akzeptiert collectBytesInByteBufferStream(Flux<ByteBuffer> stream)diese Methode einen zweiten Parameter sizeHint. Dieser Größenhinweis ermöglicht Optimierungen beim Erstellen des anfänglichen Puffers, um die Anzahl der Größenänderungen beim Verketten ausgegebener ByteBuffers zu verringern.
Parameters:
Returns:
createRetriableDownloadFlux
public static Flux
Erstellt eine Flux , die einen Download fortsetzen kann, indem wiederholungslogik angewendet wird, wenn ein Fehler auftritt.
Parameters:
Returns:
createRetriableDownloadFlux
public static Flux
Erstellt eine Flux , die einen Download fortsetzen kann, indem wiederholungslogik angewendet wird, wenn ein Fehler auftritt.
Parameters:
Returns:
createRetriableDownloadFlux
public static Flux
Erstellt eine Flux , die einen Download fortsetzen kann, indem wiederholungslogik angewendet wird, wenn ein Fehler auftritt.
Parameters:
Returns:
isFluxByteBuffer
public static boolean isFluxByteBuffer(Type entityType)
Überprüft, ob ein Typ Flux ist.
Parameters:
Returns:
readFile
public static Flux
Erstellt ein Flux aus einem AsynchronousFileChannel , das die gesamte Datei liest.
Parameters:
Returns:
readFile
public static Flux
Erstellt ein Flux aus einem AsynchronousFileChannel , das einen Teil einer Datei in Blöcke der angegebenen Größe liest.
Parameters:
Returns:
readFile
public static Flux
Erstellt ein Flux aus einem AsynchronousFileChannel , das einen Teil einer Datei liest.
Parameters:
Returns:
toFluxByteBuffer
public static Flux
Konvertiert ein InputStream in ein Flux mit ByteBuffer einer Blockgröße von 4096.
Da nicht garantiert ist, dass InputStream sie wiederverspielbar sind, sollte der zurückgegebene Flux auch als nicht wiederverspielt werden.
Wenn das bestandene InputStream zurückgegeben wird nullFlux#empty() .
Parameters:
Returns:
toFluxByteBuffer
public static Flux
Konvertiert ein InputStream in ein Flux von ByteBuffer.
Da nicht garantiert ist, dass InputStream sie wiederverspielbar sind, sollte der zurückgegebene Flux auch als nicht wiederverspielt werden.
Wenn das bestandene InputStream zurückgegeben wird nullFlux#empty() .
Parameters:
Returns:
toReactorContext
public static Context toReactorContext(Context context)
Konvertiert einen Azure-Kontext in den Reactor-Kontext. Wenn der Azure-Kontext leer ist null , wird Context#empty() zurückgegeben.
Parameters:
Returns:
writeFile
public static Mono
Schreibt das ByteBuffers von einem Flux ausgegebene von ByteBuffer in ein AsynchronousFileChannel.
Der outFile wird durch diesen Aufruf nicht geschlossen, das outFile Schließen von wird vom Aufrufer verwaltet.
Die Antwort Mono gibt einen Fehler aus, wenn content oder outFile NULL ist. Darüber hinaus wird ein Fehler ausgegeben, wenn der outFile nicht mit den richtigen geöffneten Optionen geöffnet wurde, z. B StandardOpenOption#WRITE. .
Parameters:
Returns:
writeFile
public static Mono
Schreibt das ByteBuffers von einem Flux ausgegebene von ByteBuffer in ein AsynchronousFileChannel beginnt am position angegebenen in der Datei.
Der outFile wird durch diesen Aufruf nicht geschlossen, das outFile Schließen von wird vom Aufrufer verwaltet.
Die Antwort Mono gibt einen Fehler aus, wenn content oder outFile NULL oder position kleiner als 0 ist. Darüber hinaus wird ein Fehler ausgegeben, wenn der outFile nicht mit den richtigen geöffneten Optionen geöffnet wurde, z. B StandardOpenOption#WRITE. .
Parameters:
contentgeschrieben werden soll.
Returns:
writeToAsynchronousByteChannel
public static Mono
Schreibt das ByteBuffers von einem Flux ausgegebene von ByteBuffer in ein AsynchronousByteChannel.
Der channel wird durch diesen Aufruf nicht geschlossen, das channel Schließen von wird vom Aufrufer verwaltet.
Die Antwort Mono gibt einen Fehler aus, wenn content oder channel NULL ist.
Parameters:
Returns:
writeToOutputStream
public static Mono
Schreibt das ByteBuffers von einem Flux ausgegebene von ByteBuffer in ein OutputStream.
Der stream wird durch diesen Aufruf nicht geschlossen, das stream Schließen von wird vom Aufrufer verwaltet.
Die Antwort Mono gibt einen Fehler aus, wenn content oder stream NULL ist. Darüber hinaus wird ein Fehler ausgegeben, wenn beim Schreiben von eine contentstreamAusnahme auftritt.
Parameters:
Returns:
writeToWritableByteChannel
public static Mono
Schreibt das ByteBuffers von einem Flux ausgegebene von ByteBuffer in ein WritableByteChannel.
Der channel wird durch diesen Aufruf nicht geschlossen, das channel Schließen von wird vom Aufrufer verwaltet.
Die Antwort Mono gibt einen Fehler aus, wenn content oder channel NULL ist.
Parameters:
Returns: