gpt4 book ai didi

org.apache.activemq.artemis.core.config.WildcardConfiguration类的使用及代码示例

转载 作者:知者 更新时间:2024-03-26 14:17:05 27 4
gpt4 key购买 nike

本文整理了Java中org.apache.activemq.artemis.core.config.WildcardConfiguration类的一些代码示例,展示了WildcardConfiguration类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。WildcardConfiguration类的具体详情如下:
包路径:org.apache.activemq.artemis.core.config.WildcardConfiguration
类名称:WildcardConfiguration

WildcardConfiguration介绍

暂无

代码示例

代码示例来源:origin: apache/activemq-artemis

private WildcardConfiguration createWildCardConfiguration() {
 WildcardConfiguration wildcardConfiguration = new WildcardConfiguration();
 wildcardConfiguration.setAnyWords('#');
 wildcardConfiguration.setDelimiter('/');
 wildcardConfiguration.setRoutingEnabled(true);
 wildcardConfiguration.setSingleWord('+');
 return wildcardConfiguration;
}

代码示例来源:origin: org.apache.activemq/artemis-mqtt-protocol

public static String convertMQTTAddressFilterToCore(String filter, WildcardConfiguration wildcardConfiguration) {
 return MQTT_WILDCARD.convert(filter, wildcardConfiguration);
}

代码示例来源:origin: apache/activemq-artemis

/**
* @param e
* @return
*/
protected void parseWildcardConfiguration(final Element e, final Configuration mainConfig) {
 WildcardConfiguration conf = mainConfig.getWildcardConfiguration();
 conf.setDelimiter(getString(e, "delimiter", Character.toString(conf.getDelimiter()), Validators.NO_CHECK).charAt(0));
 conf.setAnyWords(getString(e, "any-words", Character.toString(conf.getAnyWords()), Validators.NO_CHECK).charAt(0));
 conf.setSingleWord(getString(e, "single-word", Character.toString(conf.getSingleWord()), Validators.NO_CHECK).charAt(0));
 conf.setRoutingEnabled(getBoolean(e, "enabled", conf.isRoutingEnabled()));
 conf.setRoutingEnabled(getBoolean(e, "routing-enabled", conf.isRoutingEnabled()));
}

代码示例来源:origin: apache/activemq-artemis

public String convert(String filter, WildcardConfiguration to) {
 return filter.replace(getDelimiter(), to.getDelimiter())
     .replace(getSingleWord(), to.getSingleWord())
     .replace(getAnyWords(), to.getAnyWords());
}

代码示例来源:origin: apache/activemq-artemis

@Override
@Before
public void setUp() throws Exception {
 super.setUp();
 WildcardConfiguration wildcardConfiguration = new WildcardConfiguration();
 wildcardConfiguration.setDelimiter('/');
 Configuration configuration = createDefaultInVMConfig().setWildcardRoutingEnabled(true).setTransactionTimeoutScanPeriod(500).setWildCardConfiguration(wildcardConfiguration);
 server = addServer(ActiveMQServers.newActiveMQServer(configuration, false));
 server.start();
 server.getManagementService().enableNotifications(false);
 locator = createInVMNonHALocator();
 sf = createSessionFactory(locator);
 clientSession = addClientSession(sf.createSession(false, true, true));
}

代码示例来源:origin: apache/activemq-artemis

@Test
public void testWildCardAddressRemovalDifferentWildcard() throws Exception {
 final WildcardConfiguration configuration = new WildcardConfiguration();
 configuration.setAnyWords('>');
 WildcardAddressManager ad = new WildcardAddressManager(new BindingFactoryFake(), configuration, null);
 ad.addAddressInfo(new AddressInfo(SimpleString.toSimpleString("Topic1.>"), RoutingType.MULTICAST));
 ad.addAddressInfo(new AddressInfo(SimpleString.toSimpleString("Topic1.test"), RoutingType.MULTICAST));
 ad.addBinding(new BindingFake("Topic1.>", "one"));
 assertEquals(1, ad.getBindingsForRoutingAddress(SimpleString.toSimpleString("Topic1.>")).getBindings().size());
 assertEquals(1, ad.getBindingsForRoutingAddress(SimpleString.toSimpleString("Topic1.test")).getBindings().size());
 assertEquals(0, ad.getDirectBindings(SimpleString.toSimpleString("Topic1.test")).getBindings().size());
 assertEquals(1, ad.getDirectBindings(SimpleString.toSimpleString("Topic1.>")).getBindings().size());
 //Remove the address
 ad.removeAddressInfo(SimpleString.toSimpleString("Topic1.test"));
 //should still have 1 address and binding
 assertEquals(1, ad.getAddresses().size());
 assertEquals(1, ad.getBindings().size());
 ad.removeBinding(SimpleString.toSimpleString("one"), null);
 ad.removeAddressInfo(SimpleString.toSimpleString("Topic1.>"));
 assertEquals(0, ad.getAddresses().size());
 assertEquals(0, ad.getBindings().size());
}

