public void jsonize()

in tablestore/src/main/java/com/alicloud/openservices/tablestore/model/search/FieldSchema.java [296:443]


    public void jsonize(StringBuilder sb, String newline) {
        sb.append('{');
        sb.append(newline);
        sb.append("\"FieldName\": \"");
        sb.append(fieldName);
        sb.append("\"");
        sb.append(",");
        sb.append(newline);
        if (fieldType != null) {
            sb.append("\"FieldType\": \"");
            sb.append(fieldType.name());
            sb.append("\"");
            sb.append(",");
            sb.append(newline);
        }
        if (index != null) {
            sb.append("\"Index\": ");
            sb.append(index.toString());
            sb.append(",");
            sb.append(newline);
        }
        if (indexOptions != null) {
            sb.append("\"IndexOptions\": ");
            sb.append(indexOptions.toString());
            sb.append(",");
            sb.append(newline);
        }
        if (analyzer != null) {
            sb.append("\"Analyzer\": \"");
            sb.append(analyzer.toString());
            sb.append("\",");
            sb.append(newline);

            if (analyzerParameter != null) {
                if (analyzer == Analyzer.SingleWord && analyzerParameter instanceof SingleWordAnalyzerParameter) {
                    sb.append("\"AnalyzerParameter\": {");
                    sb.append("\"CaseSensitive\": ");
                    sb.append(((SingleWordAnalyzerParameter)analyzerParameter).isCaseSensitive());
                    sb.append(", \"DelimitWord\": ");
                    sb.append(((SingleWordAnalyzerParameter)analyzerParameter).isDelimitWord());
                    sb.append("},");
                    sb.append(newline);
                } else if (analyzer == Analyzer.Split && analyzerParameter instanceof SplitAnalyzerParameter) {
                    String delimiter = ((SplitAnalyzerParameter)analyzerParameter).getDelimiter();
                    sb.append("\"AnalyzerParameter\": {");
                    sb.append("\"Delimiter\": ");
                    sb.append(delimiter == null ? "null" : "\"" + delimiter + "\"");
                    sb.append(", \"CaseSensitive\": ");
                    sb.append(((SplitAnalyzerParameter)analyzerParameter).isCaseSensitive());
                    sb.append("},");
                    sb.append(newline);
                } else if (analyzer == Analyzer.Fuzzy && analyzerParameter instanceof FuzzyAnalyzerParameter) {
                    sb.append("\"AnalyzerParameter\": {");
                    sb.append("\"MinChars\": ");
                    sb.append(((FuzzyAnalyzerParameter)analyzerParameter).getMinChars());
                    sb.append(", \"MaxChars\": ");
                    sb.append(((FuzzyAnalyzerParameter)analyzerParameter).getMaxChars());
                    sb.append(", \"CaseSensitive\": ");
                    sb.append(((FuzzyAnalyzerParameter)analyzerParameter).isCaseSensitive());
                    sb.append("},");
                    sb.append(newline);
                }
            }
        }
        if (enableSortAndAgg != null) {
            sb.append("\"EnableSortAndAgg\": ");
            sb.append(enableSortAndAgg.toString());
            sb.append(",");
            sb.append(newline);
        }
        if (enableHighlighting != null) {
            sb.append("\"EnableHighlighting\": ");
            sb.append(enableHighlighting.toString());
            sb.append(",");
            sb.append(newline);
        }
        if (store != null) {
            sb.append("\"Store\": ");
            sb.append(store.toString());
            sb.append(",");
            sb.append(newline);
        }
        if (isArray != null) {
            sb.append("\"IsArray\": ");
            sb.append(isArray.toString());
            sb.append(",");
            sb.append(newline);
        }
        sb.append("\"SubFieldSchemas\": [");
        if (subFieldSchemas != null) {
            for (int i = 0; i < subFieldSchemas.size(); i++) {
                FieldSchema schema = subFieldSchemas.get(i);
                schema.jsonize(sb, newline);
                if (i != subFieldSchemas.size() - 1) {
                    sb.append(", ");
                    sb.append(newline);
                }
            }
        }
        sb.append("]");
        if (isVirtualField != null) {
            sb.append(",");
            sb.append(newline);
            sb.append("\"IsVirtualField\": ");
            sb.append(isVirtualField);
        }
        if (sourceFieldNames != null) {
            sb.append(",");
            sb.append(newline);
            sb.append("\"SourceFieldNames\": [");
            for (int i = 0; i < sourceFieldNames.size(); i++) {
                String sourceField = sourceFieldNames.get(i);
                sb.append("\"").append(sourceField).append("\"");
                if (i != sourceFieldNames.size() - 1) {
                    sb.append(", ");
                }
            }
            sb.append("]");
        }
        if (dateFormats != null) {
            sb.append(",");
            sb.append(newline);
            sb.append("\"DateFormats\": [");
            for (int i = 0; i < dateFormats.size(); i++) {
                String sourceField = dateFormats.get(i);
                sb.append("\"").append(sourceField).append("\"");
                if (i != dateFormats.size() - 1) {
                    sb.append(", ");
                }
            }
            sb.append("]");
        }
        if (vectorOptions != null) {
            sb.append(",");
            sb.append(newline);
            sb.append("\"VectorOptions\": ");
            sb.append(newline);
            vectorOptions.jsonize(sb, newline);
        }
        if (jsonType != null) {
            sb.append(",");
            sb.append(newline);
            sb.append("\"JsonType\": ");
            sb.append("\"").append(jsonType.name()).append("\"");
        }
        sb.append(newline);
        sb.append("}");
    }