Skip to content

Commit b628ba1

Browse files
SantoshNC68SANTOSH NC
and
SANTOSH NC
authored
RabbitMQ queue bindings missing due to update in spring boot version (#513)
* Modified code to support binding key generation to EI queue * Changed logger statement from info to debug * Changed some logger statements * Updated pom.xml for new release Co-authored-by: SANTOSH NC <[email protected]>
1 parent 5e0ee5a commit b628ba1

File tree

5 files changed

+18
-14
lines changed

5 files changed

+18
-14
lines changed

pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<modelVersion>4.0.0</modelVersion>
77
<groupId>com.github.ericsson</groupId>
88
<artifactId>eiffel-intelligence</artifactId>
9-
<version>3.2.1</version>
9+
<version>3.2.2</version>
1010
<packaging>war</packaging>
1111

1212
<parent>

src/main/java/com/ericsson/ei/handlers/EventToObjectMapHandler.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -183,14 +183,14 @@ public ArrayList<String> getEventToObjectList(String eventId) {
183183
public boolean deleteEventObjectMap(String templateName) {
184184
String queryString = "{\"objects\": { \"$in\" : [/.*" + templateName + "/]} }";
185185
MongoStringQuery query = new MongoStringQuery(queryString);
186-
LOGGER.info("The JSON query for deleting aggregated object is : {}", query);
186+
LOGGER.debug("The JSON query for deleting aggregated object is : {}", query);
187187
return mongodbhandler.dropDocument(databaseName, collectionName, query);
188188
}
189189

190190
public boolean isEventInEventObjectMap(String eventId) {
191191
String condition = "{\"objects\": { \"$in\" : [\"" + eventId + "\"]} }";
192192
MongoStringQuery query = new MongoStringQuery(condition);
193-
LOGGER.info("The JSON query for isEventInEventObjectMap is : {}", query);
193+
LOGGER.debug("The JSON query for isEventInEventObjectMap is : {}", query);
194194
List<String> documents = mongodbhandler.find(databaseName, collectionName, query);
195195
return !documents.isEmpty();
196196
}

src/main/java/com/ericsson/ei/handlers/ObjectHandler.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -313,7 +313,7 @@ private boolean isInvalidId(String id) {
313313

314314
private void postInsertActions(String aggregatedObject, RulesObject rulesObject, String event,
315315
String id) {
316-
LOGGER.info("Updating the event object map with event id: " + id + " event is : " + event);
316+
LOGGER.debug("Updating the event object map with event id: " + id + " event is : " + event);
317317
eventToObjectMap.updateEventToObjectMapInMemoryDB(rulesObject, event, id, getTtl());
318318
}
319319

src/main/java/com/ericsson/ei/handlers/RMQHandler.java

+12-8
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@
2929
import org.springframework.amqp.core.Binding;
3030
import org.springframework.amqp.core.Binding.DestinationType;
3131
import org.springframework.amqp.core.BindingBuilder;
32+
import org.springframework.amqp.core.Declarable;
33+
import org.springframework.amqp.core.Declarables;
3234
import org.springframework.amqp.core.Queue;
3335
import org.springframework.amqp.core.TopicExchange;
3436
import org.springframework.amqp.rabbit.connection.CachingConnectionFactory;
@@ -198,14 +200,16 @@ protected Binding binding() {
198200
}
199201

200202
@Bean
201-
public List<Binding> bindings() {
203+
public Declarables bindings() {
202204
String[] bindingKeysArray = splitBindingKeys(rmqProperties.getBindingKeys());
203-
List<Binding> bindingList = new ArrayList<Binding>();
205+
List<Binding> bindingsList = new ArrayList<Binding>();
206+
List<Declarable> bindingList = new ArrayList<Declarable>();
204207
for (String bindingKey : bindingKeysArray) {
208+
bindingsList.add(BindingBuilder.bind(externalQueue()).to(exchange()).with(bindingKey));
205209
bindingList.add(BindingBuilder.bind(externalQueue()).to(exchange()).with(bindingKey));
206210
}
207-
deleteBindings(bindingKeysArray,bindingList);
208-
return bindingList;
211+
deleteBindings(bindingKeysArray,bindingsList);
212+
return new Declarables(bindingList);
209213
}
210214

211215
private boolean isRMQCredentialsSet() {
@@ -225,7 +229,7 @@ private String[] splitBindingKeys(String bindingKeys) {
225229
* Binding key which is not present in the current AMQPBindingObjectList gets deleted and removed from mongoDB.
226230
* @return
227231
*/
228-
private void deleteBindings(String[] newBindingKeysArray, List<Binding> AMQPBindingObjectList) {
232+
private void deleteBindings(String[] newBindingKeysArray, List<Binding> amqpBindingObjectList) {
229233
// Creating BindingKeys Collection in mongoDB
230234
ArrayList<String> allDocuments = mongoDBHandler.getAllDocuments(dataBaseName, collectionName);
231235
ArrayList<String> existingBindingsData = new ArrayList<String>();
@@ -250,16 +254,16 @@ private void deleteBindings(String[] newBindingKeysArray, List<Binding> AMQPBind
250254
}
251255
}
252256
// to store the binding keys used for rabbitMQ, in mongo db.
253-
storeNewBindingKeys(existingBindingsData, AMQPBindingObjectList);
257+
storeNewBindingKeys(existingBindingsData, amqpBindingObjectList);
254258
}
255259

256260
/**
257261
* This method is used to store the binding keys used for rabbitMQ, in mongoDB.
258262
* @return
259263
*/
260-
private void storeNewBindingKeys(ArrayList<String> existingBindingsData, List<Binding> AMQPBindingObjectList){
264+
private void storeNewBindingKeys(ArrayList<String> existingBindingsData, List<Binding> amqpBindingObjectList){
261265
// comparing with the stored key and adding the new binding key into the mongoDB.
262-
for(final Binding bindingKey:AMQPBindingObjectList){
266+
for(final Binding bindingKey:amqpBindingObjectList){
263267
if(existingBindingsData.contains(bindingKey.getRoutingKey())){
264268
LOGGER.info("Binding already present in mongoDB");
265269
}else{

src/main/java/com/ericsson/ei/subscription/RunSubscription.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ public boolean runSubscriptionOnObject(String aggregatedObject, Iterator<JsonNod
9494

9595
JsonNode requirement = requirementIterator.next();
9696

97-
LOGGER.info("The fulfilled requirement which condition will check is : {}", requirement.toString());
97+
LOGGER.debug("The fulfilled requirement which condition will check is : {}", requirement.toString());
9898
ArrayNode conditions = (ArrayNode) requirement.get("conditions");
9999

100100
count_condition_fulfillment = 0;
@@ -141,7 +141,7 @@ public boolean runSubscriptionOnObject(String aggregatedObject, Iterator<JsonNod
141141
}
142142

143143
LOGGER.info("The final value of conditionFulfilled is : {} for aggregation object id: {} and Subscription: {}",
144-
conditionFulfilled, id);
144+
conditionFulfilled, id, subscriptionName);
145145

146146
return conditionFulfilled;
147147
}

0 commit comments

Comments
 (0)