public ContextRoutingHandler(Map<String, ? extends Handler> handlers) { this.handlers = new ArrayTernaryTrie<>(false); for (Map.Entry<String, ? extends Handler> entry : handlers.entrySet()) { if (!this.handlers.put(entry.getKey(), entry.getValue())) { throw new IllegalStateException("Too many handlers"); } addBean(entry.getValue()); } }
public Growing(int capacity, int growby) { _growby=growby; _trie = new ArrayTernaryTrie<>(capacity); }
public Growing(boolean insensitive, int capacity, int growby) { _growby=growby; _trie = new ArrayTernaryTrie<>(insensitive,capacity); }
@Override public boolean put(String s, V v) { boolean added = _trie.put(s,v); while (!added && _growby>0) { ArrayTernaryTrie<V> bigger = new ArrayTernaryTrie<>(_trie._key.length+_growby); for (Map.Entry<String,V> entry : _trie.entrySet()) bigger.put(entry.getKey(),entry.getValue()); _trie = bigger; added = _trie.put(s,v); } return added; }
public Growing(int capacity, int growby) { _growby=growby; _trie = new ArrayTernaryTrie<>(capacity); }
public Growing(boolean insensitive, int capacity, int growby) { _growby=growby; _trie = new ArrayTernaryTrie<>(insensitive,capacity); }
@Override public void clear() { _exactMap.clear(); _prefixMap=new ArrayTernaryTrie<>(false); _suffixMap=new ArrayTernaryTrie<>(false); _default=null; _defaultSingletonList=null; _prefixDefault=null; super.clear(); }
@Override public void clear() { _exactMap.clear(); _prefixMap=new ArrayTernaryTrie<>(false); _suffixMap=new ArrayTernaryTrie<>(false); _default=null; _defaultSingletonList=null; _prefixDefault=null; super.clear(); }
@Override public void clear() { _exactMap.clear(); _prefixMap=new ArrayTernaryTrie<>(false); _suffixMap=new ArrayTernaryTrie<>(false); _default=null; _defaultSingletonList=null; _prefixDefault=null; super.clear(); }
@Override public void clear() { _exactMap.clear(); _prefixMap=new ArrayTernaryTrie<>(false); _suffixMap=new ArrayTernaryTrie<>(false); _default=null; _defaultSingletonList=null; _prefixDefault=null; super.clear(); }
public ContextRoutingHandler(Map<String, ? extends Handler> handlers) { this.handlers = new ArrayTernaryTrie<>(false); for (Map.Entry<String, ? extends Handler> entry : handlers.entrySet()) { if (!this.handlers.put(entry.getKey(), entry.getValue())) { throw new IllegalStateException("Too many handlers"); } addBean(entry.getValue()); } }
@Override public boolean put(String s, V v) { boolean added = _trie.put(s,v); while (!added && _growby>0) { ArrayTernaryTrie<V> bigger = new ArrayTernaryTrie<>(_trie._key.length+_growby); for (Map.Entry<String,V> entry : _trie.entrySet()) bigger.put(entry.getKey(),entry.getValue()); _trie = bigger; added = _trie.put(s,v); } return added; }
entry.setMapped(mapped); while (!_prefixMap.put(mapped,entry)) _prefixMap=new ArrayTernaryTrie<>((ArrayTernaryTrie<MappedEntry<O>>)_prefixMap,1.5); _suffixMap=new ArrayTernaryTrie<>((ArrayTernaryTrie<MappedEntry<O>>)_suffixMap,1.5);
entry.setMapped(mapped); while (!_prefixMap.put(mapped,entry)) _prefixMap=new ArrayTernaryTrie<>((ArrayTernaryTrie<MappedEntry<O>>)_prefixMap,1.5); _suffixMap=new ArrayTernaryTrie<>((ArrayTernaryTrie<MappedEntry<O>>)_suffixMap,1.5);
entry.setMapped(mapped); while (!_prefixMap.put(mapped,entry)) _prefixMap=new ArrayTernaryTrie<>((ArrayTernaryTrie<MappedEntry<O>>)_prefixMap,1.5); _suffixMap=new ArrayTernaryTrie<>((ArrayTernaryTrie<MappedEntry<O>>)_suffixMap,1.5);
entry.setMapped(mapped); while (!_prefixMap.put(mapped,entry)) _prefixMap=new ArrayTernaryTrie<>((ArrayTernaryTrie<MappedEntry<O>>)_prefixMap,1.5); _suffixMap=new ArrayTernaryTrie<>((ArrayTernaryTrie<MappedEntry<O>>)_suffixMap,1.5);
public boolean put(PathSpec pathSpec, E resource) { MappedResource<E> entry = new MappedResource<>(pathSpec,resource); switch (pathSpec.group) { case EXACT: String exact = pathSpec.getPrefix(); while (exact!=null && !_exactMap.put(exact,entry)) _exactMap=new ArrayTernaryTrie<>((ArrayTernaryTrie<MappedResource<E>>)_exactMap,1.5); break; case PREFIX_GLOB: String prefix = pathSpec.getPrefix(); while (prefix!=null && !_prefixMap.put(prefix,entry)) _prefixMap=new ArrayTernaryTrie<>((ArrayTernaryTrie<MappedResource<E>>)_prefixMap,1.5); break; case SUFFIX_GLOB: String suffix = pathSpec.getSuffix(); while (suffix!=null && !_suffixMap.put(suffix,entry)) _suffixMap=new ArrayTernaryTrie<>((ArrayTernaryTrie<MappedResource<E>>)_prefixMap,1.5); break; default: } boolean added =_mappings.add(entry); if (LOG.isDebugEnabled()) LOG.debug("{} {} to {}",added?"Added":"Ignored",entry,this); return added; }
public boolean put(PathSpec pathSpec, E resource) { MappedResource<E> entry = new MappedResource<>(pathSpec,resource); switch (pathSpec.group) { case EXACT: String exact = pathSpec.getPrefix(); while (exact!=null && !_exactMap.put(exact,entry)) _exactMap=new ArrayTernaryTrie<>((ArrayTernaryTrie<MappedResource<E>>)_exactMap,1.5); break; case PREFIX_GLOB: String prefix = pathSpec.getPrefix(); while (prefix!=null && !_prefixMap.put(prefix,entry)) _prefixMap=new ArrayTernaryTrie<>((ArrayTernaryTrie<MappedResource<E>>)_prefixMap,1.5); break; case SUFFIX_GLOB: String suffix = pathSpec.getSuffix(); while (suffix!=null && !_suffixMap.put(suffix,entry)) _suffixMap=new ArrayTernaryTrie<>((ArrayTernaryTrie<MappedResource<E>>)_prefixMap,1.5); break; default: } boolean added =_mappings.add(entry); if (LOG.isDebugEnabled()) LOG.debug("{} {} to {}",added?"Added":"Ignored",entry,this); return added; }
_pathBranches=new ArrayTernaryTrie<>(false,16); return; loop: while(true) trie=new ArrayTernaryTrie<>(false,capacity); for (Map.Entry<String,Branch[]> entry: map.entrySet())
_pathBranches=new ArrayTernaryTrie<>(false,16); return; loop: while(true) trie=new ArrayTernaryTrie<>(false,capacity); for (Map.Entry<String,Branch[]> entry: map.entrySet())