代码示例来源:origin: apache/activemq-artemis

@Test
public void testWildcardConfiguration() throws Exception {
 FileConfigurationParser parser = new FileConfigurationParser();
 String configStr = firstPart + "<wildcard-addresses>\n<routing-enabled>true</routing-enabled>\n<delimiter>/</delimiter>\n<any-words>></any-words></wildcard-addresses>" + lastPart;
 ByteArrayInputStream input = new ByteArrayInputStream(configStr.getBytes(StandardCharsets.UTF_8));
 Configuration config = parser.parseMainConfig(input);
 WildcardConfiguration wildCard = config.getWildcardConfiguration();
 assertEquals('/', wildCard.getDelimiter());
 assertTrue(wildCard.isRoutingEnabled());
 assertEquals('>', wildCard.getAnyWords());
 assertEquals('*', wildCard.getSingleWord());
}

代码示例来源:origin: apache/activemq-artemis

@Test
  public void testWildcardConversion() throws Exception {
   String amqTarget = "TEST.ONE.>";
   String coreTarget = OpenWireUtil.OPENWIRE_WILDCARD.convert(amqTarget, new WildcardConfiguration());
   assertEquals("TEST.ONE.#", coreTarget);

   amqTarget = "TEST.*.ONE";
   coreTarget = OpenWireUtil.OPENWIRE_WILDCARD.convert(amqTarget, new WildcardConfiguration());
   assertEquals("TEST.*.ONE", coreTarget);

   amqTarget = "a.*.>.>";
   coreTarget = OpenWireUtil.OPENWIRE_WILDCARD.convert(amqTarget, new WildcardConfiguration());
   assertEquals("a.*.#.#", coreTarget);
  }
}

代码示例来源:origin: apache/activemq-artemis

@Override
@Deprecated
public ConfigurationImpl setWildcardRoutingEnabled(final boolean enabled) {
 ActiveMQServerLogger.LOGGER.deprecatedWildcardRoutingEnabled();
 wildcardConfiguration.setRoutingEnabled(enabled);
 return this;
}

代码示例来源:origin: apache/activemq-artemis

public SimpleAddressManager(final BindingsFactory bindingsFactory, final StorageManager storageManager) {
 this(bindingsFactory, new WildcardConfiguration(), storageManager);
}

代码示例来源:origin: apache/activemq-artemis

return true;
final char sepAnyWords = wildcardConfiguration.getAnyWords();
final char sepSingleWord = wildcardConfiguration.getSingleWord();

代码示例来源:origin: apache/activemq-artemis

@Test
public void testDurableUnSubscribeWithoutDurableSubName() throws Exception {
 server.getConfiguration().getWildcardConfiguration().setDelimiter('/');
 server.getAddressSettingsRepository().addMatch("/topic/#", new AddressSettings().setDefaultAddressRoutingType(RoutingType.MULTICAST).setDefaultQueueRoutingType(RoutingType.MULTICAST));
 conn.connect(defUser, defPass, "myclientid");
 String subId = UUID.randomUUID().toString();
 String durableSubName = UUID.randomUUID().toString();
 String receipt = UUID.randomUUID().toString();
 ClientStompFrame frame = conn.createFrame(Stomp.Commands.SUBSCRIBE)
                .addHeader(Stomp.Headers.Subscribe.DESTINATION, "/topic/test.foo")
                .addHeader(Stomp.Headers.Unsubscribe.ID, subId)
                .addHeader(Stomp.Headers.Subscribe.ACK_MODE, Stomp.Headers.Subscribe.AckModeValues.CLIENT_INDIVIDUAL)
                .addHeader(Stomp.Headers.Subscribe.DURABLE_SUBSCRIPTION_NAME, durableSubName)
                .addHeader(Stomp.Headers.RECEIPT_REQUESTED, receipt);
 frame = conn.sendFrame(frame);
 assertEquals(receipt, frame.getHeader(Stomp.Headers.Response.RECEIPT_ID));
 assertTrue(Wait.waitFor(() -> server.locateQueue(SimpleString.toSimpleString("myclientid." + durableSubName)) != null, 2000, 100));
 receipt = UUID.randomUUID().toString();
 frame = conn.createFrame(Stomp.Commands.UNSUBSCRIBE)
       .addHeader(Stomp.Headers.Unsubscribe.ID, subId)
       .addHeader(Stomp.Headers.RECEIPT_REQUESTED, receipt);
 frame = conn.sendFrame(frame);
 assertEquals(receipt, frame.getHeader(Stomp.Headers.Response.RECEIPT_ID));
 conn.disconnect();
 // make sure the durable subscription queue is still there
 assertTrue(Wait.waitFor(() -> server.locateQueue(SimpleString.toSimpleString("myclientid." + durableSubName)) != null, 2000, 100));
}

