Пример #1
0
        /// <summary>
        /// Start web host.
        /// </summary>
        /// <returns>IHost task.</returns>
        private async Task <IHost> StartHostAsync()
        {
            var localSettings = new Dictionary <string, string>
            {
                ["AzureWebJobsStorage"] = "UseDevelopmentStorage=true",
            };

            var host = new HostBuilder()
                       .ConfigureWebJobs(builder =>
            {
                var serviceOperationProvider = new ServiceOperationsProvider();
                var operationProvider        = new ActiveMQTriggerServiceOperationProvider();
                builder.AddExtension(new ActiveMQServiceProvider(serviceOperationProvider, operationProvider));
                builder.Services.TryAddSingleton <ActiveMQTriggerServiceOperationProvider>();
            })
                       .ConfigureLogging(b =>
            {
                b.AddProvider(this.loggerProvider);
            })
                       .ConfigureAppConfiguration(c =>
            {
                c.AddInMemoryCollection(new[]
                {
                    new KeyValuePair <string, string>("AzureWebJobsStorage", "UseDevelopmentStorage=true"),
                    new KeyValuePair <string, string>("FUNCTIONS_WORKER_RUNTIME", "dotnet"),
                });
            })
                       .Build();

            await host.StartAsync();

            return(host);
        }
Пример #2
0
        public void OperationTriggerCapabilityTest()
        {
            var operations    = new ActiveMQTriggerServiceOperationProvider();
            var apiCapability = operations.GetService().Properties.Capabilities as ApiCapability[];

            Assert.Single(apiCapability);
            Assert.Equal(ApiCapability.Triggers, apiCapability[0]);
            this.outputLogger.WriteLine("Connector supports only trigger");
        }
Пример #3
0
        public void OperationConnectionParametersTest()
        {
            var operations                 = new ActiveMQTriggerServiceOperationProvider();
            var connectionParameters       = operations.GetService().Properties.ConnectionParameters as ConnectionParameters;
            var connectionStringParameters = "{\"brokerUri\": {\"type\": \"securestring\",\"parameterSource\": \"AppConfiguration\",        \"uiDefinition\": {            \"displayName\": \"BrokerUri\",            \"tooltip\": \"eg.  amqp://127.0.0.1:5672\",            \"constraints\": {                \"required\": \"true\"            },            \"description\": \"eg.  amqp://127.0.0.1:5672\"        }    },    \"clientId\": {        \"type\": \"string\",        \"parameterSource\": \"AppConfiguration\",        \"uiDefinition\": {            \"displayName\": \"ClientId\",            \"constraints\": {                \"required\": \"true\"            }        }    },    \"userName\": {        \"type\": \"securestring\",        \"parameterSource\": \"AppConfiguration\",        \"uiDefinition\": {            \"displayName\": \"User Name\",            \"constraints\": {                \"required\": \"true\"            }        }    },    \"password\": {        \"type\": \"securestring\",        \"parameterSource\": \"AppConfiguration\",        \"uiDefinition\": {            \"displayName\": \"Password\",            \"constraints\": {                \"required\": \"true\"            }        }    }}";

            var connectionParametersJsonSrting         = connectionParameters.ToJson().Replace(" ", "");
            var expectedConnectionParametersJsonSrting = connectionStringParameters.Replace(" ", "");

            Assert.Equal(connectionParametersJsonSrting, expectedConnectionParametersJsonSrting);
            this.outputLogger.WriteLine("Connection parameters are matched");
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="ActiveMQServiceProvider"/> class.
 /// </summary>
 /// <param name="serviceOperationsProvider">The service provider.</param>
 /// <param name="operationsProvider">The operations provider.</param>
 public ActiveMQServiceProvider(
     ServiceOperationsProvider serviceOperationsProvider,
     ActiveMQTriggerServiceOperationProvider operationsProvider)
 {
     serviceOperationsProvider.RegisterService(serviceName: ActiveMQTriggerServiceOperationProvider.ServiceName, serviceOperationsProviderId: ActiveMQTriggerServiceOperationProvider.ServiceId, serviceOperationsProviderInstance: operationsProvider);
 }