// Copyright (c) Microsoft Corporation. All rights reserved. // StreamingMiddlewareExtension.cs namespace AutoGen.Core; public static class StreamingMiddlewareExtension { /// /// Register an to an existing and return a new agent with the registered middleware. /// For registering an , please refer to /// public static MiddlewareStreamingAgent RegisterStreamingMiddleware( this TStreamingAgent agent, IStreamingMiddleware middleware) where TStreamingAgent : IStreamingAgent { var middlewareAgent = new MiddlewareStreamingAgent(agent); middlewareAgent.UseStreaming(middleware); return middlewareAgent; } /// /// Register an to an existing and return a new agent with the registered middleware. /// For registering an , please refer to /// public static MiddlewareStreamingAgent RegisterStreamingMiddleware( this MiddlewareStreamingAgent agent, IStreamingMiddleware middleware) where TAgent : IStreamingAgent { var copyAgent = new MiddlewareStreamingAgent(agent); copyAgent.UseStreaming(middleware); return copyAgent; } }