Example usage for com.liferay.portal.kernel.search Field getName

List of usage examples for com.liferay.portal.kernel.search Field getName

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.search Field getName.

Prototype

public String getName() 

Source Link

Usage

From source file:com.liferay.alloy.mvc.BaseAlloyControllerImpl.java

License:Open Source License

protected JSONObject toJSONObject(Document document) {
    JSONObject jsonObject = JSONFactoryUtil.createJSONObject();

    Map<String, Field> fields = document.getFields();

    for (String key : fields.keySet()) {
        Field field = fields.get(key);

        jsonObject.put(field.getName(), field.getValue());
    }/*from w  ww.jav a2 s  .  co m*/

    return jsonObject;
}

From source file:com.liferay.journal.service.impl.JournalArticleLocalServiceImpl.java

License:Open Source License

protected void validateDDMStructureFields(DDMStructure ddmStructure, long classNameId, Fields fields,
        Locale defaultlocale) throws PortalException {

    for (com.liferay.dynamic.data.mapping.storage.Field field : fields) {
        if (!ddmStructure.hasField(field.getName())) {
            throw new StorageFieldNameException("No field exists for {name=" + field.getName() + "}");
        }//from   ww  w  . jav  a  2  s.c  o  m

        if (ddmStructure.getFieldRequired(field.getName()) && Validator.isNull(field.getValue(defaultlocale))
                && (classNameId == JournalArticleConstants.CLASSNAME_ID_DEFAULT)) {

            StringBundler sb = new StringBundler(6);

            sb.append("Required field ");
            sb.append(field.getName());
            sb.append(" is not present for structure ");
            sb.append(ddmStructure.getNameCurrentValue());
            sb.append(" for locale ");
            sb.append(defaultlocale);

            throw new StorageFieldRequiredException(sb.toString());
        }
    }
}

From source file:com.rknowsys.portal.search.elastic.ElasticsearchIndexWriter.java

License:Open Source License

private String getElasticsearchDocument(Document document) throws IOException {

    XContentBuilder xContentBuilder = XContentFactory.jsonBuilder();

    xContentBuilder.startObject();//from   w  ww  .  j av  a 2 s  .c om

    Map<String, Field> fields = document.getFields();
    for (Field field : fields.values()) {
        String name = field.getName();

        if (!field.isLocalized()) {

            if (field.isNumeric()) {
                Class clazz = field.getNumericClass();
                if (clazz.equals(Double.class)) {
                    double[] values = GetterUtil.getDoubleValues(field.getValues());
                    if (values.length > 1) {
                        xContentBuilder.field(name, values);
                    } else {
                        xContentBuilder.field(name, values[0]);
                    }
                } else if (clazz.equals(Float.class)) {
                    float[] values = GetterUtil.getFloatValues(field.getValues());
                    if (values.length > 1) {
                        xContentBuilder.field(name, values);
                    } else {
                        xContentBuilder.field(name, values[0]);
                    }
                } else if (clazz.equals(Integer.class)) {
                    int[] values = GetterUtil.getIntegerValues(field.getValues());
                    if (values.length > 1) {
                        xContentBuilder.field(name, values);
                    } else {
                        xContentBuilder.field(name, values[0]);
                    }
                } else {
                    long[] values = GetterUtil.getLongValues(field.getValues());
                    if (values.length > 1) {
                        xContentBuilder.field(name, values);
                    } else {
                        xContentBuilder.field(name, values[0]);
                    }
                }
            } else {

                if (field.getValues().length > 1) {
                    xContentBuilder.field(name, field.getValues());
                } else {
                    xContentBuilder.field(name, field.getValue());
                }
            }
        } else {
            Map<Locale, String> localizedValues = field.getLocalizedValues();

            for (Map.Entry<Locale, String> entry : localizedValues.entrySet()) {

                String value = entry.getValue();

                if (Validator.isNull(value)) {
                    continue;
                }

                Locale locale = entry.getKey();

                String languageId = LocaleUtil.toLanguageId(locale);

                String defaultLanguageId = LocaleUtil.toLanguageId(LocaleUtil.getDefault());

                if (languageId.equals(defaultLanguageId)) {
                    xContentBuilder.field(name, value.trim());
                }

                String localizedName = DocumentImpl.getLocalizedName(LocaleUtil.fromLanguageId(languageId),
                        name);

                xContentBuilder.field(localizedName, value.trim());
            }
        }
    }

    xContentBuilder.endObject();

    return xContentBuilder.string();
}

From source file:org.rsc.liferay.solr.SolrIndexWriter.java

License:Open Source License

protected SolrInputDocument getSolrInputDocument(Document document) {
    SolrInputDocument solrInputDocument = new SolrInputDocument();

    Collection<Field> fields = document.getFields().values();

    for (Field field : fields) {
        String name = field.getName();
        float boost = field.getBoost();

        if (ArrayUtil.contains(Field.UNSCORED_FIELD_NAMES, name)) {
            boost = _UNSCORED_FIELDS_BOOST;
        }/*from   ww w . ja  va2  s  .co m*/

        if (!field.isLocalized()) {
            for (String value : field.getValues()) {
                if (Validator.isNull(value)) {
                    continue;
                }

                solrInputDocument.addField(name, value.trim(), boost);
            }
        } else {
            Map<Locale, String> localizedValues = field.getLocalizedValues();

            for (Map.Entry<Locale, String> entry : localizedValues.entrySet()) {

                String value = entry.getValue();

                if (Validator.isNull(value)) {
                    continue;
                }

                Locale locale = entry.getKey();

                String languageId = LocaleUtil.toLanguageId(locale);

                String defaultLanguageId = LocaleUtil.toLanguageId(LocaleUtil.getDefault());

                if (languageId.equals(defaultLanguageId)) {
                    solrInputDocument.addField(name, value.trim(), boost);
                }

                String localizedName = DocumentImpl.getLocalizedName(locale, name);

                solrInputDocument.addField(localizedName, value.trim(), boost);
            }
        }
    }

    return solrInputDocument;
}