2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2018 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=========================================================
20 package org.onap.dmaap.dbcapi.model;
22 import org.onap.dmaap.dbcapi.util.RandomInteger;
24 import static org.junit.Assert.*;
26 import java.lang.reflect.Constructor;
27 import java.lang.reflect.InvocationTargetException;
28 import java.lang.reflect.Method;
29 import java.lang.reflect.Type;
31 import org.junit.After;
32 import org.junit.Before;
33 import org.junit.Test;
35 import static java.lang.System.out;
36 import static java.lang.System.err;
38 public class DmaapObjectFactory {
41 * we use localhost for most references so that connection attempts will resolve and not retry
42 * but still we expect that requests will fail.
44 private static final String fmt = "%24s: %s%n";
45 private static final String dmaap_name = "onap-ut";
46 private static final String dmaap_ver = "1";
47 private static final String dmaap_topic_root = "org.onap.dmaap";
48 private static final String dmaap_dr = "https://localhost:8443";
49 private static final String dmaap_log_url = "http://localhost:8080/log";
50 private static final String dmaap_mm_topic = "org.onap.dmaap.dcae.MM_AGENT_TOPIC";
51 private static final String central_loc = "SanFrancisco";
52 private static final String central_layer = "central-cloud";
53 private static final String central_clli = "SFCAL19240";
54 private static final String central_zone = "osaz01";
55 private static final String central_subnet = "10.10.10.0/24";
56 private static final String central_cluster_fqdn = "localhost";
57 private static final String pub_role = "org.onap.vnfapp.publisher";
58 private static final String sub_role = "org.onap.vnfapp.subscriber";
59 private static final String edge_loc = "Atlanta";
60 private static final String edge_layer = "edge-cloud";
61 private static final String edge_clli = "ATLGA10245";
62 private static final String edge_zone = "osaz02";
63 private static final String edge_subnet = "10.10.20.0/24";
64 private static final String edge_cluster_fqdn = "localhost";
65 private static final String[]hosts = { "host1", "host2", "host3" };
67 public Dmaap genDmaap() {
68 return new Dmaap( dmaap_ver, dmaap_topic_root, dmaap_name, dmaap_dr, dmaap_log_url, dmaap_mm_topic, "nk", "ako" );
71 public DcaeLocation genDcaeLocation( String layer ) {
72 if ( layer.contains( "edge" ) ) {
73 return new DcaeLocation( edge_clli, edge_layer, edge_loc, edge_zone, edge_subnet );
75 return new DcaeLocation( central_clli, central_layer, central_loc, central_zone, central_subnet );
79 public MR_Cluster genMR_Cluster( String layer ) {
80 if ( layer.contains( "edge" ) ) {
81 return new MR_Cluster( edge_loc, edge_cluster_fqdn, "ignore", hosts );
83 return new MR_Cluster( central_loc, central_cluster_fqdn, "ignore", hosts );
86 public Topic genSimpleTopic( String tname ) {
87 Topic t = new Topic();
88 t.setTopicName( tname );
89 t.setFqtnStyle( FqtnType.Validator("none") );
94 public MR_Client genMR_Client( String l, String f, String r, String[] a ) {
95 if ( l.contains( "edge" ) ) {
96 return new MR_Client( edge_loc, f, r, a );
98 return new MR_Client( central_loc, f, r, a );
101 public MR_Client genPublisher( String layer, String fqtn ) {
102 String[] actions = { "pub", "view" };
103 return genMR_Client( layer, fqtn, pub_role, actions );
105 public MR_Client genSubscriber( String layer, String fqtn ) {
106 String[] actions = { "sub", "view" };
107 return genMR_Client( layer, fqtn, sub_role, actions );
110 public DR_Sub genDrSub( String l, String feed ) {
112 String up = "secretW0rd";
113 String du = "sub.server.onap.org:8443/deliver/here";
114 String lu = "https://drps.onap.org:8443/sublog/123";
117 if ( l.contains( "edge" ) ) {
118 return new DR_Sub( edge_loc, un, up, feed, du, lu, u100 );
120 return new DR_Sub( central_loc, un, up, feed, du, lu, u100 );
123 public DR_Node genDR_Node( String l ) {
124 String version = "1.0.1";
125 RandomInteger ri = new RandomInteger( 1000 );
127 String fqdn = String.format( "drns%d.onap.org", i );
128 String host = String.format( "host%d.onap.org", i );
130 if ( l.contains( "edge" ) ) {
131 return new DR_Node( fqdn, edge_loc, host, version );
133 return new DR_Node( fqdn, central_loc, host, version );