Initial commit for AAI-UI(sparky-backend)
[aai/sparky-be.git] / src / main / java / org / openecomp / sparky / viewandinspect / EntityTypeAggregation.java
1 /**
2  * ============LICENSE_START===================================================
3  * SPARKY (AAI UI service)
4  * ============================================================================
5  * Copyright © 2017 AT&T Intellectual Property.
6  * Copyright © 2017 Amdocs
7  * All rights reserved.
8  * ============================================================================
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  *      http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  * ============LICENSE_END=====================================================
21  *
22  * ECOMP and OpenECOMP are trademarks
23  * and service marks of AT&T Intellectual Property.
24  */
25
26 package org.openecomp.sparky.viewandinspect;
27
28 import com.fasterxml.jackson.core.JsonProcessingException;
29
30 import java.util.concurrent.ConcurrentHashMap;
31 import java.util.concurrent.atomic.AtomicInteger;
32
33 import org.openecomp.sparky.util.NodeUtils;
34
35 /**
36  * The Class EntityTypeAggregation.
37  */
38 public class EntityTypeAggregation {
39
40   private ConcurrentHashMap<String, AtomicInteger> counters;
41
42   /**
43    * Instantiates a new entity type aggregation.
44    */
45   public EntityTypeAggregation() {
46     counters = new ConcurrentHashMap<String, AtomicInteger>();
47   }
48
49   /**
50    * Peg counter.
51    *
52    * @param counterName the counter name
53    */
54   public void pegCounter(String counterName) {
55     counters.putIfAbsent(counterName, new AtomicInteger(0));
56     counters.get(counterName).incrementAndGet();
57   }
58
59   public ConcurrentHashMap<String, AtomicInteger> getCounters() {
60     return counters;
61   }
62
63   /**
64    * The main method.
65    *
66    * @param args the arguments
67    * @throws JsonProcessingException the json processing exception
68    */
69   public static void main(String[] args) throws JsonProcessingException {
70     // TODO Auto-generated method stub
71
72     EntityTypeAggregation eta = new EntityTypeAggregation();
73
74     eta.pegCounter("c1");
75     eta.pegCounter("c1");
76     eta.pegCounter("c1");
77
78     eta.pegCounter("x2");
79     eta.pegCounter("x2");
80     eta.pegCounter("x2");
81     eta.pegCounter("x2");
82
83     eta.pegCounter("z2");
84     eta.pegCounter("z2");
85     eta.pegCounter("z2");
86     eta.pegCounter("z2");
87     eta.pegCounter("z2");
88     eta.pegCounter("z2");
89
90     System.out.println(NodeUtils.convertObjectToJson(eta, true));
91
92   }
93
94 }