代码示例来源:origin: apache/activemq-artemis

@Override
@Deprecated
public boolean isWildcardRoutingEnabled() {
 return wildcardConfiguration.isRoutingEnabled();
}

代码示例来源:origin: apache/activemq-artemis

@Test
public void testMatchingDocsCustomUnderscorDelimiter() throws Throwable {
 WildcardConfiguration wildcardConfiguration = new WildcardConfiguration();
 wildcardConfiguration.setDelimiter('_');
 HierarchicalObjectRepository<String> repo = new HierarchicalObjectRepository<>(wildcardConfiguration);
 repo.addMatch("a_b_#", "ab#");
 repo.addMatch("a_b_d_#", "abd#");
 repo.addMatch("#", "root");
 Assert.assertEquals("ab#", repo.getMatch("a_b"));
 Assert.assertEquals("ab#", repo.getMatch("a_b_c"));
 Assert.assertEquals("abd#", repo.getMatch("a_b_d_lll"));
 Assert.assertEquals("root", repo.getMatch("z_z_z_z_z"));
 Assert.assertEquals("root", repo.getMatch("a_babc"));
 Assert.assertEquals("ab#", repo.getMatch("a_b_dabc"));
 Assert.assertEquals("abd#", repo.getMatch("a_b_d"));
}

代码示例来源:origin: apache/activemq-artemis

@Test
public void testWildCardAddressDirectBindings() throws Exception {
 final WildcardConfiguration configuration = new WildcardConfiguration();
 configuration.setAnyWords('>');
 WildcardAddressManager ad = new WildcardAddressManager(new BindingFactoryFake(), configuration, null);
 ad.addAddressInfo(new AddressInfo(SimpleString.toSimpleString("Topic1.>"), RoutingType.MULTICAST));
 ad.addAddressInfo(new AddressInfo(SimpleString.toSimpleString("Topic1.test"), RoutingType.MULTICAST));
 ad.addAddressInfo(new AddressInfo(SimpleString.toSimpleString("Topic1.test.test1"), RoutingType.MULTICAST));
 ad.addAddressInfo(new AddressInfo(SimpleString.toSimpleString("Topic1.test.test2"), RoutingType.MULTICAST));
 ad.addAddressInfo(new AddressInfo(SimpleString.toSimpleString("Topic2.>"), RoutingType.MULTICAST));
 ad.addAddressInfo(new AddressInfo(SimpleString.toSimpleString("Topic2.test"), RoutingType.MULTICAST));
 ad.addBinding(new BindingFake("Topic1.>", "one"));
 ad.addBinding(new BindingFake("Topic1.test", "two"));
 ad.addBinding(new BindingFake("Topic2.test", "three"));
 assertEquals(1, ad.getBindingsForRoutingAddress(SimpleString.toSimpleString("Topic1.>")).getBindings().size());
 assertEquals(2, ad.getBindingsForRoutingAddress(SimpleString.toSimpleString("Topic1.test")).getBindings().size());
 assertEquals(1, ad.getBindingsForRoutingAddress(SimpleString.toSimpleString("Topic1.test.test1")).getBindings().size());
 assertEquals(1, ad.getBindingsForRoutingAddress(SimpleString.toSimpleString("Topic1.test.test2")).getBindings().size());
 assertEquals(1, ad.getDirectBindings(SimpleString.toSimpleString("Topic1.>")).getBindings().size());
 assertEquals(1, ad.getDirectBindings(SimpleString.toSimpleString("Topic1.test")).getBindings().size());
 assertEquals(0, ad.getDirectBindings(SimpleString.toSimpleString("Topic1.test1")).getBindings().size());
 assertEquals(0, ad.getDirectBindings(SimpleString.toSimpleString("Topic1.test2")).getBindings().size());
 assertEquals(0, ad.getDirectBindings(SimpleString.toSimpleString("Topic2.>")).getBindings().size());
 assertEquals(1, ad.getDirectBindings(SimpleString.toSimpleString("Topic2.test")).getBindings().size());
}

