I'm new to Lucene. Currently using 9.4.1 on ubuntu with pylucene running.
Whenever I look at the javadocs, very often I would see 2 kinds of analyzer. One is the base the other one is the baseFactory. For example, this page page list all the core analyzer. There are almost always 2 kind, e.g. LowerCaseFilter VS LowerCaseFilterFactory. I know they have different parameters, the base one takes TokenStream, the baseFactor takes a map.
What's this concept of factory? Looking at the parameter it's taking, it seems like the base (e.g. LowerCaseFilter) is suitable for building custom analyzer, whereas the baseFactory(e.g. LowerCaseFIlterFactory) is suitable to use directly for a string.
Could someone explain this to a noob?