server.js 1.56 KB
/*
 * Copyright © 2016-2020 The Thingsboard Authors
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

const config = require('config'), logger = require('./config/logger')._logger('main');

const serviceType = config.get('service-type');
switch (serviceType) {
    case 'kafka':
        logger.info('Starting kafka template.');
        require('./queue/kafkaTemplate');
        logger.info('kafka template is started.');
        break;
    case 'pubsub':
        logger.info('Starting Pub/Sub template.')
        require('./queue/pubSubTemplate');
        logger.info('Pub/Sub template is started.')
        break;
    case 'aws-sqs':
        logger.info('Starting Aws Sqs template.')
        require('./queue/awsSqsTemplate');
        logger.info('Aws Sqs template is started.')
        break;
    case 'rabbitmq':
        logger.info('Starting RabbitMq template.')
        require('./queue/rabbitmqTemplate');
        logger.info('RabbitMq template is started.')
        break;
    default:
        logger.error('Unknown service type: ', serviceType);
        process.exit(-1);
}