Search in sources :

Example 16 with Binding

use of org.apache.activemq.artemis.core.postoffice.Binding in project activemq-artemis by apache.

the class ActiveMQServerImpl method getQueueCountForUser.

public int getQueueCountForUser(String username) throws Exception {
    Map<SimpleString, Binding> bindings = postOffice.getAllBindings();
    int queuesForUser = 0;
    for (Binding binding : bindings.values()) {
        if (binding instanceof LocalQueueBinding && ((LocalQueueBinding) binding).getQueue().getUser().equals(SimpleString.toSimpleString(username))) {
            queuesForUser++;
        }
    }
    return queuesForUser;
}
Also used : Binding(org.apache.activemq.artemis.core.postoffice.Binding) DivertBinding(org.apache.activemq.artemis.core.postoffice.impl.DivertBinding) LocalQueueBinding(org.apache.activemq.artemis.core.postoffice.impl.LocalQueueBinding) QueueBinding(org.apache.activemq.artemis.core.postoffice.QueueBinding) LocalQueueBinding(org.apache.activemq.artemis.core.postoffice.impl.LocalQueueBinding) SimpleString(org.apache.activemq.artemis.api.core.SimpleString) ReplicationEndpoint(org.apache.activemq.artemis.core.replication.ReplicationEndpoint)

Example 17 with Binding

use of org.apache.activemq.artemis.core.postoffice.Binding in project activemq-artemis by apache.

the class ActiveMQServerImpl method bindingQuery.

@Override
public BindingQueryResult bindingQuery(SimpleString address) throws Exception {
    if (address == null) {
        throw ActiveMQMessageBundle.BUNDLE.addressIsNull();
    }
    CompositeAddress addressKey = new CompositeAddress(address.toString());
    String realAddress = addressKey.isFqqn() ? addressKey.getAddress() : addressKey.getQueueName();
    AddressSettings addressSettings = getAddressSettingsRepository().getMatch(realAddress);
    boolean autoCreateQeueus = addressSettings.isAutoCreateQueues();
    boolean autoCreateAddresses = addressSettings.isAutoCreateAddresses();
    boolean defaultPurgeOnNoConsumers = addressSettings.isDefaultPurgeOnNoConsumers();
    int defaultMaxConsumers = addressSettings.getDefaultMaxConsumers();
    boolean defaultExclusive = addressSettings.isDefaultExclusiveQueue();
    boolean defaultLastValie = addressSettings.isDefaultLastValueQueue();
    List<SimpleString> names = new ArrayList<>();
    // make an exception for the management address (see HORNETQ-29)
    ManagementService managementService = getManagementService();
    SimpleString bindAddress = new SimpleString(realAddress);
    if (managementService != null) {
        if (bindAddress.equals(managementService.getManagementAddress())) {
            return new BindingQueryResult(true, null, names, autoCreateQeueus, autoCreateAddresses, defaultPurgeOnNoConsumers, defaultMaxConsumers, defaultExclusive, defaultLastValie);
        }
    }
    Bindings bindings = getPostOffice().getMatchingBindings(bindAddress);
    for (Binding binding : bindings.getBindings()) {
        if (binding.getType() == BindingType.LOCAL_QUEUE || binding.getType() == BindingType.REMOTE_QUEUE) {
            if (addressKey.isFqqn()) {
                names.add(new SimpleString(addressKey.getAddress()).concat(CompositeAddress.SEPARATOR).concat(binding.getUniqueName()));
            } else {
                names.add(binding.getUniqueName());
            }
        }
    }
    AddressInfo info = getAddressInfo(bindAddress);
    return new BindingQueryResult(info != null, info, names, autoCreateQeueus, autoCreateAddresses, defaultPurgeOnNoConsumers, defaultMaxConsumers, defaultExclusive, defaultLastValie);
}
Also used : BindingQueryResult(org.apache.activemq.artemis.core.server.BindingQueryResult) Binding(org.apache.activemq.artemis.core.postoffice.Binding) DivertBinding(org.apache.activemq.artemis.core.postoffice.impl.DivertBinding) LocalQueueBinding(org.apache.activemq.artemis.core.postoffice.impl.LocalQueueBinding) QueueBinding(org.apache.activemq.artemis.core.postoffice.QueueBinding) AddressSettings(org.apache.activemq.artemis.core.settings.impl.AddressSettings) ArrayList(java.util.ArrayList) SimpleString(org.apache.activemq.artemis.api.core.SimpleString) SimpleString(org.apache.activemq.artemis.api.core.SimpleString) Bindings(org.apache.activemq.artemis.core.postoffice.Bindings) ReplicationEndpoint(org.apache.activemq.artemis.core.replication.ReplicationEndpoint) CompositeAddress(org.apache.activemq.artemis.utils.CompositeAddress) ManagementService(org.apache.activemq.artemis.core.server.management.ManagementService)

