com.jaeksoft.searchlib.analysis.ClassPropertyEnum Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of opensearchserver Show documentation
Show all versions of opensearchserver Show documentation
OpenSearchServer is a powerful, enterprise-class, search engine program. Using the web user interface, the crawlers (web, file, database, ...) and the REST/RESTFul API you will be able to integrate quickly and easily advanced full-text search capabilities in your application. OpenSearchServer runs on Windows and Linux/Unix/BSD.
The newest version!
/**
* License Agreement for OpenSearchServer
*
* Copyright (C) 2010-2015 Emmanuel Keller / Jaeksoft
*
* http://www.open-search-server.com
*
* This file is part of OpenSearchServer.
*
* OpenSearchServer is free software: you can redistribute it and/or
* modify it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* OpenSearchServer is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with OpenSearchServer.
* If not, see .
**/
package com.jaeksoft.searchlib.analysis;
import org.apache.commons.codec.language.bm.RuleType;
import com.jaeksoft.searchlib.util.ExtensibleEnum;
import com.jaeksoft.searchlib.util.ExtensibleEnumItem;
public class ClassPropertyEnum extends ExtensibleEnumItem {
public final static ExtensibleEnum ENUM = new ExtensibleEnum();
public final static ClassPropertyEnum SCOPE = new ClassPropertyEnum(false, "scope", "Scope",
"The scope of the class");
public final static ClassPropertyEnum CLASS = new ClassPropertyEnum(false, "class", "Class",
"The name of the class");
public final static ClassPropertyEnum FILE_LIST = new ClassPropertyEnum(true, "file", "List",
"The name of the list");
public final static ClassPropertyEnum PREFIX_FILE_LIST = new ClassPropertyEnum(true, "prefixList", "Prefix list",
"The name of the prefix list");
public final static ClassPropertyEnum SUFFIX_FILE_LIST = new ClassPropertyEnum(true, "suffixList", "Suffix list",
"The name of the suffix list");
public final static ClassPropertyEnum SIZE_LIMIT = new ClassPropertyEnum(true, "sizeLimit", "Size Limit",
"The Size Limit of the file to be Parsed");
public final static ClassPropertyEnum DEFAULT_CHARSET = new ClassPropertyEnum(true, "defaultCharset",
"Default Charset", "The charset to use if not charset is found");
public final static ClassPropertyEnum PARSER_NAME = new ClassPropertyEnum(false, "name", "name",
"The name of the parser ");
public final static ClassPropertyEnum PDFCRACK_COMMANDLINE = new ClassPropertyEnum(true, "pdfCrackCommandLine",
"PDFCrack command line", "The command line used to execute PDFCrack.");
public final static ClassPropertyEnum GHOSTSCRIPT_BINARYPATH = new ClassPropertyEnum(true, "ghostscriptBinaryPath",
"Ghostscript binary path", "The path of the Ghostscript binary file.");
public final static ClassPropertyEnum HTML_PARSER = new ClassPropertyEnum(true, "htmlParser", "HTML parser",
"The HTML parser to use");
public final static ClassPropertyEnum PARSER_FAIL_OVER_NAME = new ClassPropertyEnum(false, "fileOver",
"Fail over parser", "The name of the parser used as fail over");
public static ClassPropertyEnum ADDITIONAL_ALLOWED_CHARS = new ClassPropertyEnum(true, "charArrayToken",
"Additional characters", "List of additional characters allowed in token");
public static ClassPropertyEnum CUSTOM_TOKEN_CHARS = new ClassPropertyEnum(true, "customCharToken",
"Token characters", "List of characters which cause token to be generated");
public final static ClassPropertyEnum MIN_GRAM = new ClassPropertyEnum(true, "min_gram", "Min gram size",
"The smallest n-gram to generate");
public final static ClassPropertyEnum MAX_GRAM = new ClassPropertyEnum(true, "max_gram", "Max gram size",
"The largest n-gram to generate");
public final static ClassPropertyEnum SIDE = new ClassPropertyEnum(true, "side", "Edge side",
"Specifies which side of the input the n-gram should be generated from");
public final static ClassPropertyEnum TOKEN_SEPARATOR = new ClassPropertyEnum(true, "token_separator",
"Token separator", "The string to use when joining adjacent tokens");
public final static ClassPropertyEnum TOKEN_TYPE = new ClassPropertyEnum(true, "token_type", "Token type",
"The type of the token (shingle, synonym, ...)");
public final static ClassPropertyEnum EXPAND = new ClassPropertyEnum(true, "expand", "Expand", "");
public final static ClassPropertyEnum IGNORE_CASE = new ClassPropertyEnum(true, "ignore_case", "Ignore case", "");
public final static ClassPropertyEnum MAX_SHINGLE_SIZE = new ClassPropertyEnum(true, "max_shingle_size",
"Max shingle size", "Set the max shingle size (default: 2)");
public final static ClassPropertyEnum MIN_SHINGLE_SIZE = new ClassPropertyEnum(true, "min_shingle_size",
"Min shingle size", "Set the min shingle size (default: 1)");
public final static ClassPropertyEnum FAULT_TOLERANT = new ClassPropertyEnum(true, "fault_tolerant",
"Fault tolerant", "Decide wether or not the process will stops on errors");
public static final ClassPropertyEnum DOMAIN_EXTRACTION = new ClassPropertyEnum(true, "domain_extraction",
"Domain extraction", "Select a domain extraction strategy");
public static final ClassPropertyEnum CODEC = new ClassPropertyEnum(true, "codec", "Codec algorithm",
"Select a encoder/decoder algorithm");
public static final ClassPropertyEnum SALT = new ClassPropertyEnum(true, "salt", "SALT",
"The salt string uses for encryption");
public static final ClassPropertyEnum MAX_PHONEMES = new ClassPropertyEnum(true, "maxPhonenes",
"Maximum number of phonemes", "The maximum number of phonemes that will be handled");
public static final ClassPropertyEnum BEIDER_MORSE_RULE = new ClassPropertyEnum(true, "beiderMorseRule",
"Type of rules", "The type of rules");
public static final String[] BEIDER_MORSE_RULES = { RuleType.APPROX.name(), RuleType.EXACT.name() };
public static ClassPropertyEnum REMOVE_DUPLICATE_LETTERS = new ClassPropertyEnum(true, "removeDuplicateLetters",
"Duplicate letters", "Detect and remove consecutive duplicate letters");
public static ClassPropertyEnum ALLOWED_TAGS = new ClassPropertyEnum(true, "allowedTags", "Allowed tags",
"Allowed tags separated by spaces");
public static ClassPropertyEnum INPUT_NUMBER_FORMAT = new ClassPropertyEnum(true, "inputNumberFormat",
"Input Number format", "Format number using java decimal format, for example, \"#,##0.00;(#,##0.00)\".");
public static ClassPropertyEnum OUTPUT_NUMBER_FORMAT = new ClassPropertyEnum(true, "numberFormat",
"Output Number format", "Format number using java decimal format, for example, \"#,##0.00;(#,##0.00)\".");
public static ClassPropertyEnum INPUT_DECIMAL_SEPARATOR = new ClassPropertyEnum(true, "inputDecimalSeparator",
"Input decimal separator", "Character used as decimal separator");
public static ClassPropertyEnum OUTPUT_DECIMAL_SEPARATOR = new ClassPropertyEnum(true, "outputDecimalSeparator",
"Output decimal separator", "Character used as decimal separator");
public static ClassPropertyEnum INPUT_GROUP_SEPARATOR = new ClassPropertyEnum(true, "inputGroupSeparator",
"Input grouping separator", "Character used as grouping separator");
public static ClassPropertyEnum OUTPUT_GROUP_SEPARATOR = new ClassPropertyEnum(true, "outputGroupSeparator",
"Output grouping separator", "Character used as grouping separator");
public static ClassPropertyEnum JSON_PATH = new ClassPropertyEnum(true, "jsonPath", "Json Path",
"Extract data from a JSON structure using Json Path syntax");
public static ClassPropertyEnum XPATH = new ClassPropertyEnum(true, "xPath", "XPath",
"Extract data from a XPATH structure using XPath syntax");
public static ClassPropertyEnum REMOVE_DUPLICATE_DIGITS = new ClassPropertyEnum(true, "removeDuplicateDigits",
"Duplicate digits", "Detect and remove consecutive duplicate digits");
public static ClassPropertyEnum REMOVE_DUPLICATE_WHITESPACES = new ClassPropertyEnum(true,
"removeDuplicateWhiteSpaces", "Duplicate spaces", "Detect and remove consecutive duplicate white spaces");
public static ClassPropertyEnum REMOVE_MATCHING_FLAGS = new ClassPropertyEnum(true, "removeMatchingFlags",
"Remove matching flags", "Remove tokens having the same flags than deleted one");
public final static ClassPropertyEnum URL_FRAGMENT = new ClassPropertyEnum(true, "url_fragment", "URL Fragment",
"The Option to remove or keep the URL Fragment");
public final static ClassPropertyEnum REGULAR_EXPRESSION = new ClassPropertyEnum(true, "regular_expression",
"Pattern", "The regular expression pattern");
public final static ClassPropertyEnum REGULAR_EXPRESSION_REPLACEMENT = new ClassPropertyEnum(true,
"regular_expression_replacement", "Replacement", "The regular expression replacement");
public final static ClassPropertyEnum H1_BOOST = new ClassPropertyEnum(true, "h1_boost", "H1 Boost",
"Boost for H1 Tag in Html Content");
public final static ClassPropertyEnum H2_BOOST = new ClassPropertyEnum(true, "h2_boost", "H2 Boost",
"Boost for H2 Tag in Html Content");
public final static ClassPropertyEnum H3_BOOST = new ClassPropertyEnum(true, "h3_boost", "H3 Boost",
"Boost for H3 Tag in Html Content");
public final static ClassPropertyEnum H4_BOOST = new ClassPropertyEnum(true, "h4_boost", "H4 Boost",
"Boost for H4 Tag in Html Content");
public final static ClassPropertyEnum H5_BOOST = new ClassPropertyEnum(true, "h5_boost", "H5 Boost",
"Boost for H5 Tag in Html Content");
public final static ClassPropertyEnum H6_BOOST = new ClassPropertyEnum(true, "h6_boost", "H6 Boost",
"Boost for H6 Tag in Html Content");
public final static ClassPropertyEnum TITLE_BOOST = new ClassPropertyEnum(true, "title_boost", "Title Boost",
"Boost for Title Tag in Html Content");
public final static String[] BOOLEAN_LIST = { Boolean.TRUE.toString(), Boolean.FALSE.toString() };
public final static String[] SCHEDULER_ACTION_LIST = { "Wait for completion", "Exit if running", "Start",
"Start and wait for completion" };
public final static ClassPropertyEnum OCR_PDF_METHOD = new ClassPropertyEnum(true, "ocr_pdf_method",
"OCR method for PDF", "Select an OCR stragegy for images in PDF");
public final static String[] OCR_PDF_METHODS = { "Embedded images", "Full page" };
public final static String[] KEEP_REMOVE_LIST = { "keep", "remove" };
public final static String[] YOUTUBE_DATA_LIST = { "title", "description", "full (json)" };
public final static String[] VIMEO_DATA_LIST = { "title", "description", "full (json)" };
public static String[] DAILYMOTION_DATA_LIST = { "title", "full (json)" };
public final static ClassPropertyEnum INDEX_LIST = new ClassPropertyEnum(true, "index", "Index", "Select an index");
public final static ClassPropertyEnum SEARCH_REQUEST = new ClassPropertyEnum(true, "request", "Search Request",
"The search request");
public final static ClassPropertyEnum REQUESTED_FIELD = new ClassPropertyEnum(true, "requestedField",
"Requested field", "The field which contains the searched term");
public final static ClassPropertyEnum RETURN_FIELD = new ClassPropertyEnum(true, "returnField", "Return field",
"The field(s) which contains the returned values");
public static ClassPropertyEnum VIMEO_DATA = new ClassPropertyEnum(true, "vimeo_data", "Vimeo Field",
"The vimeo API data");
public static final ClassPropertyEnum YOUTUBE_DATA = new ClassPropertyEnum(true, "youtube_data", "Youtube Field",
"The youtube API data");
public static final ClassPropertyEnum DAILYMOTION_DATA = new ClassPropertyEnum(true, "dailymotion_data",
"Dailymotion Field", "The Dailymotion API data");
public static final ClassPropertyEnum DEGREES_RADIANS_CONVERSION = new ClassPropertyEnum(true,
"degrees_radians_conversion", "Conversion direction", "The direction of the conversion");
public final static ClassPropertyEnum DEFAULT_VALUE = new ClassPropertyEnum(true, "defaultValue", "Default Value",
"The default value to use if no value is found");
public final static ClassPropertyEnum DEFAULT_ARTICLES = new ClassPropertyEnum(true, "defaultArticles", "Articles",
"The articles to identify (separated by spaces)");
public static String[] DEGREES_RADIANS_CONVERSION_LIST = { "Degrees to Radians", "Radians to Degrees",
"Check degrees", "Check radians" };
public static ClassPropertyEnum IGNORE_META_NOINDEX = new ClassPropertyEnum(true, "ignoreMetaNoIndex",
"Ignore meta noindex", "Ignore the meta noindex tag in HTML header");
public static ClassPropertyEnum IGNORE_META_NOFOLLOW = new ClassPropertyEnum(true, "ignoreMetaNoFollow",
"Ignore meta nofollow", "Ignore the meta nofollow tag in HTML header");
public static ClassPropertyEnum IGNORE_LINK_NOFOLLOW = new ClassPropertyEnum(true, "ignoreLinkNoFollow",
"Ignore link nofollow", "Ignore the REL nofollow attribute in LINK tags");
public static ClassPropertyEnum IGNORE_UNTITLED_DOCUMENTS = new ClassPropertyEnum(true, "ignoreUntitledDocuments",
"Ignore untitled documents", "Ignore documents which don't have title");
public static ClassPropertyEnum IGNORE_NON_CANONICAL = new ClassPropertyEnum(true, "ignoreNonCanonical",
"Ignore non canonical pages", "Ignore documents which have a canonical link reference");
public static ClassPropertyEnum XPATH_DOCUMENT_SELECTOR = new ClassPropertyEnum(true, "xPathDocumentSelector",
"XPATH request for documents", "XPATH request to locate a document to index");
public final static String[] RSS_METHODS = { "One document for all items", "One document per item" };
public static final ClassPropertyEnum RSS_METHOD = new ClassPropertyEnum(true, "rssMethod",
"The way RSS feed are indexed",
"One document in the index per item in the RSS feed, or one document for all items");
public static final ClassPropertyEnum HUNSPELL_DICT_PATH = new ClassPropertyEnum(true, "hunspellDictPath",
"Hunspell dictionary path",
"The path to the files containing the dictionary, without the extension (.aff, .dic)");
public static final ClassPropertyEnum HUNSPELL_METHOD = new ClassPropertyEnum(true, "hunspellMethod",
"Hunspell method", "The linking method. Use BridJ with external Hunspell library");
public static final ClassPropertyEnum MIN_LENGTH = new ClassPropertyEnum(true, "minLength", "Minimum length",
"The minimum length");
public static final ClassPropertyEnum XPATH_EXCLUSION = new ClassPropertyEnum(true, "xPathExclusion",
"XPATH Exclusion", "Exclude matching node from indexation");
public static final ClassPropertyEnum PROPER_NOUN_TYPE = new ClassPropertyEnum(true, "propernoun_type",
"Proper noun type", "The type of proper noun generation");
private boolean isUser;
private String label;
private String info;
private String xmlAttributeName;
protected ClassPropertyEnum(boolean isUser, String xmlAttributeName, String label, String info) {
super(ENUM, xmlAttributeName);
this.isUser = isUser;
this.xmlAttributeName = xmlAttributeName;
this.label = label;
this.info = info;
}
/**
* @return a string used for XML attribute storage
*/
public String getAttribute() {
return xmlAttributeName;
}
/**
* @return true if the properties is a user property
*/
public boolean isUser() {
return isUser;
}
/**
*
* @return the literal label of the property
*/
public String getLabel() {
return label;
}
/**
* @return the information
*/
public String getInfo() {
return info;
}
public static ClassPropertyEnum valueOf(String enumValue) {
return ClassPropertyEnum.ENUM.getValue(enumValue);
}
}