2  * ============LICENSE_START=======================================================
 
   4  * ================================================================================
 
   5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
 
   6  * ================================================================================
 
   7  * Licensed under the Apache License, Version 2.0 (the "License");
 
   8  * you may not use this file except in compliance with the License.
 
   9  * You may obtain a copy of the License at
 
  11  *      http://www.apache.org/licenses/LICENSE-2.0
 
  13  * Unless required by applicable law or agreed to in writing, software
 
  14  * distributed under the License is distributed on an "AS IS" BASIS,
 
  15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
  16  * See the License for the specific language governing permissions and
 
  17  * limitations under the License.
 
  18  * ============LICENSE_END=========================================================
 
  21 package org.openecomp.policy.drools.event.comm.bus.internal;
 
  23 import java.util.List;
 
  25 import org.openecomp.policy.drools.event.comm.Topic;
 
  26 import org.openecomp.policy.drools.event.comm.bus.UebTopicSource;
 
  29  * This topic source implementation specializes in reading messages
 
  30  * over an UEB Bus topic source and notifying its listeners
 
  32 public class SingleThreadedUebTopicSource extends SingleThreadedBusTopicSource 
 
  33                                           implements UebTopicSource {
 
  37          * @param servers UEB servers
 
  38          * @param topic UEB Topic to be monitored
 
  39          * @param apiKey UEB API Key (optional)
 
  40          * @param apiSecret UEB API Secret (optional)
 
  41          * @param consumerGroup UEB Reader Consumer Group
 
  42          * @param consumerInstance UEB Reader Instance
 
  43          * @param fetchTimeout UEB fetch timeout
 
  44          * @param fetchLimit UEB fetch limit
 
  45          * @param useHttps does topicSource use HTTPS?
 
  46          * @param allowSelfSignedCerts does topicSource allow self-signed certs?
 
  48          * @throws IllegalArgumentException An invalid parameter passed in
 
  52         public SingleThreadedUebTopicSource(List<String> servers, String topic, 
 
  53                                                     String apiKey, String apiSecret,
 
  54                                                     String consumerGroup, String consumerInstance, 
 
  55                                                     int fetchTimeout, int fetchLimit, boolean useHttps, boolean allowSelfSignedCerts)
 
  56                         throws IllegalArgumentException {
 
  58                 super(servers, topic, apiKey, apiSecret, 
 
  59                           consumerGroup, consumerInstance, 
 
  60                           fetchTimeout, fetchLimit, useHttps, allowSelfSignedCerts);
 
  62                 this.allowSelfSignedCerts = allowSelfSignedCerts;
 
  68          * Initialize the Cambria client
 
  73                         new BusConsumer.CambriaConsumerWrapper(this.servers, this.topic, 
 
  74                                                                    this.apiKey, this.apiSecret,
 
  75                                                                    this.consumerGroup, this.consumerInstance,
 
  76                                                                    this.fetchTimeout, this.fetchLimit, this.useHttps, this.allowSelfSignedCerts);
 
  83         public CommInfrastructure getTopicCommInfrastructure() {
 
  84                 return Topic.CommInfrastructure.UEB;
 
  89         public String toString() {
 
  90                 StringBuilder builder = new StringBuilder();
 
  91                 builder.append("SingleThreadedUebTopicSource [getTopicCommInfrastructure()=")
 
  92                                 .append(getTopicCommInfrastructure()).append(", toString()=").append(super.toString()).append("]");
 
  93                 return builder.toString();