import java.util.HashMap;
import java.util.Map;
public class MessageQueueDiagnostics {
private Map<String, Integer> queueErrors = new HashMap<>(); // Queue name -> Error count
public void addError(String queueName) {
queueErrors.put(queueName, queueErrors.getOrDefault(queueName, 0) + 1);
}
public Map<String, Integer> getQueueErrors() {
return new HashMap<>(queueErrors); // Return a copy to prevent external modification
}
public void printDiagnostics() {
if (queueErrors.isEmpty()) {
System.out.println("No queue errors detected.");
return;
}
System.out.println("Queue Error Diagnostics:");
for (Map.Entry<String, Integer> entry : queueErrors.entrySet()) {
System.out.println(" " + entry.getKey() + ": " + entry.getValue() + " errors");
}
}
public static void main(String[] args) {
MessageQueueDiagnostics diagnostics = new MessageQueueDiagnostics();
// Simulate some errors
diagnostics.addError("queue1");
diagnostics.addError("queue2");
diagnostics.addError("queue1");
diagnostics.addError("queue3");
diagnostics.printDiagnostics();
Map<String, Integer> errors = diagnostics.getQueueErrors();
System.out.println("\nError counts: " + errors);
}
}
Add your comment