Example 18 with Binding

use of org.apache.activemq.artemis.core.postoffice.Binding in project activemq-artemis by apache.

the class ActiveMQServerImpl method destroyDivert.

@Override
public void destroyDivert(SimpleString name) throws Exception {
    Binding binding = postOffice.getBinding(name);
    if (binding == null) {
        throw ActiveMQMessageBundle.BUNDLE.noBindingForDivert(name);
    }
    if (!(binding instanceof DivertBinding)) {
        throw ActiveMQMessageBundle.BUNDLE.bindingNotDivert(name);
    }
    postOffice.removeBinding(name, null, true);
}
Also used : Binding(org.apache.activemq.artemis.core.postoffice.Binding) DivertBinding(org.apache.activemq.artemis.core.postoffice.impl.DivertBinding) LocalQueueBinding(org.apache.activemq.artemis.core.postoffice.impl.LocalQueueBinding) QueueBinding(org.apache.activemq.artemis.core.postoffice.QueueBinding) DivertBinding(org.apache.activemq.artemis.core.postoffice.impl.DivertBinding)

Example 19 with Binding

use of org.apache.activemq.artemis.core.postoffice.Binding in project activemq-artemis by apache.

the class ActiveMQServerImpl method deployDivert.

@Override
public void deployDivert(DivertConfiguration config) throws Exception {
    if (config.getName() == null) {
        throw ActiveMQMessageBundle.BUNDLE.divertWithNoName();
    }
    if (config.getAddress() == null) {
        ActiveMQServerLogger.LOGGER.divertWithNoAddress();
        return;
    }
    if (config.getForwardingAddress() == null) {
        ActiveMQServerLogger.LOGGER.divertWithNoForwardingAddress();
        return;
    }
    SimpleString sName = new SimpleString(config.getName());
    if (postOffice.getBinding(sName) != null) {
        ActiveMQServerLogger.LOGGER.divertBindingAlreadyExists(sName);
        return;
    }
    SimpleString sAddress = new SimpleString(config.getAddress());
    Transformer transformer = getServiceRegistry().getDivertTransformer(config.getName(), config.getTransformerConfiguration());
    Filter filter = FilterImpl.createFilter(config.getFilterString());
    Divert divert = new DivertImpl(new SimpleString(config.getForwardingAddress()), sName, new SimpleString(config.getRoutingName()), config.isExclusive(), filter, transformer, postOffice, storageManager, config.getRoutingType());
    Binding binding = new DivertBinding(storageManager.generateID(), sAddress, divert);
    postOffice.addBinding(binding);
    managementService.registerDivert(divert, config);
}
Also used : Binding(org.apache.activemq.artemis.core.postoffice.Binding) DivertBinding(org.apache.activemq.artemis.core.postoffice.impl.DivertBinding) LocalQueueBinding(org.apache.activemq.artemis.core.postoffice.impl.LocalQueueBinding) QueueBinding(org.apache.activemq.artemis.core.postoffice.QueueBinding) Transformer(org.apache.activemq.artemis.core.server.transformer.Transformer) Filter(org.apache.activemq.artemis.core.filter.Filter) SimpleString(org.apache.activemq.artemis.api.core.SimpleString) DivertBinding(org.apache.activemq.artemis.core.postoffice.impl.DivertBinding) Divert(org.apache.activemq.artemis.core.server.Divert)

Example 20 with Binding

use of org.apache.activemq.artemis.core.postoffice.Binding in project activemq-artemis by apache.

the class ActiveMQServerImpl method destroyQueue.