代码示例来源:origin: apache/activemq-artemis

public AddressImpl(final SimpleString address, final WildcardConfiguration wildcardConfiguration) {
 this.address = address;
 this.wildcardConfiguration = wildcardConfiguration;
 addressParts = address.split(wildcardConfiguration.getDelimiter());
 containsWildCard = address.contains(wildcardConfiguration.getSingleWord()) || address.contains(wildcardConfiguration.getAnyWords());
}

代码示例来源:origin: org.wildfly/wildfly-messaging-activemq

configuration.setTransactionTimeout(TRANSACTION_TIMEOUT.resolveModelAttribute(context, model).asLong());
configuration.setTransactionTimeoutScanPeriod(TRANSACTION_TIMEOUT_SCAN_PERIOD.resolveModelAttribute(context, model).asLong());
configuration.getWildcardConfiguration().setRoutingEnabled(WILD_CARD_ROUTING_ENABLED.resolveModelAttribute(context, model).asBoolean());

代码示例来源:origin: apache/activemq-artemis

public PostOfficeImpl(final ActiveMQServer server,
           final StorageManager storageManager,
           final PagingManager pagingManager,
           final QueueFactory bindableFactory,
           final ManagementService managementService,
           final long expiryReaperPeriod,
           final long addressQueueReaperPeriod,
           final WildcardConfiguration wildcardConfiguration,
           final int idCacheSize,
           final boolean persistIDCache,
           final HierarchicalRepository<AddressSettings> addressSettingsRepository) {
 this.storageManager = storageManager;
 queueFactory = bindableFactory;
 this.managementService = managementService;
 this.pagingManager = pagingManager;
 this.expiryReaperPeriod = expiryReaperPeriod;
 this.addressQueueReaperPeriod = addressQueueReaperPeriod;
 if (wildcardConfiguration.isRoutingEnabled()) {
   addressManager = new WildcardAddressManager(this, wildcardConfiguration, storageManager);
 } else {
   addressManager = new SimpleAddressManager(this, wildcardConfiguration, storageManager);
 }
 this.idCacheSize = idCacheSize;
 this.persistIDCache = persistIDCache;
 this.addressSettingsRepository = addressSettingsRepository;
 this.server = server;
}

代码示例来源:origin: apache/activemq-artemis

private void addWildCardConfiguration(Configuration configuration) {
 WildcardConfiguration wildcardConfiguration = new WildcardConfiguration();
 wildcardConfiguration.setAnyWords('#');
 wildcardConfiguration.setDelimiter('/');
 wildcardConfiguration.setRoutingEnabled(true);
 wildcardConfiguration.setSingleWord('+');
 configuration.setWildCardConfiguration(wildcardConfiguration);
}

代码示例来源:origin: apache/activemq-artemis

@Test
public void testMatchingDocsCustomForwardSlashDelimiter() throws Throwable {
 WildcardConfiguration wildcardConfiguration = new WildcardConfiguration();
 wildcardConfiguration.setDelimiter('/');
 HierarchicalObjectRepository<String> repo = new HierarchicalObjectRepository<>(wildcardConfiguration);
 repo.addMatch("a/b/#", "ab#");
 repo.addMatch("a/b/d/#", "abd#");
 repo.addMatch("#", "root");
 Assert.assertEquals("ab#", repo.getMatch("a/b"));
 Assert.assertEquals("ab#", repo.getMatch("a/b/c"));
 Assert.assertEquals("abd#", repo.getMatch("a/b/d/lll"));
 Assert.assertEquals("root", repo.getMatch("z/z/z/z/z"));
 Assert.assertEquals("root", repo.getMatch("a/babc"));
 Assert.assertEquals("ab#", repo.getMatch("a/b/dabc"));
 Assert.assertEquals("abd#", repo.getMatch("a/b/d"));
}

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com