kinesisAnalyticsAppHelper.prototype.startApplication = function()

in source/custom-resource/lib/kinesis-helper.js [40:89]


    kinesisAnalyticsAppHelper.prototype.startApplication = function(ApplicationName, region, cb) {
        console.log(['Looking up Kinesis Data Analytics application:', ApplicationName].join(' '));
        
        AWS.config.update({region: region})

        let ka = new AWS.KinesisAnalytics();

        var params = {
          ApplicationName: ApplicationName
        };

        ka.describeApplication(params, function(err, response) {
          console.log('response: ', response);
          if (err) {
            console.log(['Failed to describe application:', err].join(' '));
            return cb(err, null);
          } else {
            if (response == null) {
              console.log(['Could not find application:', ApplicationName].join(' '));
              return cb(['Kinesis Data Analytics application,', ApplicationName, ', could not be found!'].join(' '), null);
            }
            if (response.ApplicationDetail.ApplicationStatus === 'READY') {

                // Start App
                params = {
                  ApplicationName: ApplicationName,
                  InputConfigurations: [
                    {
                      'Id': '1.1',
                      'InputStartingPositionConfiguration': {
                          'InputStartingPosition': 'NOW'
                      }
                    }
                  ]
                };
                console.log("Starting application");
                ka.startApplication(params, function(err, response) {
                  if (err) {
                    console.log(['Failed to start application', item.ApplicationName, ': ', err].join(' '));
                    return cb(err, null);
                  } else {
                    return cb(null, "SUCCESS");
                  }
                });
            } else {
              return cb(['Kinesis Data Analytics Application was not in READY state (app status === ', response.ApplicationDetail.ApplicationStatus,')'].join(''), null);
            }
          }
        });
    };