//----------------------------------------------------------------------------------------------------------------------------------------------------- public static IMicroserviceHostBuilder UseMessageProtocol <TProtocol>(this IMicroserviceHostBuilder hostBuilder) where TProtocol : MessageProtocol { hostBuilder.ContributeComponents((existingComponents, newComponents) => { newComponents.ContributeMessageProtocol <TProtocol>(); }); return(hostBuilder); }
//----------------------------------------------------------------------------------------------------------------------------------------------------- public static IMicroserviceHostBuilder AutoDiscoverComponents(this IMicroserviceHostBuilder builder) { return(builder .ContributeComponents((existingComponents, newComponents) => { newComponents.ContributeTransactionScript <HelloWorldTx>(); newComponents.ContributeWebApp <HelloWorldApp>(urlPathBase: "/"); }) .UseApplicationFeature <GeneratedCodePrototypesFeatureLoader>()); }
//----------------------------------------------------------------------------------------------------------------------------------------------------- public static IMicroserviceHostBuilder UseRestApiHttpEndpoint <TProtocol>(this IMicroserviceHostBuilder hostBuilder, int?listenPortNumber = null) where TProtocol : MessageProtocol { hostBuilder.ContributeComponents((existingComonents, newComponents) => { newComponents .ContributeHttpEndpoint("rest-api", listenPortNumber: listenPortNumber) .ServeRestApiRequests <TProtocol>(); }); return(hostBuilder); }