public ActiveMQDestination mapToDurableSubFQQN()

in activemq-kahadb-exporter/src/main/java/org/apache/activemq/cli/kahadb/exporter/ExportConfiguration.java [112:144]


    public ActiveMQDestination mapToDurableSubFQQN(ActiveMQDestination destination) {

        if (vtConsumerDestinationMatchers.isEmpty()) {
            return destination;
        }

        for (Map.Entry<DestinationFilter, Integer> candidate : vtConsumerDestinationMatchers.entrySet()) {
            if (candidate.getKey().matches(destination)) {
                // convert to matching FQQN
                String[] paths = DestinationPath.getDestinationPaths(destination);
                StringBuilder fqqn = new StringBuilder();
                int filterPathTerminus = candidate.getValue();
                // address - ie: topic
                for (int i = filterPathTerminus; i < paths.length; i++) {
                    if (i > filterPathTerminus) {
                        fqqn.append(ActiveMQDestination.PATH_SEPERATOR);
                    }
                    fqqn.append(paths[i]);
                }
                fqqn.append(CompositeAddress.SEPARATOR);
                // consumer queue - the full vt queue
                for (int i = 0; i < paths.length; i++) {
                    if (i > 0) {
                        fqqn.append(ActiveMQDestination.PATH_SEPERATOR);
                    }
                    fqqn.append(paths[i]);
                }
                // no need for a cache as this is called once per destination on metadata export
                return new ActiveMQQueue(fqqn.toString());
            }
        }
        return destination;
    }