예제 #1
0
    protected override async Task ExecuteAsync(CancellationToken cancel)
    {
        try
        {
            String LocalAMSNetID   = _settings.Value.LocalAMSNetID;
            String TargetAMSNetID  = _settings.Value.TargetAMSNetID;
            String TargetIPAddress = _settings.Value.TargetIPAddress;
            //_logger.LogInformation("Local AMS Net ID: {0}", LocalAMSNetID);
            //_logger.LogInformation("Target AMS Net ID: {0}", TargetAMSNetID);
            //_logger.LogInformation("Target IP Address: {0}", TargetIPAddress);

            //Use this overload to instantiate a Router without support of StaticRoutes.xml and parametrize by code
            AmsTcpIpRouter router = new AmsTcpIpRouter(new AmsNetId(LocalAMSNetID), AmsTcpIpRouter.DEFAULT_TCP_PORT, System.Net.IPAddress.Loopback, AmsTcpIpRouter.DEFAULT_TCP_PORT, _logger);
            router.RouterStatusChanged += Router_RouterStatusChanged;

            Route route = new Route("Target", new AmsNetId(TargetAMSNetID), TargetIPAddress);
            //_logger.LogInformation("Route Resolved?: {0}", route.IsResolved);


            router.AddRoute(route);

            await router.StartAsync(cancel); // Start the router
        }
        catch (Exception ex)
        {
            _logger.LogError(ex.Message);
        }
    }
예제 #2
0
        protected override async Task ExecuteAsync(CancellationToken cancel)
        {
            logger.LogDebug("");
            logger.LogDebug("Application Directories");
            logger.LogDebug("=======================");
            logger.LogDebug("ApplicationPath: " + Environment.GetCommandLineArgs()[0]);
            logger.LogDebug("BaseDirectory: " + AppContext.BaseDirectory);
            logger.LogDebug("CurrentDirectory: " + Directory.GetCurrentDirectory());
            logger.LogDebug("");
            logger.LogDebug("Configuration");
            logger.LogDebug("=============");
            logger.LogDebug("ASPNETCORE_ENVIRONMENT: " + ConfigurationBinder.GetValue(configuration, "ASPNETCORE_ENVIRONMENT", "Production"));
            logger.LogDebug("");
            amsTcpIpRouter = new AmsTcpIpRouter(logger, configuration);
            amsTcpIpRouter.RouterStatusChanged += Router_RouterStatusChanged;

            await amsTcpIpRouter.StartAsync(cancel);
        }