@Override
public void destroyQueue(final SimpleString queueName, final SecurityAuth session, final boolean checkConsumerCount, final boolean removeConsumers, final boolean autoDeleteAddress) throws Exception {
    if (postOffice == null) {
        return;
    }
    callBrokerPlugins(hasBrokerPlugins() ? plugin -> plugin.beforeDestroyQueue(queueName, session, checkConsumerCount, removeConsumers, autoDeleteAddress) : null);
    addressSettingsRepository.clearCache();
    Binding binding = postOffice.getBinding(queueName);
    if (binding == null) {
        throw ActiveMQMessageBundle.BUNDLE.noSuchQueue(queueName);
    }
    SimpleString address = binding.getAddress();
    Queue queue = (Queue) binding.getBindable();
    // This check is only valid if checkConsumerCount == true
    if (checkConsumerCount && queue.getConsumerCount() != 0) {
        throw ActiveMQMessageBundle.BUNDLE.cannotDeleteQueue(queue.getName(), queueName, binding.getClass().getName());
    }
    if (session != null) {
        if (queue.isDurable()) {
            // make sure the user has privileges to delete this queue
            securityStore.check(address, queueName, CheckType.DELETE_DURABLE_QUEUE, session);
        } else {
            securityStore.check(address, queueName, CheckType.DELETE_NON_DURABLE_QUEUE, session);
        }
    }
    queue.deleteQueue(removeConsumers);
    callBrokerPlugins(hasBrokerPlugins() ? plugin -> plugin.afterDestroyQueue(queue, address, session, checkConsumerCount, removeConsumers, autoDeleteAddress) : null);
    AddressInfo addressInfo = getAddressInfo(address);
    if (autoDeleteAddress && postOffice != null && addressInfo != null && addressInfo.isAutoCreated()) {
        try {
            removeAddressInfo(address, session);
        } catch (ActiveMQDeleteAddressException e) {
        // Could be thrown if the address has bindings or is not deletable.
        }
    }
    callPostQueueDeletionCallbacks(address, queueName);
}
Also used : SequentialFile(org.apache.activemq.artemis.core.io.SequentialFile) OrderedExecutorFactory(org.apache.activemq.artemis.utils.actors.OrderedExecutorFactory) Binding(org.apache.activemq.artemis.core.postoffice.Binding) ProtocolManagerFactory(org.apache.activemq.artemis.spi.core.protocol.ProtocolManagerFactory) ConfigurationImpl(org.apache.activemq.artemis.core.config.impl.ConfigurationImpl) RemotingServiceImpl(org.apache.activemq.artemis.core.remoting.server.impl.RemotingServiceImpl) ActiveMQThreadPoolExecutor(org.apache.activemq.artemis.utils.ActiveMQThreadPoolExecutor) JDBCJournalStorageManager(org.apache.activemq.artemis.core.persistence.impl.journal.JDBCJournalStorageManager) ActiveMQException(org.apache.activemq.artemis.api.core.ActiveMQException) ActiveMQComponent(org.apache.activemq.artemis.core.server.ActiveMQComponent) Map(java.util.Map) PagingStoreFactoryNIO(org.apache.activemq.artemis.core.paging.impl.PagingStoreFactoryNIO) EnumSet(java.util.EnumSet) StoreConfiguration(org.apache.activemq.artemis.core.config.StoreConfiguration) ConfigurationUtils(org.apache.activemq.artemis.core.config.ConfigurationUtils) ActiveMQServerPlugin(org.apache.activemq.artemis.core.server.plugin.ActiveMQServerPlugin) PrintWriter(java.io.PrintWriter) AddressSettings(org.apache.activemq.artemis.core.settings.impl.AddressSettings) DivertBinding(org.apache.activemq.artemis.core.postoffice.impl.DivertBinding) BackupManager(org.apache.activemq.artemis.core.server.cluster.BackupManager) ActivateCallback(org.apache.activemq.artemis.core.server.ActivateCallback) Set(java.util.Set) JournalStorageManager(org.apache.activemq.artemis.core.persistence.impl.journal.JournalStorageManager) HAPolicy(org.apache.activemq.artemis.core.server.cluster.ha.HAPolicy) ResourceManager(org.apache.activemq.artemis.core.transaction.ResourceManager) ReloadManager(org.apache.activemq.artemis.core.server.reload.ReloadManager) LocalQueueBinding(org.apache.activemq.artemis.core.postoffice.impl.LocalQueueBinding) PageSubscription(org.apache.activemq.artemis.core.paging.cursor.PageSubscription) StorageManager(org.apache.activemq.artemis.core.persistence.StorageManager) PostQueueCreationCallback(org.apache.activemq.artemis.core.server.PostQueueCreationCallback) LocalGroupingHandler(org.apache.activemq.artemis.core.server.group.impl.LocalGroupingHandler) DeletionPolicy(org.apache.activemq.artemis.core.settings.impl.DeletionPolicy) AccessController(java.security.AccessController) Bindable(org.apache.activemq.artemis.core.server.Bindable) QueueQueryResult(org.apache.activemq.artemis.core.server.QueueQueryResult) Configuration(org.apache.activemq.artemis.core.config.Configuration) PagingManager(org.apache.activemq.artemis.core.paging.PagingManager) ActiveMQDefaultConfiguration(org.apache.activemq.artemis.api.config.ActiveMQDefaultConfiguration) Version(org.apache.activemq.artemis.core.version.Version) ReusableLatch(org.apache.activemq.artemis.utils.ReusableLatch) ReplicationEndpoint(org.apache.activemq.artemis.core.replication.ReplicationEndpoint) Pair(org.apache.activemq.artemis.api.core.Pair) ActiveMQSecurityManager(org.apache.activemq.artemis.spi.core.security.ActiveMQSecurityManager) SimpleString(org.apache.activemq.artemis.api.core.SimpleString) CompositeAddress(org.apache.activemq.artemis.utils.CompositeAddress) AddressQueryResult(org.apache.activemq.artemis.core.server.AddressQueryResult) RemotingConnection(org.apache.activemq.artemis.spi.core.protocol.RemotingConnection) QueueBinding(org.apache.activemq.artemis.core.postoffice.QueueBinding) ArrayList(java.util.ArrayList) VersionLoader(org.apache.activemq.artemis.utils.VersionLoader) ScheduledExecutorService(java.util.concurrent.ScheduledExecutorService) CriticalAnalyzerImpl(org.apache.activemq.artemis.utils.critical.CriticalAnalyzerImpl) ManagementFactory(java.lang.management.ManagementFactory) BindingQueryResult(org.apache.activemq.artemis.core.server.BindingQueryResult) ServerSession(org.apache.activemq.artemis.core.server.ServerSession) StringWriter(java.io.StringWriter) PostOfficeImpl(org.apache.activemq.artemis.core.postoffice.impl.PostOfficeImpl) IOException(java.io.IOException) File(java.io.File) PersistedRoles(org.apache.activemq.artemis.core.persistence.config.PersistedRoles) OperationContext(org.apache.activemq.artemis.core.persistence.OperationContext) HAPolicyConfiguration(org.apache.activemq.artemis.core.config.HAPolicyConfiguration) ServiceRegistry(org.apache.activemq.artemis.core.server.ServiceRegistry) ActiveMQPluginRunnable(org.apache.activemq.artemis.core.server.plugin.ActiveMQPluginRunnable) QueueConfig(org.apache.activemq.artemis.core.server.QueueConfig) ReloadManagerImpl(org.apache.activemq.artemis.core.server.reload.ReloadManagerImpl) OperationContextImpl(org.apache.activemq.artemis.core.persistence.impl.journal.OperationContextImpl) HierarchicalObjectRepository(org.apache.activemq.artemis.core.settings.impl.HierarchicalObjectRepository) DivertConfiguration(org.apache.activemq.artemis.core.config.DivertConfiguration) ClientSessionFactoryImpl(org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl) URL(java.net.URL) Date(java.util.Date) JournalType(org.apache.activemq.artemis.core.server.JournalType) RemoteGroupingHandler(org.apache.activemq.artemis.core.server.group.impl.RemoteGroupingHandler) CheckType(org.apache.activemq.artemis.core.security.CheckType) GroupingHandler(org.apache.activemq.artemis.core.server.group.GroupingHandler) ManagementServiceImpl(org.apache.activemq.artemis.core.server.management.impl.ManagementServiceImpl) SecurityStore(org.apache.activemq.artemis.core.security.SecurityStore) LargeServerMessage(org.apache.activemq.artemis.core.server.LargeServerMessage) AtomicInteger(java.util.concurrent.atomic.AtomicInteger) FilterImpl(org.apache.activemq.artemis.core.filter.impl.FilterImpl) PersistedAddressSetting(org.apache.activemq.artemis.core.persistence.config.PersistedAddressSetting) ThreadFactory(java.util.concurrent.ThreadFactory) ThreadDumpUtil(org.apache.activemq.artemis.utils.ThreadDumpUtil) PagingStoreFactoryDatabase(org.apache.activemq.artemis.core.paging.impl.PagingStoreFactoryDatabase) ResourceLimitSettings(org.apache.activemq.artemis.core.settings.impl.ResourceLimitSettings) Role(org.apache.activemq.artemis.core.security.Role) CriticalAnalyzerPolicy(org.apache.activemq.artemis.utils.critical.CriticalAnalyzerPolicy) BindingType(org.apache.activemq.artemis.core.postoffice.BindingType) IOCriticalErrorListener(org.apache.activemq.artemis.core.io.IOCriticalErrorListener) ConcurrentHashSet(org.apache.activemq.artemis.utils.collections.ConcurrentHashSet) SynchronousQueue(java.util.concurrent.SynchronousQueue) Collection(java.util.Collection) ActiveMQServer(org.apache.activemq.artemis.core.server.ActiveMQServer) ConcurrentHashMap(java.util.concurrent.ConcurrentHashMap) MemoryManager(org.apache.activemq.artemis.core.server.MemoryManager) Queue(org.apache.activemq.artemis.core.server.Queue) HierarchicalRepository(org.apache.activemq.artemis.core.settings.HierarchicalRepository) SessionCallback(org.apache.activemq.artemis.spi.core.protocol.SessionCallback) ScheduledThreadPoolExecutor(java.util.concurrent.ScheduledThreadPoolExecutor) ClusterManager(org.apache.activemq.artemis.core.server.cluster.ClusterManager) ExecutorFactory(org.apache.activemq.artemis.utils.ExecutorFactory) PrivilegedAction(java.security.PrivilegedAction) Collectors(java.util.stream.Collectors) CriticalComponent(org.apache.activemq.artemis.utils.critical.CriticalComponent) ReloadCallback(org.apache.activemq.artemis.core.server.reload.ReloadCallback) TimeUtils(org.apache.activemq.artemis.utils.TimeUtils) List(java.util.List) JdbcNodeManager(org.apache.activemq.artemis.core.server.impl.jdbc.JdbcNodeManager) SecurityAuth(org.apache.activemq.artemis.core.security.SecurityAuth) PostQueueDeletionCallback(org.apache.activemq.artemis.core.server.PostQueueDeletionCallback) QueueBindingInfo(org.apache.activemq.artemis.core.persistence.QueueBindingInfo) Divert(org.apache.activemq.artemis.core.server.Divert) GroupingHandlerConfiguration(org.apache.activemq.artemis.core.server.group.impl.GroupingHandlerConfiguration) PagingStoreFactory(org.apache.activemq.artemis.core.paging.PagingStoreFactory) Entry(java.util.Map.Entry) NetworkHealthCheck(org.apache.activemq.artemis.core.server.NetworkHealthCheck) PostOffice(org.apache.activemq.artemis.core.postoffice.PostOffice) ActivationFailureListener(org.apache.activemq.artemis.core.server.ActivationFailureListener) ActiveMQServerLogger(org.apache.activemq.artemis.core.server.ActiveMQServerLogger) FileStoreMonitor(org.apache.activemq.artemis.core.server.files.FileStoreMonitor) Filter(org.apache.activemq.artemis.core.filter.Filter) ActiveMQMessageBundle(org.apache.activemq.artemis.core.server.ActiveMQMessageBundle) ThreadPoolExecutor(java.util.concurrent.ThreadPoolExecutor) CriticalAnalyzer(org.apache.activemq.artemis.utils.critical.CriticalAnalyzer) Logger(org.jboss.logging.Logger) DatabaseStorageConfiguration(org.apache.activemq.artemis.core.config.storage.DatabaseStorageConfiguration) RemotingService(org.apache.activemq.artemis.core.remoting.server.RemotingService) HashMap(java.util.HashMap) PageCountPending(org.apache.activemq.artemis.core.persistence.impl.PageCountPending) ManagementService(org.apache.activemq.artemis.core.server.management.ManagementService) SecurityStoreImpl(org.apache.activemq.artemis.core.security.impl.SecurityStoreImpl) SecurityFormatter(org.apache.activemq.artemis.utils.SecurityFormatter) ConcurrentMap(java.util.concurrent.ConcurrentMap) HashSet(java.util.HashSet) EmptyCriticalAnalyzer(org.apache.activemq.artemis.utils.critical.EmptyCriticalAnalyzer) CriticalAction(org.apache.activemq.artemis.utils.critical.CriticalAction) ActiveMQServerControlImpl(org.apache.activemq.artemis.core.management.impl.ActiveMQServerControlImpl) MBeanServer(javax.management.MBeanServer) SecuritySettingPlugin(org.apache.activemq.artemis.core.server.SecuritySettingPlugin) NodeManager(org.apache.activemq.artemis.core.server.NodeManager) LinkedList(java.util.LinkedList) ResourceManagerImpl(org.apache.activemq.artemis.core.transaction.impl.ResourceManagerImpl) FileConfigurationParser(org.apache.activemq.artemis.core.deployers.impl.FileConfigurationParser) ExecutorService(java.util.concurrent.ExecutorService) Transformer(org.apache.activemq.artemis.core.server.transformer.Transformer) BridgeConfiguration(org.apache.activemq.artemis.core.config.BridgeConfiguration) ActiveMQQueueExistsException(org.apache.activemq.artemis.api.core.ActiveMQQueueExistsException) FileMoveManager(org.apache.activemq.artemis.core.server.files.FileMoveManager) Semaphore(java.util.concurrent.Semaphore) GroupingInfo(org.apache.activemq.artemis.core.persistence.GroupingInfo) CoreAddressConfiguration(org.apache.activemq.artemis.core.config.CoreAddressConfiguration) AddressBindingInfo(org.apache.activemq.artemis.core.persistence.AddressBindingInfo) ReplicationManager(org.apache.activemq.artemis.core.replication.ReplicationManager) AIOSequentialFileFactory(org.apache.activemq.artemis.core.io.aio.AIOSequentialFileFactory) CoreQueueConfiguration(org.apache.activemq.artemis.core.config.CoreQueueConfiguration) QueueFactory(org.apache.activemq.artemis.core.server.QueueFactory) ActiveMQDeleteAddressException(org.apache.activemq.artemis.api.core.ActiveMQDeleteAddressException) TimeUnit(java.util.concurrent.TimeUnit) RoutingType(org.apache.activemq.artemis.api.core.RoutingType) ServiceComponent(org.apache.activemq.artemis.core.server.ServiceComponent) JournalLoadInformation(org.apache.activemq.artemis.core.journal.JournalLoadInformation) NullStorageManager(org.apache.activemq.artemis.core.persistence.impl.nullpm.NullStorageManager) PagingManagerImpl(org.apache.activemq.artemis.core.paging.impl.PagingManagerImpl) Bindings(org.apache.activemq.artemis.core.postoffice.Bindings) ActiveMQThreadFactory(org.apache.activemq.artemis.utils.ActiveMQThreadFactory) Binding(org.apache.activemq.artemis.core.postoffice.Binding) DivertBinding(org.apache.activemq.artemis.core.postoffice.impl.DivertBinding) LocalQueueBinding(org.apache.activemq.artemis.core.postoffice.impl.LocalQueueBinding) QueueBinding(org.apache.activemq.artemis.core.postoffice.QueueBinding) ActiveMQDeleteAddressException(org.apache.activemq.artemis.api.core.ActiveMQDeleteAddressException) SimpleString(org.apache.activemq.artemis.api.core.SimpleString) SynchronousQueue(java.util.concurrent.SynchronousQueue) Queue(org.apache.activemq.artemis.core.server.Queue)

