org.wicketstuff.datatable_autocomplete.trie.AbstractTrieConfiguration Maven / Gradle / Ivy
/*
*
* ==============================================================================
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package org.wicketstuff.datatable_autocomplete.trie;
/**
* @author mocleiri
*
* Provides a base configuration for a Trie.
*
*/
public abstract class AbstractTrieConfiguration implements ITrieConfiguration {
/**
*
*/
private static final long serialVersionUID = 5376389092400454702L;
/**
*
*/
public AbstractTrieConfiguration() {
defaultFilter = newTrieFilter();
}
/**
*
* @return the trie filter that will be used by default by the Trie.
*/
protected ITrieFilter newTrieFilter() {
return new ITrieFilter() {
/* (non-Javadoc)
* @see org.wicketstuff.datatable_autocomplete.trie.TrieFilter#isVisible(java.lang.Object)
*/
public boolean isVisible(C word) {
return true;
}
};
}
/* (non-Javadoc)
* @see org.wicketstuff.datatable_autocomplete.trie.ITrieConfiguration#createTrieNode()
*/
public TrieNode createTrieNode(TrieNode parent, String rootMatchedString, String nextCharacter) {
return new TrieNode(parent, rootMatchedString, nextCharacter,
this);
}
private final ITrieFilterdefaultFilter;
private Trie containerTrie;
/* (non-Javadoc)
* @see org.wicketstuff.datatable_autocomplete.trie.ITrieConfiguration#getDefaultFilter()
*/
public ITrieFilter getDefaultFilter() {
return defaultFilter;
}
/* (non-Javadoc)
* @see org.wicketstuff.datatable_autocomplete.trie.ITrieConfiguration#setTrie(org.wicketstuff.datatable_autocomplete.trie.Trie)
*/
public void setTrie(Trie containerTrie) {
this.containerTrie = containerTrie;
}
}