import lombok.extern.slf4j.Slf4j;
import org.glassfish.jersey.client.ClientConfig;
import org.onap.holmes.common.config.MicroServiceConfig;
+import org.onap.holmes.common.dcae.DcaeConfigurationQuery;
import org.onap.holmes.common.dcae.entity.DcaeConfigurations;
import org.onap.holmes.common.dcae.entity.Rule;
import org.onap.holmes.common.dcae.utils.DcaeConfigurationParser;
@Slf4j
public class DcaeConfigurationPolling implements Runnable {
- public static long POLLING_PERIOD = 10 * 1000L;
+ public static long POLLING_PERIOD = 30 * 1000L;
private String hostname;
- private String url = "http://127.0.0.1/api/holmes-rule-mgmt/v1/rule";
+ private String url = "http://127.0.0.1:9101/api/holmes-rule-mgmt/v1/rule";
public DcaeConfigurationPolling(String hostname) {
this.hostname = hostname;
public void run() {
DcaeConfigurations dcaeConfigurations = null;
try {
- dcaeConfigurations = getDcaeConfigurations();
+ dcaeConfigurations = DcaeConfigurationQuery.getDcaeConfigurations(hostname);
} catch (CorrelationException e) {
- log.error("Failed to fetch DCAE configurations" + e.getMessage());
+ log.error("Failed to fetch DCAE configurations. " + e.getMessage(), e);
}
if (dcaeConfigurations != null) {
RuleQueryListResponse ruleQueryListResponse = getAllCorrelationRules();
try {
addAllCorrelationRules(dcaeConfigurations);
} catch (CorrelationException e) {
- log.error("Failed to add rules" + e.getMessage());
+ log.error("Failed to add rules. " + e.getMessage());
}
}
}
- private DcaeConfigurations getDcaeConfigurations() throws CorrelationException {
- String serviceAddrInfo = MicroServiceConfig.getServiceAddrInfoFromCBS(hostname);
- String response = getDcaeResponse(serviceAddrInfo);
- DcaeConfigurations dcaeConfigurations = null;
- dcaeConfigurations = DcaeConfigurationParser.parse(response);
- return dcaeConfigurations;
- }
-
- private String getDcaeResponse(String serviceAddrInfo) {
- Client client = ClientBuilder.newClient(new ClientConfig());
- WebTarget webTarget = client.target(serviceAddrInfo);
- return webTarget.request("application/json").get()
- .readEntity(String.class);
- }
-
private RuleQueryListResponse getAllCorrelationRules() {
Client client = ClientBuilder.newClient(new ClientConfig());
WebTarget webTarget = client.target(url);