Aggregations

Binding (org.apache.activemq.artemis.core.postoffice.Binding)81 SimpleString (org.apache.activemq.artemis.api.core.SimpleString)52 LocalQueueBinding (org.apache.activemq.artemis.core.postoffice.impl.LocalQueueBinding)29 QueueBinding (org.apache.activemq.artemis.core.postoffice.QueueBinding)28 Test (org.junit.Test)25 Bindings (org.apache.activemq.artemis.core.postoffice.Bindings)24 Queue (org.apache.activemq.artemis.core.server.Queue)24 ClientSession (org.apache.activemq.artemis.api.core.client.ClientSession)18 RemoteQueueBinding (org.apache.activemq.artemis.core.server.cluster.RemoteQueueBinding)17 ArrayList (java.util.ArrayList)12 Filter (org.apache.activemq.artemis.core.filter.Filter)10 DivertBinding (org.apache.activemq.artemis.core.postoffice.impl.DivertBinding)10 ClientMessage (org.apache.activemq.artemis.api.core.client.ClientMessage)9 ClientProducer (org.apache.activemq.artemis.api.core.client.ClientProducer)9 Map (java.util.Map)8 CountDownLatch (java.util.concurrent.CountDownLatch)8 QueueQueryResult (org.apache.activemq.artemis.core.server.QueueQueryResult)8 ActiveMQException (org.apache.activemq.artemis.api.core.ActiveMQException)7 PostOffice (org.apache.activemq.artemis.core.postoffice.PostOffice)7 ActiveMQServer (org.apache.activemq.artemis.core.server.ActiveMQServer)7